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 rdb_ocean_get_q_salt_ptr(c_handle,ptr,nx,ny,gen)result(status)&bind(c,name="rdb_ocean_get_q_salt_ptr")!! Net surface salt flux: `h%state%surface_flux%Q_salt` — see!! `rdb_ocean_get_q_heat_ptr` for the P2.4 unification note.!! Shape `(nx_total, ny_total)`.type(c_ptr),intent(in),value::c_handletype(c_ptr),intent(out)::ptrinteger(c_int),intent(out)::nx,ny,geninteger(c_int)::statustype(ocean_handle_t),pointer::hreal(wp),pointer::tmp(:,:)ptr=c_null_ptrnx=0ny=0gen=0status=resolve_ocean(c_handle,h)if(status/=OCEAN_STATUS_OK)returntmp=>h%state%surface_flux%Q_saltcall fill_getter_2d(ptr,nx,ny,gen,tmp,h%state%dyn%outer_step_count)end function rdb_ocean_get_q_salt_ptr