StubComponent Derived Type

type, public, extends(MaplComponent) :: StubComponent


Inherits

type~~stubcomponent~~InheritsGraph type~stubcomponent StubComponent type~maplcomponent MaplComponent type~stubcomponent->type~maplcomponent ESMF_State ESMF_State type~maplcomponent->ESMF_State internal_state type~basecomponent BaseComponent type~maplcomponent->type~basecomponent type~logger Logger type~maplcomponent->type~logger logger type~surrogateframeworkcomponent SurrogateFrameworkComponent type~maplcomponent->type~surrogateframeworkcomponent framework type~abstractcomponent AbstractComponent type~basecomponent->type~abstractcomponent

Type-Bound Procedures

procedure, public :: finalize

  • private subroutine finalize(this, import_state, export_state, clock, phase, unusable, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StubComponent), intent(inout) :: this
    type(ESMF_State), intent(inout) :: import_state
    type(ESMF_State), intent(inout) :: export_state
    type(ESMF_Clock), intent(inout) :: clock
    character(len=*), intent(in) :: phase
    class(KeywordEnforcer), intent(in), optional :: unusable
    integer, intent(out), optional :: rc

procedure, public :: get_framework

  • private function get_framework(this) result(framework)

    Arguments

    Type IntentOptional Attributes Name
    class(MaplComponent), intent(in) :: this

    Return Value class(SurrogateFrameworkComponent), pointer

procedure, public :: get_logger

  • private function get_logger(this) result(logger)

    Arguments

    Type IntentOptional Attributes Name
    class(MaplComponent), intent(in) :: this

    Return Value class(Logger), pointer

procedure, public :: get_name

  • private function get_name(this) result(name)

    Arguments

    Type IntentOptional Attributes Name
    class(BaseComponent), intent(in) :: this

    Return Value character(len=:), allocatable

procedure, public :: initialize

  • private subroutine initialize(this, import_state, export_state, clock, phase, unusable, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StubComponent), intent(inout) :: this
    type(ESMF_State), intent(inout) :: import_state
    type(ESMF_State), intent(inout) :: export_state
    type(ESMF_Clock), intent(inout) :: clock
    character(len=*), intent(in) :: phase
    class(KeywordEnforcer), intent(in), optional :: unusable
    integer, intent(out), optional :: rc

procedure, public :: run

  • private subroutine run(this, import_state, export_state, clock, phase, unusable, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StubComponent), intent(inout) :: this
    type(ESMF_State), intent(inout) :: import_state
    type(ESMF_State), intent(inout) :: export_state
    type(ESMF_Clock), intent(inout) :: clock
    character(len=*), intent(in) :: phase
    class(KeywordEnforcer), intent(in), optional :: unusable
    integer, intent(out), optional :: rc

procedure, public :: run_child

  • private subroutine run_child(this, name, clock, phase, unusable, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MaplComponent), intent(inout) :: this
    character(len=*), intent(in) :: name
    type(ESMF_Clock), intent(inout) :: clock
    character(len=*), intent(in) :: phase
    class(KeywordEnforcer), intent(in), optional :: unusable
    integer, intent(out), optional :: rc

procedure, public :: set_framework

procedure, public :: set_logger

  • private subroutine set_logger(this, logger)

    Arguments

    Type IntentOptional Attributes Name
    class(MaplComponent), intent(inout) :: this
    class(Logger), target :: logger

procedure, public :: set_name

  • private subroutine set_name(this, name)

    Arguments

    Type IntentOptional Attributes Name
    class(BaseComponent), intent(inout) :: this
    character(len=*), intent(in) :: name

Source Code

   type, extends(MaplComponent) :: StubComponent
      private
      
   contains
      procedure :: initialize
      procedure :: run
      procedure :: finalize
   end type StubComponent