setServices Subroutine

public subroutine setServices(gridcomp, rc)

Uses

  • proc~~setservices~15~~UsesGraph proc~setservices~15 setServices module~mapl3g_basicverticalgrid mapl3g_BasicVerticalGrid proc~setservices~15->module~mapl3g_basicverticalgrid ESMF ESMF module~mapl3g_basicverticalgrid->ESMF module~mapl3g_griddedcomponentdriver mapl3g_GriddedComponentDriver module~mapl3g_basicverticalgrid->module~mapl3g_griddedcomponentdriver module~mapl3g_verticalgrid mapl3g_VerticalGrid module~mapl3g_basicverticalgrid->module~mapl3g_verticalgrid module~mapl_errorhandling mapl_ErrorHandling module~mapl3g_basicverticalgrid->module~mapl_errorhandling module~mapl3g_griddedcomponentdriver->ESMF module~mapl3g_componentdriver mapl3g_ComponentDriver module~mapl3g_griddedcomponentdriver->module~mapl3g_componentdriver module~mapl3g_componentdrivervector mapl3g_ComponentDriverVector module~mapl3g_griddedcomponentdriver->module~mapl3g_componentdrivervector module~mapl3g_multistate mapl3g_MultiState module~mapl3g_griddedcomponentdriver->module~mapl3g_multistate module~mapl_errorhandlingmod mapl_ErrorHandlingMod module~mapl3g_griddedcomponentdriver->module~mapl_errorhandlingmod module~mapl_keywordenforcer mapl_KeywordEnforcer module~mapl3g_griddedcomponentdriver->module~mapl_keywordenforcer module~mapl3g_verticalgrid->module~mapl_errorhandling module~mapl_throwmod MAPL_ThrowMod module~mapl_errorhandling->module~mapl_throwmod mpi mpi module~mapl_errorhandling->mpi module~mapl3g_componentdriver->ESMF module~mapl3g_componentdriver->module~mapl3g_multistate module~mapl3g_componentdriver->module~mapl_errorhandlingmod module~maplshared MaplShared module~mapl3g_componentdriver->module~maplshared module~mapl3g_componentdrivervector->module~mapl3g_componentdriver module~mapl3g_multistate->ESMF module~mapl3g_multistate->module~mapl_errorhandling module~mapl3g_multistate->module~mapl_keywordenforcer module~mapl3g_esmf_utilities mapl3g_ESMF_Utilities module~mapl3g_multistate->module~mapl3g_esmf_utilities module~mapl_errorhandlingmod->module~mapl_errorhandling

Arguments

Type IntentOptional Attributes Name
type(ESMF_GridComp) :: gridcomp
integer, intent(out) :: rc

Calls

proc~~setservices~15~~CallsGraph proc~setservices~15 setServices interface~mapl_gridcompsetentrypoint MAPL_GridCompSetEntryPoint proc~setservices~15->interface~mapl_gridcompsetentrypoint none~set_vertical_grid OuterMetaComponent%set_vertical_grid proc~setservices~15->none~set_vertical_grid proc~get_outer_meta_from_inner_gc get_outer_meta_from_inner_gc proc~setservices~15->proc~get_outer_meta_from_inner_gc proc~mapl_return MAPL_Return proc~setservices~15->proc~mapl_return proc~mapl_verify MAPL_Verify proc~setservices~15->proc~mapl_verify proc~get_outer_meta_from_inner_gc->proc~mapl_return proc~get_outer_meta_from_inner_gc->proc~mapl_verify interface~get_outer_meta get_outer_meta proc~get_outer_meta_from_inner_gc->interface~get_outer_meta interface~mapl_assert MAPL_Assert proc~get_outer_meta_from_inner_gc->interface~mapl_assert interface~mapl_gridcompisuser MAPL_GridCompIsUser proc~get_outer_meta_from_inner_gc->interface~mapl_gridcompisuser none~get_outer_gridcomp InnerMetaComponent%get_outer_gridcomp proc~get_outer_meta_from_inner_gc->none~get_outer_gridcomp proc~get_inner_meta get_inner_meta proc~get_outer_meta_from_inner_gc->proc~get_inner_meta at at proc~mapl_return->at insert insert proc~mapl_return->insert proc~mapl_throw_exception MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception proc~mapl_verify->proc~mapl_throw_exception proc~get_inner_meta->proc~mapl_return proc~get_inner_meta->interface~mapl_assert interface~mapl_usercompgetinternalstate MAPL_UserCompGetInternalState proc~get_inner_meta->interface~mapl_usercompgetinternalstate

Called by

proc~~setservices~15~~CalledByGraph proc~setservices~15 setServices proc~setservices~16 setServices proc~setservices~16->proc~setservices~15

Source Code

   subroutine setServices(gridcomp, rc)
      use mapl3g_BasicVerticalGrid
      type(ESMF_GridComp) :: gridcomp
      integer, intent(out) :: rc

      type(ESMF_HConfig) :: hconfig, collections_config, child_hconfig
      character(len=:), allocatable :: child_name, collection_name
      type(ESMF_HConfigIter) :: iter, iter_begin, iter_end
      logical :: has_active_collections
      class(logger), pointer :: lgr
      integer :: num_collections, status
      type(BasicVerticalGrid) :: vertical_grid
      type(ESMF_GridComp) outer_gridcomp
      type(OuterMetaComponent), pointer :: outer_meta

      call MAPL_GridCompSetEntryPoint(gridcomp, ESMF_METHOD_INITIALIZE, init, _RC)
      call MAPL_GridCompSetEntryPoint(gridcomp, ESMF_METHOD_RUN, run, phase_name='run', _RC)

      outer_meta => get_outer_meta_from_inner_gc(gridcomp,_RC)
      vertical_grid = BasicVerticalGrid(4)
      call outer_meta%set_vertical_grid(vertical_grid)


      _RETURN(_SUCCESS)
   end subroutine setServices