run Subroutine

public subroutine run(this, importState, exportState, clock, rc)

Uses

  • proc~~run~35~~UsesGraph proc~run~35 CopyAction%run ESMF ESMF proc~run~35->ESMF

Type Bound

CopyAction

Arguments

Type IntentOptional Attributes Name
class(CopyAction), intent(inout) :: this
type(ESMF_State) :: importState
type(ESMF_State) :: exportState
type(ESMF_Clock) :: clock
integer, intent(out), optional :: rc

Calls

proc~~run~35~~CallsGraph proc~run~35 CopyAction%run esmf_stateget esmf_stateget proc~run~35->esmf_stateget interface~fieldcopy FieldCOPY proc~run~35->interface~fieldcopy proc~mapl_return MAPL_Return proc~run~35->proc~mapl_return proc~mapl_verify MAPL_Verify proc~run~35->proc~mapl_verify 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

Source Code

   subroutine run(this, importState, exportState, clock, rc)
      use esmf
      class(CopyAction), intent(inout) :: this
      type(ESMF_State)      :: importState
      type(ESMF_State)      :: exportState
      type(ESMF_Clock)      :: clock      
      integer, optional, intent(out) :: rc

      integer :: status
      type(ESMF_Field) :: f_in, f_out

      call ESMF_StateGet(importState, itemName='import[1]', field=f_in, _RC)
      call ESMF_StateGet(exportState, itemName='export[1]', field=f_out, _RC)

      call FieldCopy(f_in, f_out, _RC)

      _RETURN(_SUCCESS)
   end subroutine run