update Subroutine

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

Uses

  • proc~~update~2~~UsesGraph proc~update~2 CopyAction%update ESMF ESMF proc~update~2->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~~update~2~~CallsGraph proc~update~2 CopyAction%update esmf_stateget esmf_stateget proc~update~2->esmf_stateget interface~fieldcopy FieldCOPY proc~update~2->interface~fieldcopy proc~mapl_return MAPL_Return proc~update~2->proc~mapl_return proc~mapl_verify MAPL_Verify proc~update~2->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 update(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 update