The main documentation of the Get Value Base_Structure Functions contains additional explanation of this code listing.
define([ACCESS_ROUTINE],[ pushdef([VALUE], [$1]) pushdef([Get_VALUE_Structure], expand(Get_VALUE_Structure)) function Get_VALUE_Structure (Structure) result(VALUE) ! Input/Output variables. ! Base_Structure object. type(Base_Structure_type), intent(in) :: Structure ! Output variables. type(integer) :: VALUE ! Base_Structure value to be output. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements. VERIFY(Valid_State(Structure),5) ! Base_Structure is valid. ! Set value. VALUE = Structure%VALUE ! Verify guarantees - none. return end function Get_VALUE_Structure popdef([VALUE]) popdef([Get_VALUE_Structure]) ]) fortext([Value], [First_PE Last_PE Length_PE Length_Total],[ ACCESS_ROUTINE(Value) ]) function Get_Length_Vector_Structure (Structure) result(Length_Vector) ! Input/Output variables. ! Base_Structure object. type(Base_Structure_type), intent(in) :: Structure ! Output variables. ! Base_Structure value to be output. type(integer), dimension(NPEs) :: Length_Vector !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements. VERIFY(Valid_State(Structure),5) ! Base_Structure is valid. ! Set value. Length_Vector = Structure%Length_Vector ! Verify guarantees - none. return end function Get_Length_Vector_Structure function Get_Locus_Structure (Structure) result(Locus) ! Input variables. ! Base_Structure object. type(Base_Structure_type), intent(in) :: Structure ! Output variables. type(character,80) :: Locus ! Base_Structure value to be output. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements. VERIFY(Valid_State(Structure),5) ! Base_Structure is valid. ! Set value. Locus = Structure%Locus ! Verify guarantees - none. return end function Get_Locus_Structure function Get_Range_PE_Structure (Structure) result(Range_PE) ! Input/Output variables. ! Base_Structure object. type(Base_Structure_type), intent(in) :: Structure ! Output variables. ! Base_Structure value to be output. type(integer), dimension(2) :: Range_PE !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements. VERIFY(Valid_State(Structure),5) ! Base_Structure is valid. ! Set value. Range_PE = Structure%Range_PE ! Verify guarantees - none. return end function Get_Range_PE_Structure