| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(data_input_field_t), | public, | allocatable | :: | fields(:) | |||
| logical, | public | :: | is_init | = | .false. | ||
| integer, | public | :: | nfields | = | 0 | ||
| integer, | public | :: | nfields_max | = | 0 | ||
| logical, | public | :: | verbose | = | .false. |
Counted allocatable footprint (0 when unallocated). Summed over
every registered field’s f0/f1 — the t_axis is small
(nt reals) and intentionally excluded, matching the house
convention of counting device-resident footprint only.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ocean_data_input_t), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ocean_data_input_t), | intent(inout) | :: | this |
Type-bound wrapper — delegates to the non-polymorphic impl (the
AMD libomptarget cross-slot-overlap fix; see
rdb_ocean_surface_stress.F90).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ocean_data_input_t), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ocean_data_input_t), | intent(inout) | :: | this |
Allocate the field registry. cfg optional so ocean_state_init
(which many tests call directly with no config_t in hand) can
construct a default-sized (16 slots, quiet) reader identically to
the scaffold it replaces; ocean_state_init_from_config re-calls
this with the real cfg%ocean%data once cfg is available —
safe because nothing is registered between the two calls.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ocean_data_input_t), | intent(inout) | :: | this | |||
| type(ocean_data_config_t), | intent(in), | optional | :: | cfg |
type :: ocean_data_input_t logical :: is_init = .false. logical :: verbose = .false. integer :: nfields = 0 integer :: nfields_max = 0 type(data_input_field_t), allocatable :: fields(:) contains procedure, non_overridable :: init => ocean_data_input_init procedure, non_overridable :: destroy => ocean_data_input_destroy procedure, non_overridable :: enter_data => ocean_data_input_enter_data procedure, non_overridable :: exit_data => ocean_data_input_exit_data procedure, non_overridable :: bytes => ocean_data_input_bytes end type ocean_data_input_t