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.
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
function get_units(bundle,rc)result(units)character(len=ESMF_MAXSTR),allocatable::units(:)type(ESMF_FieldBundle),intent(in)::bundleinteger,optional,intent(out)::rcinteger::statuscharacter(len=ESMF_MAXSTR),allocatable::field_list(:)type(ESMF_Field)::fieldtype(ESMF_Info)::infohinteger::i,num_fieldscall ESMF_FieldBundleGet(bundle,fieldCount=num_fields,_RC)allocate(field_list(num_fields))allocate(units(num_fields))call ESMF_FieldBundleGet(bundle,fieldNameList=field_list,_RC)do i=1,num_fieldscall ESMF_FieldBundleGet(bundle,field_list(i),field=field,_RC)call ESMF_InfoGetFromHost(field,infoh,_RC)call ESMF_InfoGet(infoh,key='UNITS',value=units(i),_RC)enddo if(present(rc))thenRC=_SUCCESSend if end function get_units