&ocean_data_nml: the shared time-varying NetCDF input reader
(PR-14). Two knobs, no per-field entries — see
ocean_data_config_t. Registration of individual (file,
variable, destination) triples is programmatic, via each
consumer’s own namelist group calling
ocean_data_input_register_2d/_3d at setup.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(config_t), | intent(in), | target | :: | cfg | ||
| type(nml_schema_t), | intent(inout) | :: | schema |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(nml_group_t), | private | :: | g | ||||
| integer, | private, | pointer | :: | pi | |||
| logical, | private, | pointer | :: | pl |
subroutine register_ocean_data(cfg, schema) !! `&ocean_data_nml`: the shared time-varying NetCDF input reader !! (PR-14). Two knobs, no per-field entries — see !! `ocean_data_config_t`. Registration of individual (file, !! variable, destination) triples is programmatic, via each !! consumer's own namelist group calling !! `ocean_data_input_register_2d/_3d` at setup. type(config_t), target, intent(in) :: cfg type(nml_schema_t), intent(inout) :: schema type(nml_group_t) :: g integer, pointer :: pi logical, pointer :: pl g%name = "ocean_data" g%doc = "Shared time-varying NetCDF input reader (PR-14): registry sizing only." pi => cfg%ocean%data%max_fields call g%add(nml_int("max_fields", pi, & "Size of the reader's field registry", min=1)) pl => cfg%ocean%data%verbose call g%add(nml_logical("verbose", pl, & "Log every bracket advance (field, records, weight, time)")) call schema%add_group(g) end subroutine register_ocean_data