source: XIOS3/trunk/src/interface/fortran_attr/ifield_attr.F90 @ 2620

Last change on this file since 2620 was 2620, checked in by jderouillat, 4 months ago

Modify fortran-C interfaces to manage logical-bool conversion, the optimizations of OneAPI could produce bugs regarding the logical-bool encodings.

  • Property copyright set to
    Software name : XIOS (Xml I/O Server)
    http://forge.ipsl.jussieu.fr/ioserver
    Creation date : January 2009
    Licence : CeCCIL version2
    see license file in root directory : Licence_CeCILL_V2-en.txt
    or http://www.cecill.info/licences/Licence_CeCILL_V2-en.html
    Holder : CEA/LSCE (Laboratoire des Sciences du CLimat et de l'Environnement)
    CNRS/IPSL (Institut Pierre Simon Laplace)
    Project Manager : Yann Meurdesoif
    yann.meurdesoif@cea.fr
File size: 55.4 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE ifield_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE ifield
9  USE field_interface_attr
10  USE LOGICAL_BOOL_CONVERSION
11
12CONTAINS
13
14  SUBROUTINE xios(set_field_attr)  &
15    ( field_id, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
16    , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
17    , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
18    , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
19    , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
20    , valid_max, valid_min )
21
22    IMPLICIT NONE
23      TYPE(txios(field))  :: field_hdl
24      CHARACTER(LEN=*), INTENT(IN) ::field_id
25      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset
26      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref
27      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph
28      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp
29      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods
30      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode
31      LOGICAL  , OPTIONAL, INTENT(IN) :: check_if_active
32      LOGICAL (KIND=C_BOOL) :: check_if_active_tmp
33      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: chunking_blocksize_target
34      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment
35      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level
36      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: compression_params(:)
37      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: compression_type
38      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf
39      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp
40      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value
41      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value
42      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
43      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref
44      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled
45      LOGICAL (KIND=C_BOOL) :: enabled_tmp
46      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: expr
47      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref
48      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_offset
49      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_op
50      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_path
51      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref
52      LOGICAL  , OPTIONAL, INTENT(IN) :: indexed_output
53      LOGICAL (KIND=C_BOOL) :: indexed_output_tmp
54      INTEGER  , OPTIONAL, INTENT(IN) :: level
55      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name
56      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
57      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation
58      INTEGER  , OPTIONAL, INTENT(IN) :: prec
59      LOGICAL  , OPTIONAL, INTENT(IN) :: read_access
60      LOGICAL (KIND=C_BOOL) :: read_access_tmp
61      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref
62      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor
63      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
64      LOGICAL  , OPTIONAL, INTENT(IN) :: ts_enabled
65      LOGICAL (KIND=C_BOOL) :: ts_enabled_tmp
66      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: ts_split_freq
67      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit
68      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_max
69      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_min
70
71      CALL xios(get_field_handle) &
72      (field_id,field_hdl)
73      CALL xios(set_field_attr_hdl_)   &
74      ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
75      , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
76      , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
77      , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
78      , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
79      , valid_max, valid_min )
80
81  END SUBROUTINE xios(set_field_attr)
82
83  SUBROUTINE xios(set_field_attr_hdl)  &
84    ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
85    , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
86    , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
87    , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
88    , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
89    , valid_max, valid_min )
90
91    IMPLICIT NONE
92      TYPE(txios(field)) , INTENT(IN) :: field_hdl
93      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset
94      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref
95      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph
96      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp
97      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods
98      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode
99      LOGICAL  , OPTIONAL, INTENT(IN) :: check_if_active
100      LOGICAL (KIND=C_BOOL) :: check_if_active_tmp
101      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: chunking_blocksize_target
102      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment
103      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level
104      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: compression_params(:)
105      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: compression_type
106      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf
107      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp
108      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value
109      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value
110      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
111      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref
112      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled
113      LOGICAL (KIND=C_BOOL) :: enabled_tmp
114      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: expr
115      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref
116      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_offset
117      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_op
118      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_path
119      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref
120      LOGICAL  , OPTIONAL, INTENT(IN) :: indexed_output
121      LOGICAL (KIND=C_BOOL) :: indexed_output_tmp
122      INTEGER  , OPTIONAL, INTENT(IN) :: level
123      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name
124      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
125      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation
126      INTEGER  , OPTIONAL, INTENT(IN) :: prec
127      LOGICAL  , OPTIONAL, INTENT(IN) :: read_access
128      LOGICAL (KIND=C_BOOL) :: read_access_tmp
129      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref
130      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor
131      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
132      LOGICAL  , OPTIONAL, INTENT(IN) :: ts_enabled
133      LOGICAL (KIND=C_BOOL) :: ts_enabled_tmp
134      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: ts_split_freq
135      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit
136      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_max
137      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_min
138
139      CALL xios(set_field_attr_hdl_)  &
140      ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
141      , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
142      , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
143      , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
144      , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
145      , valid_max, valid_min )
146
147  END SUBROUTINE xios(set_field_attr_hdl)
148
149  SUBROUTINE xios(set_field_attr_hdl_)   &
150    ( field_hdl, add_offset_, axis_ref_, build_workflow_graph_, cell_methods_, cell_methods_mode_  &
151    , check_if_active_, chunking_blocksize_target_, comment_, compression_level_, compression_params_  &
152    , compression_type_, conversion_by_netcdf_, default_value_, detect_missing_value_, domain_ref_  &
153    , enabled_, expr_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_  &
154    , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_  &
155    , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ )
156
157    IMPLICIT NONE
158      TYPE(txios(field)) , INTENT(IN) :: field_hdl
159      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset_
160      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_
161      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph_
162      LOGICAL (KIND=C_BOOL) :: build_workflow_graph__tmp
163      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_
164      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode_
165      LOGICAL  , OPTIONAL, INTENT(IN) :: check_if_active_
166      LOGICAL (KIND=C_BOOL) :: check_if_active__tmp
167      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: chunking_blocksize_target_
168      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment_
169      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level_
170      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: compression_params_(:)
171      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: compression_type_
172      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf_
173      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf__tmp
174      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value_
175      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value_
176      LOGICAL (KIND=C_BOOL) :: detect_missing_value__tmp
177      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_
178      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled_
179      LOGICAL (KIND=C_BOOL) :: enabled__tmp
180      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: expr_
181      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref_
182      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_offset_
183      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_op_
184      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_path_
185      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref_
186      LOGICAL  , OPTIONAL, INTENT(IN) :: indexed_output_
187      LOGICAL (KIND=C_BOOL) :: indexed_output__tmp
188      INTEGER  , OPTIONAL, INTENT(IN) :: level_
189      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_
190      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
191      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_
192      INTEGER  , OPTIONAL, INTENT(IN) :: prec_
193      LOGICAL  , OPTIONAL, INTENT(IN) :: read_access_
194      LOGICAL (KIND=C_BOOL) :: read_access__tmp
195      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref_
196      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor_
197      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_
198      LOGICAL  , OPTIONAL, INTENT(IN) :: ts_enabled_
199      LOGICAL (KIND=C_BOOL) :: ts_enabled__tmp
200      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: ts_split_freq_
201      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_
202      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_max_
203      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_min_
204
205      IF (PRESENT(add_offset_)) THEN
206        CALL cxios_set_field_add_offset &
207      (field_hdl%daddr, add_offset_)
208      ENDIF
209
210      IF (PRESENT(axis_ref_)) THEN
211        CALL cxios_set_field_axis_ref &
212      (field_hdl%daddr, axis_ref_, len(axis_ref_))
213      ENDIF
214
215      IF (PRESENT(build_workflow_graph_)) THEN
216        build_workflow_graph__tmp = build_workflow_graph_
217        CALL xios_logical_to_bool_0d(build_workflow_graph__tmp)
218        CALL cxios_set_field_build_workflow_graph &
219      (field_hdl%daddr, build_workflow_graph__tmp)
220      ENDIF
221
222      IF (PRESENT(cell_methods_)) THEN
223        CALL cxios_set_field_cell_methods &
224      (field_hdl%daddr, cell_methods_, len(cell_methods_))
225      ENDIF
226
227      IF (PRESENT(cell_methods_mode_)) THEN
228        CALL cxios_set_field_cell_methods_mode &
229      (field_hdl%daddr, cell_methods_mode_, len(cell_methods_mode_))
230      ENDIF
231
232      IF (PRESENT(check_if_active_)) THEN
233        check_if_active__tmp = check_if_active_
234        CALL xios_logical_to_bool_0d(check_if_active__tmp)
235        CALL cxios_set_field_check_if_active &
236      (field_hdl%daddr, check_if_active__tmp)
237      ENDIF
238
239      IF (PRESENT(chunking_blocksize_target_)) THEN
240        CALL cxios_set_field_chunking_blocksize_target &
241      (field_hdl%daddr, chunking_blocksize_target_)
242      ENDIF
243
244      IF (PRESENT(comment_)) THEN
245        CALL cxios_set_field_comment &
246      (field_hdl%daddr, comment_, len(comment_))
247      ENDIF
248
249      IF (PRESENT(compression_level_)) THEN
250        CALL cxios_set_field_compression_level &
251      (field_hdl%daddr, compression_level_)
252      ENDIF
253
254      IF (PRESENT(compression_params_)) THEN
255        CALL cxios_set_field_compression_params &
256      (field_hdl%daddr, compression_params_, SHAPE(compression_params_))
257      ENDIF
258
259      IF (PRESENT(compression_type_)) THEN
260        CALL cxios_set_field_compression_type &
261      (field_hdl%daddr, compression_type_, len(compression_type_))
262      ENDIF
263
264      IF (PRESENT(conversion_by_netcdf_)) THEN
265        conversion_by_netcdf__tmp = conversion_by_netcdf_
266        CALL xios_logical_to_bool_0d(conversion_by_netcdf__tmp)
267        CALL cxios_set_field_conversion_by_netcdf &
268      (field_hdl%daddr, conversion_by_netcdf__tmp)
269      ENDIF
270
271      IF (PRESENT(default_value_)) THEN
272        CALL cxios_set_field_default_value &
273      (field_hdl%daddr, default_value_)
274      ENDIF
275
276      IF (PRESENT(detect_missing_value_)) THEN
277        detect_missing_value__tmp = detect_missing_value_
278        CALL xios_logical_to_bool_0d(detect_missing_value__tmp)
279        CALL cxios_set_field_detect_missing_value &
280      (field_hdl%daddr, detect_missing_value__tmp)
281      ENDIF
282
283      IF (PRESENT(domain_ref_)) THEN
284        CALL cxios_set_field_domain_ref &
285      (field_hdl%daddr, domain_ref_, len(domain_ref_))
286      ENDIF
287
288      IF (PRESENT(enabled_)) THEN
289        enabled__tmp = enabled_
290        CALL xios_logical_to_bool_0d(enabled__tmp)
291        CALL cxios_set_field_enabled &
292      (field_hdl%daddr, enabled__tmp)
293      ENDIF
294
295      IF (PRESENT(expr_)) THEN
296        CALL cxios_set_field_expr &
297      (field_hdl%daddr, expr_, len(expr_))
298      ENDIF
299
300      IF (PRESENT(field_ref_)) THEN
301        CALL cxios_set_field_field_ref &
302      (field_hdl%daddr, field_ref_, len(field_ref_))
303      ENDIF
304
305      IF (PRESENT(freq_offset_)) THEN
306        CALL cxios_set_field_freq_offset &
307      (field_hdl%daddr, freq_offset_)
308      ENDIF
309
310      IF (PRESENT(freq_op_)) THEN
311        CALL cxios_set_field_freq_op &
312      (field_hdl%daddr, freq_op_)
313      ENDIF
314
315      IF (PRESENT(grid_path_)) THEN
316        CALL cxios_set_field_grid_path &
317      (field_hdl%daddr, grid_path_, len(grid_path_))
318      ENDIF
319
320      IF (PRESENT(grid_ref_)) THEN
321        CALL cxios_set_field_grid_ref &
322      (field_hdl%daddr, grid_ref_, len(grid_ref_))
323      ENDIF
324
325      IF (PRESENT(indexed_output_)) THEN
326        indexed_output__tmp = indexed_output_
327        CALL xios_logical_to_bool_0d(indexed_output__tmp)
328        CALL cxios_set_field_indexed_output &
329      (field_hdl%daddr, indexed_output__tmp)
330      ENDIF
331
332      IF (PRESENT(level_)) THEN
333        CALL cxios_set_field_level &
334      (field_hdl%daddr, level_)
335      ENDIF
336
337      IF (PRESENT(long_name_)) THEN
338        CALL cxios_set_field_long_name &
339      (field_hdl%daddr, long_name_, len(long_name_))
340      ENDIF
341
342      IF (PRESENT(name_)) THEN
343        CALL cxios_set_field_name &
344      (field_hdl%daddr, name_, len(name_))
345      ENDIF
346
347      IF (PRESENT(operation_)) THEN
348        CALL cxios_set_field_operation &
349      (field_hdl%daddr, operation_, len(operation_))
350      ENDIF
351
352      IF (PRESENT(prec_)) THEN
353        CALL cxios_set_field_prec &
354      (field_hdl%daddr, prec_)
355      ENDIF
356
357      IF (PRESENT(read_access_)) THEN
358        read_access__tmp = read_access_
359        CALL xios_logical_to_bool_0d(read_access__tmp)
360        CALL cxios_set_field_read_access &
361      (field_hdl%daddr, read_access__tmp)
362      ENDIF
363
364      IF (PRESENT(scalar_ref_)) THEN
365        CALL cxios_set_field_scalar_ref &
366      (field_hdl%daddr, scalar_ref_, len(scalar_ref_))
367      ENDIF
368
369      IF (PRESENT(scale_factor_)) THEN
370        CALL cxios_set_field_scale_factor &
371      (field_hdl%daddr, scale_factor_)
372      ENDIF
373
374      IF (PRESENT(standard_name_)) THEN
375        CALL cxios_set_field_standard_name &
376      (field_hdl%daddr, standard_name_, len(standard_name_))
377      ENDIF
378
379      IF (PRESENT(ts_enabled_)) THEN
380        ts_enabled__tmp = ts_enabled_
381        CALL xios_logical_to_bool_0d(ts_enabled__tmp)
382        CALL cxios_set_field_ts_enabled &
383      (field_hdl%daddr, ts_enabled__tmp)
384      ENDIF
385
386      IF (PRESENT(ts_split_freq_)) THEN
387        CALL cxios_set_field_ts_split_freq &
388      (field_hdl%daddr, ts_split_freq_)
389      ENDIF
390
391      IF (PRESENT(unit_)) THEN
392        CALL cxios_set_field_unit &
393      (field_hdl%daddr, unit_, len(unit_))
394      ENDIF
395
396      IF (PRESENT(valid_max_)) THEN
397        CALL cxios_set_field_valid_max &
398      (field_hdl%daddr, valid_max_)
399      ENDIF
400
401      IF (PRESENT(valid_min_)) THEN
402        CALL cxios_set_field_valid_min &
403      (field_hdl%daddr, valid_min_)
404      ENDIF
405
406  END SUBROUTINE xios(set_field_attr_hdl_)
407
408  SUBROUTINE xios(get_field_attr)  &
409    ( field_id, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
410    , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
411    , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
412    , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
413    , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
414    , valid_max, valid_min )
415
416    IMPLICIT NONE
417      TYPE(txios(field))  :: field_hdl
418      CHARACTER(LEN=*), INTENT(IN) ::field_id
419      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset
420      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref
421      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph
422      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp
423      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods
424      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode
425      LOGICAL  , OPTIONAL, INTENT(OUT) :: check_if_active
426      LOGICAL (KIND=C_BOOL) :: check_if_active_tmp
427      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: chunking_blocksize_target
428      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment
429      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level
430      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: compression_params(:)
431      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: compression_type
432      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf
433      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp
434      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value
435      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value
436      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
437      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: domain_ref
438      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled
439      LOGICAL (KIND=C_BOOL) :: enabled_tmp
440      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: expr
441      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: field_ref
442      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_offset
443      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_op
444      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_path
445      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_ref
446      LOGICAL  , OPTIONAL, INTENT(OUT) :: indexed_output
447      LOGICAL (KIND=C_BOOL) :: indexed_output_tmp
448      INTEGER  , OPTIONAL, INTENT(OUT) :: level
449      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name
450      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
451      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation
452      INTEGER  , OPTIONAL, INTENT(OUT) :: prec
453      LOGICAL  , OPTIONAL, INTENT(OUT) :: read_access
454      LOGICAL (KIND=C_BOOL) :: read_access_tmp
455      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref
456      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor
457      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
458      LOGICAL  , OPTIONAL, INTENT(OUT) :: ts_enabled
459      LOGICAL (KIND=C_BOOL) :: ts_enabled_tmp
460      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: ts_split_freq
461      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit
462      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_max
463      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_min
464
465      CALL xios(get_field_handle) &
466      (field_id,field_hdl)
467      CALL xios(get_field_attr_hdl_)   &
468      ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
469      , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
470      , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
471      , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
472      , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
473      , valid_max, valid_min )
474
475  END SUBROUTINE xios(get_field_attr)
476
477  SUBROUTINE xios(get_field_attr_hdl)  &
478    ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
479    , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
480    , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
481    , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
482    , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
483    , valid_max, valid_min )
484
485    IMPLICIT NONE
486      TYPE(txios(field)) , INTENT(IN) :: field_hdl
487      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset
488      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref
489      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph
490      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp
491      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods
492      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode
493      LOGICAL  , OPTIONAL, INTENT(OUT) :: check_if_active
494      LOGICAL (KIND=C_BOOL) :: check_if_active_tmp
495      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: chunking_blocksize_target
496      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment
497      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level
498      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: compression_params(:)
499      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: compression_type
500      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf
501      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp
502      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value
503      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value
504      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
505      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: domain_ref
506      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled
507      LOGICAL (KIND=C_BOOL) :: enabled_tmp
508      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: expr
509      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: field_ref
510      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_offset
511      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_op
512      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_path
513      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_ref
514      LOGICAL  , OPTIONAL, INTENT(OUT) :: indexed_output
515      LOGICAL (KIND=C_BOOL) :: indexed_output_tmp
516      INTEGER  , OPTIONAL, INTENT(OUT) :: level
517      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name
518      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
519      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation
520      INTEGER  , OPTIONAL, INTENT(OUT) :: prec
521      LOGICAL  , OPTIONAL, INTENT(OUT) :: read_access
522      LOGICAL (KIND=C_BOOL) :: read_access_tmp
523      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref
524      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor
525      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
526      LOGICAL  , OPTIONAL, INTENT(OUT) :: ts_enabled
527      LOGICAL (KIND=C_BOOL) :: ts_enabled_tmp
528      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: ts_split_freq
529      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit
530      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_max
531      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_min
532
533      CALL xios(get_field_attr_hdl_)  &
534      ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
535      , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
536      , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
537      , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
538      , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
539      , valid_max, valid_min )
540
541  END SUBROUTINE xios(get_field_attr_hdl)
542
543  SUBROUTINE xios(get_field_attr_hdl_)   &
544    ( field_hdl, add_offset_, axis_ref_, build_workflow_graph_, cell_methods_, cell_methods_mode_  &
545    , check_if_active_, chunking_blocksize_target_, comment_, compression_level_, compression_params_  &
546    , compression_type_, conversion_by_netcdf_, default_value_, detect_missing_value_, domain_ref_  &
547    , enabled_, expr_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_  &
548    , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_  &
549    , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ )
550
551    IMPLICIT NONE
552      TYPE(txios(field)) , INTENT(IN) :: field_hdl
553      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset_
554      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref_
555      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_
556      LOGICAL (KIND=C_BOOL) :: build_workflow_graph__tmp
557      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_
558      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode_
559      LOGICAL  , OPTIONAL, INTENT(OUT) :: check_if_active_
560      LOGICAL (KIND=C_BOOL) :: check_if_active__tmp
561      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: chunking_blocksize_target_
562      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment_
563      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level_
564      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: compression_params_(:)
565      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: compression_type_
566      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf_
567      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf__tmp
568      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value_
569      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value_
570      LOGICAL (KIND=C_BOOL) :: detect_missing_value__tmp
571      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: domain_ref_
572      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled_
573      LOGICAL (KIND=C_BOOL) :: enabled__tmp
574      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: expr_
575      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: field_ref_
576      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_offset_
577      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_op_
578      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_path_
579      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_ref_
580      LOGICAL  , OPTIONAL, INTENT(OUT) :: indexed_output_
581      LOGICAL (KIND=C_BOOL) :: indexed_output__tmp
582      INTEGER  , OPTIONAL, INTENT(OUT) :: level_
583      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name_
584      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
585      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation_
586      INTEGER  , OPTIONAL, INTENT(OUT) :: prec_
587      LOGICAL  , OPTIONAL, INTENT(OUT) :: read_access_
588      LOGICAL (KIND=C_BOOL) :: read_access__tmp
589      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref_
590      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor_
591      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_
592      LOGICAL  , OPTIONAL, INTENT(OUT) :: ts_enabled_
593      LOGICAL (KIND=C_BOOL) :: ts_enabled__tmp
594      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: ts_split_freq_
595      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit_
596      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_max_
597      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_min_
598
599      IF (PRESENT(add_offset_)) THEN
600        CALL cxios_get_field_add_offset &
601      (field_hdl%daddr, add_offset_)
602      ENDIF
603
604      IF (PRESENT(axis_ref_)) THEN
605        CALL cxios_get_field_axis_ref &
606      (field_hdl%daddr, axis_ref_, len(axis_ref_))
607      ENDIF
608
609      IF (PRESENT(build_workflow_graph_)) THEN
610        CALL cxios_get_field_build_workflow_graph &
611      (field_hdl%daddr, build_workflow_graph__tmp)
612        CALL xios_bool_to_logical_0d(build_workflow_graph__tmp)
613        build_workflow_graph_ = build_workflow_graph__tmp
614      ENDIF
615
616      IF (PRESENT(cell_methods_)) THEN
617        CALL cxios_get_field_cell_methods &
618      (field_hdl%daddr, cell_methods_, len(cell_methods_))
619      ENDIF
620
621      IF (PRESENT(cell_methods_mode_)) THEN
622        CALL cxios_get_field_cell_methods_mode &
623      (field_hdl%daddr, cell_methods_mode_, len(cell_methods_mode_))
624      ENDIF
625
626      IF (PRESENT(check_if_active_)) THEN
627        CALL cxios_get_field_check_if_active &
628      (field_hdl%daddr, check_if_active__tmp)
629        CALL xios_bool_to_logical_0d(check_if_active__tmp)
630        check_if_active_ = check_if_active__tmp
631      ENDIF
632
633      IF (PRESENT(chunking_blocksize_target_)) THEN
634        CALL cxios_get_field_chunking_blocksize_target &
635      (field_hdl%daddr, chunking_blocksize_target_)
636      ENDIF
637
638      IF (PRESENT(comment_)) THEN
639        CALL cxios_get_field_comment &
640      (field_hdl%daddr, comment_, len(comment_))
641      ENDIF
642
643      IF (PRESENT(compression_level_)) THEN
644        CALL cxios_get_field_compression_level &
645      (field_hdl%daddr, compression_level_)
646      ENDIF
647
648      IF (PRESENT(compression_params_)) THEN
649        CALL cxios_get_field_compression_params &
650      (field_hdl%daddr, compression_params_, SHAPE(compression_params_))
651      ENDIF
652
653      IF (PRESENT(compression_type_)) THEN
654        CALL cxios_get_field_compression_type &
655      (field_hdl%daddr, compression_type_, len(compression_type_))
656      ENDIF
657
658      IF (PRESENT(conversion_by_netcdf_)) THEN
659        CALL cxios_get_field_conversion_by_netcdf &
660      (field_hdl%daddr, conversion_by_netcdf__tmp)
661        CALL xios_bool_to_logical_0d(conversion_by_netcdf__tmp)
662        conversion_by_netcdf_ = conversion_by_netcdf__tmp
663      ENDIF
664
665      IF (PRESENT(default_value_)) THEN
666        CALL cxios_get_field_default_value &
667      (field_hdl%daddr, default_value_)
668      ENDIF
669
670      IF (PRESENT(detect_missing_value_)) THEN
671        CALL cxios_get_field_detect_missing_value &
672      (field_hdl%daddr, detect_missing_value__tmp)
673        CALL xios_bool_to_logical_0d(detect_missing_value__tmp)
674        detect_missing_value_ = detect_missing_value__tmp
675      ENDIF
676
677      IF (PRESENT(domain_ref_)) THEN
678        CALL cxios_get_field_domain_ref &
679      (field_hdl%daddr, domain_ref_, len(domain_ref_))
680      ENDIF
681
682      IF (PRESENT(enabled_)) THEN
683        CALL cxios_get_field_enabled &
684      (field_hdl%daddr, enabled__tmp)
685        CALL xios_bool_to_logical_0d(enabled__tmp)
686        enabled_ = enabled__tmp
687      ENDIF
688
689      IF (PRESENT(expr_)) THEN
690        CALL cxios_get_field_expr &
691      (field_hdl%daddr, expr_, len(expr_))
692      ENDIF
693
694      IF (PRESENT(field_ref_)) THEN
695        CALL cxios_get_field_field_ref &
696      (field_hdl%daddr, field_ref_, len(field_ref_))
697      ENDIF
698
699      IF (PRESENT(freq_offset_)) THEN
700        CALL cxios_get_field_freq_offset &
701      (field_hdl%daddr, freq_offset_)
702      ENDIF
703
704      IF (PRESENT(freq_op_)) THEN
705        CALL cxios_get_field_freq_op &
706      (field_hdl%daddr, freq_op_)
707      ENDIF
708
709      IF (PRESENT(grid_path_)) THEN
710        CALL cxios_get_field_grid_path &
711      (field_hdl%daddr, grid_path_, len(grid_path_))
712      ENDIF
713
714      IF (PRESENT(grid_ref_)) THEN
715        CALL cxios_get_field_grid_ref &
716      (field_hdl%daddr, grid_ref_, len(grid_ref_))
717      ENDIF
718
719      IF (PRESENT(indexed_output_)) THEN
720        CALL cxios_get_field_indexed_output &
721      (field_hdl%daddr, indexed_output__tmp)
722        CALL xios_bool_to_logical_0d(indexed_output__tmp)
723        indexed_output_ = indexed_output__tmp
724      ENDIF
725
726      IF (PRESENT(level_)) THEN
727        CALL cxios_get_field_level &
728      (field_hdl%daddr, level_)
729      ENDIF
730
731      IF (PRESENT(long_name_)) THEN
732        CALL cxios_get_field_long_name &
733      (field_hdl%daddr, long_name_, len(long_name_))
734      ENDIF
735
736      IF (PRESENT(name_)) THEN
737        CALL cxios_get_field_name &
738      (field_hdl%daddr, name_, len(name_))
739      ENDIF
740
741      IF (PRESENT(operation_)) THEN
742        CALL cxios_get_field_operation &
743      (field_hdl%daddr, operation_, len(operation_))
744      ENDIF
745
746      IF (PRESENT(prec_)) THEN
747        CALL cxios_get_field_prec &
748      (field_hdl%daddr, prec_)
749      ENDIF
750
751      IF (PRESENT(read_access_)) THEN
752        CALL cxios_get_field_read_access &
753      (field_hdl%daddr, read_access__tmp)
754        CALL xios_bool_to_logical_0d(read_access__tmp)
755        read_access_ = read_access__tmp
756      ENDIF
757
758      IF (PRESENT(scalar_ref_)) THEN
759        CALL cxios_get_field_scalar_ref &
760      (field_hdl%daddr, scalar_ref_, len(scalar_ref_))
761      ENDIF
762
763      IF (PRESENT(scale_factor_)) THEN
764        CALL cxios_get_field_scale_factor &
765      (field_hdl%daddr, scale_factor_)
766      ENDIF
767
768      IF (PRESENT(standard_name_)) THEN
769        CALL cxios_get_field_standard_name &
770      (field_hdl%daddr, standard_name_, len(standard_name_))
771      ENDIF
772
773      IF (PRESENT(ts_enabled_)) THEN
774        CALL cxios_get_field_ts_enabled &
775      (field_hdl%daddr, ts_enabled__tmp)
776        CALL xios_bool_to_logical_0d(ts_enabled__tmp)
777        ts_enabled_ = ts_enabled__tmp
778      ENDIF
779
780      IF (PRESENT(ts_split_freq_)) THEN
781        CALL cxios_get_field_ts_split_freq &
782      (field_hdl%daddr, ts_split_freq_)
783      ENDIF
784
785      IF (PRESENT(unit_)) THEN
786        CALL cxios_get_field_unit &
787      (field_hdl%daddr, unit_, len(unit_))
788      ENDIF
789
790      IF (PRESENT(valid_max_)) THEN
791        CALL cxios_get_field_valid_max &
792      (field_hdl%daddr, valid_max_)
793      ENDIF
794
795      IF (PRESENT(valid_min_)) THEN
796        CALL cxios_get_field_valid_min &
797      (field_hdl%daddr, valid_min_)
798      ENDIF
799
800  END SUBROUTINE xios(get_field_attr_hdl_)
801
802  SUBROUTINE xios(is_defined_field_attr)  &
803    ( field_id, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
804    , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
805    , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
806    , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
807    , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
808    , valid_max, valid_min )
809
810    IMPLICIT NONE
811      TYPE(txios(field))  :: field_hdl
812      CHARACTER(LEN=*), INTENT(IN) ::field_id
813      LOGICAL, OPTIONAL, INTENT(OUT) :: add_offset
814      LOGICAL(KIND=C_BOOL) :: add_offset_tmp
815      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref
816      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp
817      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph
818      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_tmp
819      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods
820      LOGICAL(KIND=C_BOOL) :: cell_methods_tmp
821      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods_mode
822      LOGICAL(KIND=C_BOOL) :: cell_methods_mode_tmp
823      LOGICAL, OPTIONAL, INTENT(OUT) :: check_if_active
824      LOGICAL(KIND=C_BOOL) :: check_if_active_tmp
825      LOGICAL, OPTIONAL, INTENT(OUT) :: chunking_blocksize_target
826      LOGICAL(KIND=C_BOOL) :: chunking_blocksize_target_tmp
827      LOGICAL, OPTIONAL, INTENT(OUT) :: comment
828      LOGICAL(KIND=C_BOOL) :: comment_tmp
829      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level
830      LOGICAL(KIND=C_BOOL) :: compression_level_tmp
831      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_params
832      LOGICAL(KIND=C_BOOL) :: compression_params_tmp
833      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_type
834      LOGICAL(KIND=C_BOOL) :: compression_type_tmp
835      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf
836      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf_tmp
837      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value
838      LOGICAL(KIND=C_BOOL) :: default_value_tmp
839      LOGICAL, OPTIONAL, INTENT(OUT) :: detect_missing_value
840      LOGICAL(KIND=C_BOOL) :: detect_missing_value_tmp
841      LOGICAL, OPTIONAL, INTENT(OUT) :: domain_ref
842      LOGICAL(KIND=C_BOOL) :: domain_ref_tmp
843      LOGICAL, OPTIONAL, INTENT(OUT) :: enabled
844      LOGICAL(KIND=C_BOOL) :: enabled_tmp
845      LOGICAL, OPTIONAL, INTENT(OUT) :: expr
846      LOGICAL(KIND=C_BOOL) :: expr_tmp
847      LOGICAL, OPTIONAL, INTENT(OUT) :: field_ref
848      LOGICAL(KIND=C_BOOL) :: field_ref_tmp
849      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_offset
850      LOGICAL(KIND=C_BOOL) :: freq_offset_tmp
851      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_op
852      LOGICAL(KIND=C_BOOL) :: freq_op_tmp
853      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_path
854      LOGICAL(KIND=C_BOOL) :: grid_path_tmp
855      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_ref
856      LOGICAL(KIND=C_BOOL) :: grid_ref_tmp
857      LOGICAL, OPTIONAL, INTENT(OUT) :: indexed_output
858      LOGICAL(KIND=C_BOOL) :: indexed_output_tmp
859      LOGICAL, OPTIONAL, INTENT(OUT) :: level
860      LOGICAL(KIND=C_BOOL) :: level_tmp
861      LOGICAL, OPTIONAL, INTENT(OUT) :: long_name
862      LOGICAL(KIND=C_BOOL) :: long_name_tmp
863      LOGICAL, OPTIONAL, INTENT(OUT) :: name
864      LOGICAL(KIND=C_BOOL) :: name_tmp
865      LOGICAL, OPTIONAL, INTENT(OUT) :: operation
866      LOGICAL(KIND=C_BOOL) :: operation_tmp
867      LOGICAL, OPTIONAL, INTENT(OUT) :: prec
868      LOGICAL(KIND=C_BOOL) :: prec_tmp
869      LOGICAL, OPTIONAL, INTENT(OUT) :: read_access
870      LOGICAL(KIND=C_BOOL) :: read_access_tmp
871      LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref
872      LOGICAL(KIND=C_BOOL) :: scalar_ref_tmp
873      LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor
874      LOGICAL(KIND=C_BOOL) :: scale_factor_tmp
875      LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
876      LOGICAL(KIND=C_BOOL) :: standard_name_tmp
877      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_enabled
878      LOGICAL(KIND=C_BOOL) :: ts_enabled_tmp
879      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_split_freq
880      LOGICAL(KIND=C_BOOL) :: ts_split_freq_tmp
881      LOGICAL, OPTIONAL, INTENT(OUT) :: unit
882      LOGICAL(KIND=C_BOOL) :: unit_tmp
883      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_max
884      LOGICAL(KIND=C_BOOL) :: valid_max_tmp
885      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_min
886      LOGICAL(KIND=C_BOOL) :: valid_min_tmp
887
888      CALL xios(get_field_handle) &
889      (field_id,field_hdl)
890      CALL xios(is_defined_field_attr_hdl_)   &
891      ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
892      , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
893      , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
894      , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
895      , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
896      , valid_max, valid_min )
897
898  END SUBROUTINE xios(is_defined_field_attr)
899
900  SUBROUTINE xios(is_defined_field_attr_hdl)  &
901    ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
902    , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
903    , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
904    , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
905    , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
906    , valid_max, valid_min )
907
908    IMPLICIT NONE
909      TYPE(txios(field)) , INTENT(IN) :: field_hdl
910      LOGICAL, OPTIONAL, INTENT(OUT) :: add_offset
911      LOGICAL(KIND=C_BOOL) :: add_offset_tmp
912      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref
913      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp
914      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph
915      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_tmp
916      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods
917      LOGICAL(KIND=C_BOOL) :: cell_methods_tmp
918      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods_mode
919      LOGICAL(KIND=C_BOOL) :: cell_methods_mode_tmp
920      LOGICAL, OPTIONAL, INTENT(OUT) :: check_if_active
921      LOGICAL(KIND=C_BOOL) :: check_if_active_tmp
922      LOGICAL, OPTIONAL, INTENT(OUT) :: chunking_blocksize_target
923      LOGICAL(KIND=C_BOOL) :: chunking_blocksize_target_tmp
924      LOGICAL, OPTIONAL, INTENT(OUT) :: comment
925      LOGICAL(KIND=C_BOOL) :: comment_tmp
926      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level
927      LOGICAL(KIND=C_BOOL) :: compression_level_tmp
928      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_params
929      LOGICAL(KIND=C_BOOL) :: compression_params_tmp
930      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_type
931      LOGICAL(KIND=C_BOOL) :: compression_type_tmp
932      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf
933      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf_tmp
934      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value
935      LOGICAL(KIND=C_BOOL) :: default_value_tmp
936      LOGICAL, OPTIONAL, INTENT(OUT) :: detect_missing_value
937      LOGICAL(KIND=C_BOOL) :: detect_missing_value_tmp
938      LOGICAL, OPTIONAL, INTENT(OUT) :: domain_ref
939      LOGICAL(KIND=C_BOOL) :: domain_ref_tmp
940      LOGICAL, OPTIONAL, INTENT(OUT) :: enabled
941      LOGICAL(KIND=C_BOOL) :: enabled_tmp
942      LOGICAL, OPTIONAL, INTENT(OUT) :: expr
943      LOGICAL(KIND=C_BOOL) :: expr_tmp
944      LOGICAL, OPTIONAL, INTENT(OUT) :: field_ref
945      LOGICAL(KIND=C_BOOL) :: field_ref_tmp
946      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_offset
947      LOGICAL(KIND=C_BOOL) :: freq_offset_tmp
948      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_op
949      LOGICAL(KIND=C_BOOL) :: freq_op_tmp
950      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_path
951      LOGICAL(KIND=C_BOOL) :: grid_path_tmp
952      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_ref
953      LOGICAL(KIND=C_BOOL) :: grid_ref_tmp
954      LOGICAL, OPTIONAL, INTENT(OUT) :: indexed_output
955      LOGICAL(KIND=C_BOOL) :: indexed_output_tmp
956      LOGICAL, OPTIONAL, INTENT(OUT) :: level
957      LOGICAL(KIND=C_BOOL) :: level_tmp
958      LOGICAL, OPTIONAL, INTENT(OUT) :: long_name
959      LOGICAL(KIND=C_BOOL) :: long_name_tmp
960      LOGICAL, OPTIONAL, INTENT(OUT) :: name
961      LOGICAL(KIND=C_BOOL) :: name_tmp
962      LOGICAL, OPTIONAL, INTENT(OUT) :: operation
963      LOGICAL(KIND=C_BOOL) :: operation_tmp
964      LOGICAL, OPTIONAL, INTENT(OUT) :: prec
965      LOGICAL(KIND=C_BOOL) :: prec_tmp
966      LOGICAL, OPTIONAL, INTENT(OUT) :: read_access
967      LOGICAL(KIND=C_BOOL) :: read_access_tmp
968      LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref
969      LOGICAL(KIND=C_BOOL) :: scalar_ref_tmp
970      LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor
971      LOGICAL(KIND=C_BOOL) :: scale_factor_tmp
972      LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
973      LOGICAL(KIND=C_BOOL) :: standard_name_tmp
974      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_enabled
975      LOGICAL(KIND=C_BOOL) :: ts_enabled_tmp
976      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_split_freq
977      LOGICAL(KIND=C_BOOL) :: ts_split_freq_tmp
978      LOGICAL, OPTIONAL, INTENT(OUT) :: unit
979      LOGICAL(KIND=C_BOOL) :: unit_tmp
980      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_max
981      LOGICAL(KIND=C_BOOL) :: valid_max_tmp
982      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_min
983      LOGICAL(KIND=C_BOOL) :: valid_min_tmp
984
985      CALL xios(is_defined_field_attr_hdl_)  &
986      ( field_hdl, add_offset, axis_ref, build_workflow_graph, cell_methods, cell_methods_mode, check_if_active  &
987      , chunking_blocksize_target, comment, compression_level, compression_params, compression_type  &
988      , conversion_by_netcdf, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  &
989      , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  &
990      , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  &
991      , valid_max, valid_min )
992
993  END SUBROUTINE xios(is_defined_field_attr_hdl)
994
995  SUBROUTINE xios(is_defined_field_attr_hdl_)   &
996    ( field_hdl, add_offset_, axis_ref_, build_workflow_graph_, cell_methods_, cell_methods_mode_  &
997    , check_if_active_, chunking_blocksize_target_, comment_, compression_level_, compression_params_  &
998    , compression_type_, conversion_by_netcdf_, default_value_, detect_missing_value_, domain_ref_  &
999    , enabled_, expr_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_  &
1000    , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_  &
1001    , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ )
1002
1003    IMPLICIT NONE
1004      TYPE(txios(field)) , INTENT(IN) :: field_hdl
1005      LOGICAL, OPTIONAL, INTENT(OUT) :: add_offset_
1006      LOGICAL(KIND=C_BOOL) :: add_offset__tmp
1007      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref_
1008      LOGICAL(KIND=C_BOOL) :: axis_ref__tmp
1009      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_
1010      LOGICAL(KIND=C_BOOL) :: build_workflow_graph__tmp
1011      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods_
1012      LOGICAL(KIND=C_BOOL) :: cell_methods__tmp
1013      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods_mode_
1014      LOGICAL(KIND=C_BOOL) :: cell_methods_mode__tmp
1015      LOGICAL, OPTIONAL, INTENT(OUT) :: check_if_active_
1016      LOGICAL(KIND=C_BOOL) :: check_if_active__tmp
1017      LOGICAL, OPTIONAL, INTENT(OUT) :: chunking_blocksize_target_
1018      LOGICAL(KIND=C_BOOL) :: chunking_blocksize_target__tmp
1019      LOGICAL, OPTIONAL, INTENT(OUT) :: comment_
1020      LOGICAL(KIND=C_BOOL) :: comment__tmp
1021      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level_
1022      LOGICAL(KIND=C_BOOL) :: compression_level__tmp
1023      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_params_
1024      LOGICAL(KIND=C_BOOL) :: compression_params__tmp
1025      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_type_
1026      LOGICAL(KIND=C_BOOL) :: compression_type__tmp
1027      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf_
1028      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf__tmp
1029      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value_
1030      LOGICAL(KIND=C_BOOL) :: default_value__tmp
1031      LOGICAL, OPTIONAL, INTENT(OUT) :: detect_missing_value_
1032      LOGICAL(KIND=C_BOOL) :: detect_missing_value__tmp
1033      LOGICAL, OPTIONAL, INTENT(OUT) :: domain_ref_
1034      LOGICAL(KIND=C_BOOL) :: domain_ref__tmp
1035      LOGICAL, OPTIONAL, INTENT(OUT) :: enabled_
1036      LOGICAL(KIND=C_BOOL) :: enabled__tmp
1037      LOGICAL, OPTIONAL, INTENT(OUT) :: expr_
1038      LOGICAL(KIND=C_BOOL) :: expr__tmp
1039      LOGICAL, OPTIONAL, INTENT(OUT) :: field_ref_
1040      LOGICAL(KIND=C_BOOL) :: field_ref__tmp
1041      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_offset_
1042      LOGICAL(KIND=C_BOOL) :: freq_offset__tmp
1043      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_op_
1044      LOGICAL(KIND=C_BOOL) :: freq_op__tmp
1045      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_path_
1046      LOGICAL(KIND=C_BOOL) :: grid_path__tmp
1047      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_ref_
1048      LOGICAL(KIND=C_BOOL) :: grid_ref__tmp
1049      LOGICAL, OPTIONAL, INTENT(OUT) :: indexed_output_
1050      LOGICAL(KIND=C_BOOL) :: indexed_output__tmp
1051      LOGICAL, OPTIONAL, INTENT(OUT) :: level_
1052      LOGICAL(KIND=C_BOOL) :: level__tmp
1053      LOGICAL, OPTIONAL, INTENT(OUT) :: long_name_
1054      LOGICAL(KIND=C_BOOL) :: long_name__tmp
1055      LOGICAL, OPTIONAL, INTENT(OUT) :: name_
1056      LOGICAL(KIND=C_BOOL) :: name__tmp
1057      LOGICAL, OPTIONAL, INTENT(OUT) :: operation_
1058      LOGICAL(KIND=C_BOOL) :: operation__tmp
1059      LOGICAL, OPTIONAL, INTENT(OUT) :: prec_
1060      LOGICAL(KIND=C_BOOL) :: prec__tmp
1061      LOGICAL, OPTIONAL, INTENT(OUT) :: read_access_
1062      LOGICAL(KIND=C_BOOL) :: read_access__tmp
1063      LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref_
1064      LOGICAL(KIND=C_BOOL) :: scalar_ref__tmp
1065      LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor_
1066      LOGICAL(KIND=C_BOOL) :: scale_factor__tmp
1067      LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name_
1068      LOGICAL(KIND=C_BOOL) :: standard_name__tmp
1069      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_enabled_
1070      LOGICAL(KIND=C_BOOL) :: ts_enabled__tmp
1071      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_split_freq_
1072      LOGICAL(KIND=C_BOOL) :: ts_split_freq__tmp
1073      LOGICAL, OPTIONAL, INTENT(OUT) :: unit_
1074      LOGICAL(KIND=C_BOOL) :: unit__tmp
1075      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_max_
1076      LOGICAL(KIND=C_BOOL) :: valid_max__tmp
1077      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_min_
1078      LOGICAL(KIND=C_BOOL) :: valid_min__tmp
1079
1080      IF (PRESENT(add_offset_)) THEN
1081        add_offset__tmp = cxios_is_defined_field_add_offset &
1082      (field_hdl%daddr)
1083        add_offset_ = add_offset__tmp
1084      ENDIF
1085
1086      IF (PRESENT(axis_ref_)) THEN
1087        axis_ref__tmp = cxios_is_defined_field_axis_ref &
1088      (field_hdl%daddr)
1089        axis_ref_ = axis_ref__tmp
1090      ENDIF
1091
1092      IF (PRESENT(build_workflow_graph_)) THEN
1093        build_workflow_graph__tmp = cxios_is_defined_field_build_workflow_graph &
1094      (field_hdl%daddr)
1095        build_workflow_graph_ = build_workflow_graph__tmp
1096      ENDIF
1097
1098      IF (PRESENT(cell_methods_)) THEN
1099        cell_methods__tmp = cxios_is_defined_field_cell_methods &
1100      (field_hdl%daddr)
1101        cell_methods_ = cell_methods__tmp
1102      ENDIF
1103
1104      IF (PRESENT(cell_methods_mode_)) THEN
1105        cell_methods_mode__tmp = cxios_is_defined_field_cell_methods_mode &
1106      (field_hdl%daddr)
1107        cell_methods_mode_ = cell_methods_mode__tmp
1108      ENDIF
1109
1110      IF (PRESENT(check_if_active_)) THEN
1111        check_if_active__tmp = cxios_is_defined_field_check_if_active &
1112      (field_hdl%daddr)
1113        check_if_active_ = check_if_active__tmp
1114      ENDIF
1115
1116      IF (PRESENT(chunking_blocksize_target_)) THEN
1117        chunking_blocksize_target__tmp = cxios_is_defined_field_chunking_blocksize_target &
1118      (field_hdl%daddr)
1119        chunking_blocksize_target_ = chunking_blocksize_target__tmp
1120      ENDIF
1121
1122      IF (PRESENT(comment_)) THEN
1123        comment__tmp = cxios_is_defined_field_comment &
1124      (field_hdl%daddr)
1125        comment_ = comment__tmp
1126      ENDIF
1127
1128      IF (PRESENT(compression_level_)) THEN
1129        compression_level__tmp = cxios_is_defined_field_compression_level &
1130      (field_hdl%daddr)
1131        compression_level_ = compression_level__tmp
1132      ENDIF
1133
1134      IF (PRESENT(compression_params_)) THEN
1135        compression_params__tmp = cxios_is_defined_field_compression_params &
1136      (field_hdl%daddr)
1137        compression_params_ = compression_params__tmp
1138      ENDIF
1139
1140      IF (PRESENT(compression_type_)) THEN
1141        compression_type__tmp = cxios_is_defined_field_compression_type &
1142      (field_hdl%daddr)
1143        compression_type_ = compression_type__tmp
1144      ENDIF
1145
1146      IF (PRESENT(conversion_by_netcdf_)) THEN
1147        conversion_by_netcdf__tmp = cxios_is_defined_field_conversion_by_netcdf &
1148      (field_hdl%daddr)
1149        conversion_by_netcdf_ = conversion_by_netcdf__tmp
1150      ENDIF
1151
1152      IF (PRESENT(default_value_)) THEN
1153        default_value__tmp = cxios_is_defined_field_default_value &
1154      (field_hdl%daddr)
1155        default_value_ = default_value__tmp
1156      ENDIF
1157
1158      IF (PRESENT(detect_missing_value_)) THEN
1159        detect_missing_value__tmp = cxios_is_defined_field_detect_missing_value &
1160      (field_hdl%daddr)
1161        detect_missing_value_ = detect_missing_value__tmp
1162      ENDIF
1163
1164      IF (PRESENT(domain_ref_)) THEN
1165        domain_ref__tmp = cxios_is_defined_field_domain_ref &
1166      (field_hdl%daddr)
1167        domain_ref_ = domain_ref__tmp
1168      ENDIF
1169
1170      IF (PRESENT(enabled_)) THEN
1171        enabled__tmp = cxios_is_defined_field_enabled &
1172      (field_hdl%daddr)
1173        enabled_ = enabled__tmp
1174      ENDIF
1175
1176      IF (PRESENT(expr_)) THEN
1177        expr__tmp = cxios_is_defined_field_expr &
1178      (field_hdl%daddr)
1179        expr_ = expr__tmp
1180      ENDIF
1181
1182      IF (PRESENT(field_ref_)) THEN
1183        field_ref__tmp = cxios_is_defined_field_field_ref &
1184      (field_hdl%daddr)
1185        field_ref_ = field_ref__tmp
1186      ENDIF
1187
1188      IF (PRESENT(freq_offset_)) THEN
1189        freq_offset__tmp = cxios_is_defined_field_freq_offset &
1190      (field_hdl%daddr)
1191        freq_offset_ = freq_offset__tmp
1192      ENDIF
1193
1194      IF (PRESENT(freq_op_)) THEN
1195        freq_op__tmp = cxios_is_defined_field_freq_op &
1196      (field_hdl%daddr)
1197        freq_op_ = freq_op__tmp
1198      ENDIF
1199
1200      IF (PRESENT(grid_path_)) THEN
1201        grid_path__tmp = cxios_is_defined_field_grid_path &
1202      (field_hdl%daddr)
1203        grid_path_ = grid_path__tmp
1204      ENDIF
1205
1206      IF (PRESENT(grid_ref_)) THEN
1207        grid_ref__tmp = cxios_is_defined_field_grid_ref &
1208      (field_hdl%daddr)
1209        grid_ref_ = grid_ref__tmp
1210      ENDIF
1211
1212      IF (PRESENT(indexed_output_)) THEN
1213        indexed_output__tmp = cxios_is_defined_field_indexed_output &
1214      (field_hdl%daddr)
1215        indexed_output_ = indexed_output__tmp
1216      ENDIF
1217
1218      IF (PRESENT(level_)) THEN
1219        level__tmp = cxios_is_defined_field_level &
1220      (field_hdl%daddr)
1221        level_ = level__tmp
1222      ENDIF
1223
1224      IF (PRESENT(long_name_)) THEN
1225        long_name__tmp = cxios_is_defined_field_long_name &
1226      (field_hdl%daddr)
1227        long_name_ = long_name__tmp
1228      ENDIF
1229
1230      IF (PRESENT(name_)) THEN
1231        name__tmp = cxios_is_defined_field_name &
1232      (field_hdl%daddr)
1233        name_ = name__tmp
1234      ENDIF
1235
1236      IF (PRESENT(operation_)) THEN
1237        operation__tmp = cxios_is_defined_field_operation &
1238      (field_hdl%daddr)
1239        operation_ = operation__tmp
1240      ENDIF
1241
1242      IF (PRESENT(prec_)) THEN
1243        prec__tmp = cxios_is_defined_field_prec &
1244      (field_hdl%daddr)
1245        prec_ = prec__tmp
1246      ENDIF
1247
1248      IF (PRESENT(read_access_)) THEN
1249        read_access__tmp = cxios_is_defined_field_read_access &
1250      (field_hdl%daddr)
1251        read_access_ = read_access__tmp
1252      ENDIF
1253
1254      IF (PRESENT(scalar_ref_)) THEN
1255        scalar_ref__tmp = cxios_is_defined_field_scalar_ref &
1256      (field_hdl%daddr)
1257        scalar_ref_ = scalar_ref__tmp
1258      ENDIF
1259
1260      IF (PRESENT(scale_factor_)) THEN
1261        scale_factor__tmp = cxios_is_defined_field_scale_factor &
1262      (field_hdl%daddr)
1263        scale_factor_ = scale_factor__tmp
1264      ENDIF
1265
1266      IF (PRESENT(standard_name_)) THEN
1267        standard_name__tmp = cxios_is_defined_field_standard_name &
1268      (field_hdl%daddr)
1269        standard_name_ = standard_name__tmp
1270      ENDIF
1271
1272      IF (PRESENT(ts_enabled_)) THEN
1273        ts_enabled__tmp = cxios_is_defined_field_ts_enabled &
1274      (field_hdl%daddr)
1275        ts_enabled_ = ts_enabled__tmp
1276      ENDIF
1277
1278      IF (PRESENT(ts_split_freq_)) THEN
1279        ts_split_freq__tmp = cxios_is_defined_field_ts_split_freq &
1280      (field_hdl%daddr)
1281        ts_split_freq_ = ts_split_freq__tmp
1282      ENDIF
1283
1284      IF (PRESENT(unit_)) THEN
1285        unit__tmp = cxios_is_defined_field_unit &
1286      (field_hdl%daddr)
1287        unit_ = unit__tmp
1288      ENDIF
1289
1290      IF (PRESENT(valid_max_)) THEN
1291        valid_max__tmp = cxios_is_defined_field_valid_max &
1292      (field_hdl%daddr)
1293        valid_max_ = valid_max__tmp
1294      ENDIF
1295
1296      IF (PRESENT(valid_min_)) THEN
1297        valid_min__tmp = cxios_is_defined_field_valid_min &
1298      (field_hdl%daddr)
1299        valid_min_ = valid_min__tmp
1300      ENDIF
1301
1302  END SUBROUTINE xios(is_defined_field_attr_hdl_)
1303
1304END MODULE ifield_attr
Note: See TracBrowser for help on using the repository browser.