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.
Source Code
subroutine my_init1(gcomp,importState,exportState,externalclock,rc)type(ESMF_GridComp)::gcomptype(ESMF_State)::importStatetype(ESMF_State)::exportStatetype(ESMF_Clock)::externalclockinteger,intent(out)::rc! local variablestype(ESMF_Method_Flag)::currentMethodinteger::currentPhase! Initialize return coderc=ESMF_SUCCESSprint*,"User initialize 1 routine called"! set user return code according to correctness of method and phase testcall ESMF_GridCompGet(gcomp,currentMethod=currentMethod,¤tPhase=currentPhase,rc=rc)if(rc/=ESMF_SUCCESS)return! bail outif(currentMethod/=ESMF_METHOD_INITIALIZE)thenrc=ESMF_FAILUREreturn! bail outendif if(currentPhase/=1)thenrc=ESMF_FAILUREreturn! bail outendif end subroutine my_init1