Sets Initialize, Run and Finalize services for the MAPL_ExtData
component.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ESMF_GridComp), | intent(inout) | :: | GC |
gridded component |
||
integer, | intent(out), | optional | :: | RC |
return code |
SUBROUTINE SetServices ( GC, RC ) type(ESMF_GridComp), intent(INOUT) :: GC !! gridded component integer, optional, intent(OUT) :: RC !! return code !------------------------------------------------------------------------- ! Local derived type aliases ! -------------------------- type (MAPL_ExtData_State), pointer :: self ! internal, that is type (MAPL_ExtData_wrap) :: wrap character(len=ESMF_MAXSTR) :: comp_name integer :: status ! ------------ ! Get my name and set-up traceback handle ! --------------------------------------- call ESMF_GridCompGet( GC, name=comp_name, _RC ) ! Wrap internal state for storing in GC; rename legacyState ! ------------------------------------- allocate ( self, stat=STATUS ) _VERIFY(STATUS) wrap%ptr => self ! ------------------------ ! ESMF Functional Services ! ------------------------ ! Set the Initialize, Run, Finalize entry points ! ---------------------------------------------- call MAPL_GridCompSetEntryPoint ( GC, ESMF_METHOD_INITIALIZE, Initialize_, _RC ) call MAPL_GridCompSetEntryPoint ( GC, ESMF_METHOD_RUN, Run_, _RC ) call MAPL_GridCompSetEntryPoint ( GC, ESMF_METHOD_FINALIZE, Finalize_, _RC ) ! Store internal state in GC ! -------------------------- call ESMF_UserCompSetInternalState ( GC, 'MAPL_ExtData_state', wrap, STATUS ) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="Initialize", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="Run", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="-Read_Loop", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--CheckUpd", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--Read", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--GridCreate", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--IclientWait", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--PRead", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="---CreateCFIO", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="---prefetch", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="----add-collection", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="----make-reference", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="----RegridStore", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="----request", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="---IclientDone", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="----RegridApply", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="---read-prefetch", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--Swap", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="--Bracket", rc=status) _VERIFY(STATUS) call MAPL_TimerAdd(gc,name="-Interpolate", rc=status) _VERIFY(STATUS) ! Generic Set Services ! -------------------- call MAPL_GenericSetServices ( GC, _RC ) ! All done ! -------- _RETURN(ESMF_SUCCESS) END SUBROUTINE SetServices