ESMF_HConfigCreateR4Seq Function

private function ESMF_HConfigCreateR4Seq(content, keywordEnforcer, rc)

Arguments

Type IntentOptional Attributes Name
real(kind=ESMF_KIND_R4), intent(in) :: content(:)
type(ESMF_KeywordEnforcer), optional :: keywordEnforcer
integer, intent(out), optional :: rc

Return Value type(ESMF_HConfig)


Calls

proc~~esmf_hconfigcreater4seq~~CallsGraph proc~esmf_hconfigcreater4seq ESMF_HConfigCreateR4Seq c_esmc_hconfigcreater4seq c_esmc_hconfigcreater4seq proc~esmf_hconfigcreater4seq->c_esmc_hconfigcreater4seq interface~esmf_hconfigcreate ESMF_HConfigCreate proc~esmf_hconfigcreater4seq->interface~esmf_hconfigcreate proc~esmf_logfounderror ESMF_LogFoundError proc~esmf_hconfigcreater4seq->proc~esmf_logfounderror interface~esmf_hconfigcreate->proc~esmf_hconfigcreater4seq proc~esmf_hconfigcreatedefault ESMF_HConfigCreateDefault interface~esmf_hconfigcreate->proc~esmf_hconfigcreatedefault proc~esmf_hconfigcreatehconfig ESMF_HConfigCreateHConfig interface~esmf_hconfigcreate->proc~esmf_hconfigcreatehconfig proc~esmf_hconfigcreatei4 ESMF_HConfigCreateI4 interface~esmf_hconfigcreate->proc~esmf_hconfigcreatei4 proc~esmf_hconfigcreatei4seq ESMF_HConfigCreateI4Seq interface~esmf_hconfigcreate->proc~esmf_hconfigcreatei4seq proc~esmf_hconfigcreatei8 ESMF_HConfigCreateI8 interface~esmf_hconfigcreate->proc~esmf_hconfigcreatei8 proc~esmf_hconfigcreatei8seq ESMF_HConfigCreateI8Seq interface~esmf_hconfigcreate->proc~esmf_hconfigcreatei8seq proc~esmf_hconfigcreatelogical ESMF_HConfigCreateLogical interface~esmf_hconfigcreate->proc~esmf_hconfigcreatelogical proc~esmf_hconfigcreatelogicalseq ESMF_HConfigCreateLogicalSeq interface~esmf_hconfigcreate->proc~esmf_hconfigcreatelogicalseq proc~esmf_hconfigcreater4 ESMF_HConfigCreateR4 interface~esmf_hconfigcreate->proc~esmf_hconfigcreater4 proc~esmf_hconfigcreater8 ESMF_HConfigCreateR8 interface~esmf_hconfigcreate->proc~esmf_hconfigcreater8 proc~esmf_hconfigcreater8seq ESMF_HConfigCreateR8Seq interface~esmf_hconfigcreate->proc~esmf_hconfigcreater8seq proc~esmf_hconfigcreatestringseq ESMF_HConfigCreateStringSeq interface~esmf_hconfigcreate->proc~esmf_hconfigcreatestringseq esmf_breakpoint esmf_breakpoint proc~esmf_logfounderror->esmf_breakpoint proc~esmf_logrc2msg ESMF_LogRc2Msg proc~esmf_logfounderror->proc~esmf_logrc2msg proc~esmf_logwrite ESMF_LogWrite proc~esmf_logfounderror->proc~esmf_logwrite

Called by

proc~~esmf_hconfigcreater4seq~~CalledByGraph proc~esmf_hconfigcreater4seq ESMF_HConfigCreateR4Seq interface~esmf_hconfigcreate ESMF_HConfigCreate interface~esmf_hconfigcreate->proc~esmf_hconfigcreater4seq

Source Code

  function ESMF_HConfigCreateR4Seq(content, keywordEnforcer, rc)

    type(ESMF_HConfig) :: ESMF_HConfigCreateR4Seq

    real(ESMF_KIND_R4),     intent(in)            :: content(:)
type(ESMF_KeywordEnforcer), optional:: keywordEnforcer ! must use keywords below
    integer,                intent(out), optional :: rc

    integer               :: localrc        ! local return code
    integer               :: count

    ! initialize return code; assume routine not implemented
    localrc = ESMF_RC_NOT_IMPL
    if (present(rc)) rc = ESMF_RC_NOT_IMPL

    ! invalidate return value
    ESMF_HConfigCreateR4Seq%shallowMemory = 0

    count = size(content)
    if (count>0) then
      ! call into the C++ interface, which will sort out optional arguments
      call c_ESMC_HConfigCreateR4Seq(ESMF_HConfigCreateR4Seq, content(1), &
        count, localrc)
      if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, &
        ESMF_CONTEXT, rcToReturn=rc)) return
      ! Set init code
      ESMF_INIT_SET_CREATED(ESMF_HConfigCreateR4Seq)
    else
      ! empty hconfig
      ESMF_HConfigCreateR4Seq = ESMF_HConfigCreate(rc=localrc)
      if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, &
        ESMF_CONTEXT, rcToReturn=rc)) return
    endif

    ! return successfully
    if (present(rc)) rc = ESMF_SUCCESS

  end function ESMF_HConfigCreateR4Seq