StateMask Derived Type

type, public :: StateMask


Inherited by

type~~statemask~~InheritedByGraph type~statemask StateMask type~derivedexport DerivedExport type~derivedexport->type~statemask mask_definition type~vector_wrapper~5 vector_wrapper type~vector_wrapper~5->type~derivedexport item type~derivedexportvector DerivedExportVector type~derivedexportvector->type~vector_wrapper~5 elements type~derivedexportvectoriterator DerivedExportVectorIterator type~derivedexportvectoriterator->type~vector_wrapper~5 elements type~vectorriterator~5 VectorRIterator type~vectorriterator~5->type~derivedexportvectoriterator iterator

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: mask_arguments
character(len=:), public, allocatable :: mask_type

Constructor

public interface StateMask

  • private function new_StateMask(mask_expression, rc) result(new_mask)

    Arguments

    Type IntentOptional Attributes Name
    character(len=*), intent(in) :: mask_expression
    integer, intent(out), optional :: rc

    Return Value type(StateMask)


Type-Bound Procedures

procedure, public :: evaluate_box_mask

  • private subroutine evaluate_box_mask(this, state, field, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StateMask), intent(inout) :: this
    type(ESMF_State), intent(inout) :: state
    type(ESMF_Field), intent(inout) :: field
    integer, intent(out), optional :: rc

procedure, public :: evaluate_mask

  • private subroutine evaluate_mask(this, state, field, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StateMask), intent(inout) :: this
    type(ESMF_State), intent(inout) :: state
    type(ESMF_Field), intent(inout) :: field
    integer, intent(out), optional :: rc

procedure, public :: evaluate_region_mask

  • private subroutine evaluate_region_mask(this, state, field, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StateMask), intent(inout) :: this
    type(ESMF_State), intent(inout) :: state
    type(ESMF_Field), intent(inout) :: field
    integer, intent(out), optional :: rc

procedure, public :: evaluate_zone_mask

  • private subroutine evaluate_zone_mask(this, state, field, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(StateMask), intent(inout) :: this
    type(ESMF_State), intent(inout) :: state
    type(ESMF_Field), intent(inout) :: field
    integer, intent(out), optional :: rc

procedure, public :: get_mask_variables

  • private function get_mask_variables(this, rc) result(variables_in_mask)

    Arguments

    Type IntentOptional Attributes Name
    class(StateMask), intent(inout) :: this
    integer, intent(out), optional :: rc

    Return Value type(StringVector)

Source Code

   type, public :: StateMask
      character(len=:), allocatable :: mask_type
      character(len=:), allocatable :: mask_arguments
      contains
         procedure :: get_mask_variables
         procedure :: evaluate_mask
         procedure :: evaluate_region_mask
         procedure :: evaluate_zone_mask
         procedure :: evaluate_box_mask
   end type StateMask