attpack_initialize Subroutine

private subroutine attpack_initialize(self, info, convention, purpose, rootKey, rc)

Type Bound

ESMF_AttPack

Arguments

Type IntentOptional Attributes Name
class(ESMF_AttPack), intent(out) :: self
type(ESMF_Info), intent(in) :: info
character(len=*), intent(in), optional :: convention
character(len=*), intent(in), optional :: purpose
character(len=*), intent(in), optional :: rootKey
integer, intent(out), optional :: rc

Called by

proc~~attpack_initialize~~CalledByGraph proc~attpack_initialize ESMF_AttPack%attpack_initialize proc~esmf_attributeaddattpackstdinfo ESMF_AttributeAddAttPackStdInfo proc~esmf_attributeaddattpackstdinfo->proc~attpack_initialize proc~esmf_attributegetattpackarray ESMF_AttributeGetAttPackArray proc~esmf_attributegetattpackarray->proc~attpack_initialize proc~esmf_attributegetattpackarraybundle ESMF_AttributeGetAttPackArrayBundle proc~esmf_attributegetattpackarraybundle->proc~attpack_initialize proc~esmf_attributegetattpackcplcomp ESMF_AttributeGetAttPackCplComp proc~esmf_attributegetattpackcplcomp->proc~attpack_initialize proc~esmf_attributegetattpackdistgrid ESMF_AttributeGetAttPackDistGrid proc~esmf_attributegetattpackdistgrid->proc~attpack_initialize proc~esmf_attributegetattpackfield ESMF_AttributeGetAttPackField proc~esmf_attributegetattpackfield->proc~attpack_initialize proc~esmf_attributegetattpackfieldbundle ESMF_AttributeGetAttPackFieldBundle proc~esmf_attributegetattpackfieldbundle->proc~attpack_initialize proc~esmf_attributegetattpackgrid ESMF_AttributeGetAttPackGrid proc~esmf_attributegetattpackgrid->proc~attpack_initialize proc~esmf_attributegetattpackgridcomp ESMF_AttributeGetAttPackGridComp proc~esmf_attributegetattpackgridcomp->proc~attpack_initialize proc~esmf_attributegetattpacklocstream ESMF_AttributeGetAttPackLocStream proc~esmf_attributegetattpacklocstream->proc~attpack_initialize proc~esmf_attributegetattpackmesh ESMF_AttributeGetAttPackMesh proc~esmf_attributegetattpackmesh->proc~attpack_initialize proc~esmf_attributegetattpackscicomp ESMF_AttributeGetAttPackSciComp proc~esmf_attributegetattpackscicomp->proc~attpack_initialize proc~esmf_attributegetattpackstate ESMF_AttributeGetAttPackState proc~esmf_attributegetattpackstate->proc~attpack_initialize interface~esmf_attributegetattpack ESMF_AttributeGetAttPack interface~esmf_attributegetattpack->proc~esmf_attributegetattpackarray interface~esmf_attributegetattpack->proc~esmf_attributegetattpackarraybundle interface~esmf_attributegetattpack->proc~esmf_attributegetattpackcplcomp interface~esmf_attributegetattpack->proc~esmf_attributegetattpackdistgrid interface~esmf_attributegetattpack->proc~esmf_attributegetattpackfield interface~esmf_attributegetattpack->proc~esmf_attributegetattpackfieldbundle interface~esmf_attributegetattpack->proc~esmf_attributegetattpackgrid interface~esmf_attributegetattpack->proc~esmf_attributegetattpackgridcomp interface~esmf_attributegetattpack->proc~esmf_attributegetattpacklocstream interface~esmf_attributegetattpack->proc~esmf_attributegetattpackmesh interface~esmf_attributegetattpack->proc~esmf_attributegetattpackscicomp interface~esmf_attributegetattpack->proc~esmf_attributegetattpackstate proc~esmf_attributeaddattpackstdarray ESMF_AttributeAddAttPackStdArray proc~esmf_attributeaddattpackstdarray->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdarraybundle ESMF_AttributeAddAttPackStdArrayBundle proc~esmf_attributeaddattpackstdarraybundle->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdcplcomp ESMF_AttributeAddAttPackStdCplComp proc~esmf_attributeaddattpackstdcplcomp->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstddistgrid ESMF_AttributeAddAttPackStdDistGrid proc~esmf_attributeaddattpackstddistgrid->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdfield ESMF_AttributeAddAttPackStdField proc~esmf_attributeaddattpackstdfield->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdfieldbundle ESMF_AttributeAddAttPackStdFieldBundle proc~esmf_attributeaddattpackstdfieldbundle->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdgrid ESMF_AttributeAddAttPackStdGrid proc~esmf_attributeaddattpackstdgrid->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdgridcomp ESMF_AttributeAddAttPackStdGridComp proc~esmf_attributeaddattpackstdgridcomp->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdlocstream ESMF_AttributeAddAttPackStdLocStream proc~esmf_attributeaddattpackstdlocstream->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdmesh ESMF_AttributeAddAttPackStdMesh proc~esmf_attributeaddattpackstdmesh->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdscicomp ESMF_AttributeAddAttPackStdSciComp proc~esmf_attributeaddattpackstdscicomp->proc~esmf_attributeaddattpackstdinfo proc~esmf_attributeaddattpackstdstate ESMF_AttributeAddAttPackStdState proc~esmf_attributeaddattpackstdstate->proc~esmf_attributeaddattpackstdinfo

Source Code

subroutine attpack_initialize(self, info, convention, purpose, rootKey, rc)
  class(ESMF_AttPack), intent(out) :: self
  type(ESMF_Info), intent(in) :: info
  character(*), intent(in), optional :: convention
  character(*), intent(in), optional :: purpose
  character(*), intent(in), optional :: rootKey
  integer, intent(out), optional :: rc

  integer :: localrc
  character(:), allocatable :: local_convention, local_purpose

  if (present(rc)) rc = ESMF_RC_NOT_IMPL
  localrc = ESMF_FAILURE
  if (.not. present(rootKey)) then
    if (present(convention)) then
      local_convention = TRIM(convention)
    else
      local_convention = TRIM(ESMF_ATTR_DEFAULT_CONVENTION)
    end if
    if (present(purpose)) then
      local_purpose = TRIM(purpose)
    else
      local_purpose = TRIM(ESMF_ATTR_DEFAULT_PURPOSE)
    end if
    self%root_key = "/"//local_convention//"/"//local_purpose
  else
    self%root_key = rootKey
  end if
  self%info = info%ptr
  if (present(rc)) rc = ESMF_SUCCESS
end subroutine attpack_initialize