| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | storageTypeIndex | 
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
FUNCTION StorageType(storageTypeIndex) RESULT (name)
    ! FUNCTION INFORMATION:
    !       AUTHOR         Greg Stark
    !       DATE WRITTEN   May 2009
    !       MODIFIED       na
    !       RE-ENGINEERED  na
    ! PURPOSE OF THIS FUNCTION:
    ! This function returns the reporting frequency name
    ! METHODOLOGY EMPLOYED:
    ! Look it up in a list of valid index types.
    ! REFERENCES:
    ! na
    ! USE STATEMENTS:
    ! na
    IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
    ! FUNCTION ARGUMENT DEFINITIONS:
    INTEGER, INTENT(IN) :: storageTypeIndex  ! storage type index (1 = Avg, 2 = Sum)
    CHARACTER(len=100)  :: name
    ! FUNCTION PARAMETER DEFINITIONS:
    ! na
    ! INTERFACE BLOCK SPECIFICATIONS:
    ! na
    ! DERIVED TYPE DEFINITIONS:
    ! na
    ! FUNCTION LOCAL VARIABLE DECLARATIONS:
    ! na
    SELECT CASE (storageTypeIndex)
        CASE(1)
            name = 'Avg'
        CASE(2)
            name = 'Sum'
        CASE DEFAULT
            name = 'Unknown!!!'
    END SELECT
    RETURN
END FUNCTION StorageType