source: XIOS/trunk/src/interface/fortran_attr/ifield_attr.F90 @ 593

Last change on this file since 593 was 593, checked in by rlacroix, 9 years ago

Add a new interface xios_recv_field to get local instant data from a field.

  • 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: 28.9 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
11CONTAINS
12
13  SUBROUTINE xios(set_field_attr)  &
14    ( field_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled, field_ref  &
15    , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access, scale_factor  &
16    , standard_name, unit, valid_max, valid_min )
17
18    IMPLICIT NONE
19      TYPE(txios(field))  :: field_hdl
20      CHARACTER(LEN=*), INTENT(IN) ::field_id
21      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset
22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref
23      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value
24      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value
25      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
26      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref
27      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled
28      LOGICAL (KIND=C_BOOL) :: enabled_tmp
29      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref
30      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_offset
31      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_op
32      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref
33      INTEGER  , OPTIONAL, INTENT(IN) :: level
34      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name
35      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
36      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation
37      INTEGER  , OPTIONAL, INTENT(IN) :: prec
38      LOGICAL  , OPTIONAL, INTENT(IN) :: read_access
39      LOGICAL (KIND=C_BOOL) :: read_access_tmp
40      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor
41      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
42      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit
43      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_max
44      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_min
45
46      CALL xios(get_field_handle)(field_id,field_hdl)
47      CALL xios(set_field_attr_hdl_)   &
48      ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
49      , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
50      , scale_factor, standard_name, unit, valid_max, valid_min )
51
52  END SUBROUTINE xios(set_field_attr)
53
54  SUBROUTINE xios(set_field_attr_hdl)  &
55    ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
56    , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
57    , scale_factor, standard_name, unit, valid_max, valid_min )
58
59    IMPLICIT NONE
60      TYPE(txios(field)) , INTENT(IN) :: field_hdl
61      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset
62      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref
63      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value
64      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value
65      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
66      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref
67      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled
68      LOGICAL (KIND=C_BOOL) :: enabled_tmp
69      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref
70      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_offset
71      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_op
72      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref
73      INTEGER  , OPTIONAL, INTENT(IN) :: level
74      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name
75      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
76      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation
77      INTEGER  , OPTIONAL, INTENT(IN) :: prec
78      LOGICAL  , OPTIONAL, INTENT(IN) :: read_access
79      LOGICAL (KIND=C_BOOL) :: read_access_tmp
80      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor
81      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
82      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit
83      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_max
84      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_min
85
86      CALL xios(set_field_attr_hdl_)  &
87      ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
88      , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
89      , scale_factor, standard_name, unit, valid_max, valid_min )
90
91  END SUBROUTINE xios(set_field_attr_hdl)
92
93  SUBROUTINE xios(set_field_attr_hdl_)   &
94    ( field_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_, enabled_  &
95    , field_ref_, freq_offset_, freq_op_, grid_ref_, level_, long_name_, name_, operation_, prec_  &
96    , read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ )
97
98    IMPLICIT NONE
99      TYPE(txios(field)) , INTENT(IN) :: field_hdl
100      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset_
101      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_
102      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value_
103      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value_
104      LOGICAL (KIND=C_BOOL) :: detect_missing_value__tmp
105      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_
106      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled_
107      LOGICAL (KIND=C_BOOL) :: enabled__tmp
108      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref_
109      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_offset_
110      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: freq_op_
111      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref_
112      INTEGER  , OPTIONAL, INTENT(IN) :: level_
113      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_
114      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
115      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_
116      INTEGER  , OPTIONAL, INTENT(IN) :: prec_
117      LOGICAL  , OPTIONAL, INTENT(IN) :: read_access_
118      LOGICAL (KIND=C_BOOL) :: read_access__tmp
119      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor_
120      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_
121      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_
122      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_max_
123      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: valid_min_
124
125      IF (PRESENT(add_offset_)) THEN
126        CALL cxios_set_field_add_offset(field_hdl%daddr, add_offset_)
127      ENDIF
128
129      IF (PRESENT(axis_ref_)) THEN
130        CALL cxios_set_field_axis_ref(field_hdl%daddr, axis_ref_, len(axis_ref_))
131      ENDIF
132
133      IF (PRESENT(default_value_)) THEN
134        CALL cxios_set_field_default_value(field_hdl%daddr, default_value_)
135      ENDIF
136
137      IF (PRESENT(detect_missing_value_)) THEN
138        detect_missing_value__tmp = detect_missing_value_
139        CALL cxios_set_field_detect_missing_value(field_hdl%daddr, detect_missing_value__tmp)
140      ENDIF
141
142      IF (PRESENT(domain_ref_)) THEN
143        CALL cxios_set_field_domain_ref(field_hdl%daddr, domain_ref_, len(domain_ref_))
144      ENDIF
145
146      IF (PRESENT(enabled_)) THEN
147        enabled__tmp = enabled_
148        CALL cxios_set_field_enabled(field_hdl%daddr, enabled__tmp)
149      ENDIF
150
151      IF (PRESENT(field_ref_)) THEN
152        CALL cxios_set_field_field_ref(field_hdl%daddr, field_ref_, len(field_ref_))
153      ENDIF
154
155      IF (PRESENT(freq_offset_)) THEN
156        CALL cxios_set_field_freq_offset(field_hdl%daddr, freq_offset_)
157      ENDIF
158
159      IF (PRESENT(freq_op_)) THEN
160        CALL cxios_set_field_freq_op(field_hdl%daddr, freq_op_)
161      ENDIF
162
163      IF (PRESENT(grid_ref_)) THEN
164        CALL cxios_set_field_grid_ref(field_hdl%daddr, grid_ref_, len(grid_ref_))
165      ENDIF
166
167      IF (PRESENT(level_)) THEN
168        CALL cxios_set_field_level(field_hdl%daddr, level_)
169      ENDIF
170
171      IF (PRESENT(long_name_)) THEN
172        CALL cxios_set_field_long_name(field_hdl%daddr, long_name_, len(long_name_))
173      ENDIF
174
175      IF (PRESENT(name_)) THEN
176        CALL cxios_set_field_name(field_hdl%daddr, name_, len(name_))
177      ENDIF
178
179      IF (PRESENT(operation_)) THEN
180        CALL cxios_set_field_operation(field_hdl%daddr, operation_, len(operation_))
181      ENDIF
182
183      IF (PRESENT(prec_)) THEN
184        CALL cxios_set_field_prec(field_hdl%daddr, prec_)
185      ENDIF
186
187      IF (PRESENT(read_access_)) THEN
188        read_access__tmp = read_access_
189        CALL cxios_set_field_read_access(field_hdl%daddr, read_access__tmp)
190      ENDIF
191
192      IF (PRESENT(scale_factor_)) THEN
193        CALL cxios_set_field_scale_factor(field_hdl%daddr, scale_factor_)
194      ENDIF
195
196      IF (PRESENT(standard_name_)) THEN
197        CALL cxios_set_field_standard_name(field_hdl%daddr, standard_name_, len(standard_name_))
198      ENDIF
199
200      IF (PRESENT(unit_)) THEN
201        CALL cxios_set_field_unit(field_hdl%daddr, unit_, len(unit_))
202      ENDIF
203
204      IF (PRESENT(valid_max_)) THEN
205        CALL cxios_set_field_valid_max(field_hdl%daddr, valid_max_)
206      ENDIF
207
208      IF (PRESENT(valid_min_)) THEN
209        CALL cxios_set_field_valid_min(field_hdl%daddr, valid_min_)
210      ENDIF
211
212  END SUBROUTINE xios(set_field_attr_hdl_)
213
214  SUBROUTINE xios(get_field_attr)  &
215    ( field_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled, field_ref  &
216    , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access, scale_factor  &
217    , standard_name, unit, valid_max, valid_min )
218
219    IMPLICIT NONE
220      TYPE(txios(field))  :: field_hdl
221      CHARACTER(LEN=*), INTENT(IN) ::field_id
222      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset
223      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref
224      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value
225      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value
226      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
227      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: domain_ref
228      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled
229      LOGICAL (KIND=C_BOOL) :: enabled_tmp
230      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: field_ref
231      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_offset
232      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_op
233      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_ref
234      INTEGER  , OPTIONAL, INTENT(OUT) :: level
235      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name
236      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
237      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation
238      INTEGER  , OPTIONAL, INTENT(OUT) :: prec
239      LOGICAL  , OPTIONAL, INTENT(OUT) :: read_access
240      LOGICAL (KIND=C_BOOL) :: read_access_tmp
241      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor
242      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
243      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit
244      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_max
245      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_min
246
247      CALL xios(get_field_handle)(field_id,field_hdl)
248      CALL xios(get_field_attr_hdl_)   &
249      ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
250      , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
251      , scale_factor, standard_name, unit, valid_max, valid_min )
252
253  END SUBROUTINE xios(get_field_attr)
254
255  SUBROUTINE xios(get_field_attr_hdl)  &
256    ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
257    , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
258    , scale_factor, standard_name, unit, valid_max, valid_min )
259
260    IMPLICIT NONE
261      TYPE(txios(field)) , INTENT(IN) :: field_hdl
262      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset
263      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref
264      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value
265      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value
266      LOGICAL (KIND=C_BOOL) :: detect_missing_value_tmp
267      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: domain_ref
268      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled
269      LOGICAL (KIND=C_BOOL) :: enabled_tmp
270      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: field_ref
271      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_offset
272      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_op
273      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_ref
274      INTEGER  , OPTIONAL, INTENT(OUT) :: level
275      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name
276      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
277      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation
278      INTEGER  , OPTIONAL, INTENT(OUT) :: prec
279      LOGICAL  , OPTIONAL, INTENT(OUT) :: read_access
280      LOGICAL (KIND=C_BOOL) :: read_access_tmp
281      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor
282      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
283      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit
284      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_max
285      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_min
286
287      CALL xios(get_field_attr_hdl_)  &
288      ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
289      , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
290      , scale_factor, standard_name, unit, valid_max, valid_min )
291
292  END SUBROUTINE xios(get_field_attr_hdl)
293
294  SUBROUTINE xios(get_field_attr_hdl_)   &
295    ( field_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_, enabled_  &
296    , field_ref_, freq_offset_, freq_op_, grid_ref_, level_, long_name_, name_, operation_, prec_  &
297    , read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ )
298
299    IMPLICIT NONE
300      TYPE(txios(field)) , INTENT(IN) :: field_hdl
301      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset_
302      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref_
303      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value_
304      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value_
305      LOGICAL (KIND=C_BOOL) :: detect_missing_value__tmp
306      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: domain_ref_
307      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled_
308      LOGICAL (KIND=C_BOOL) :: enabled__tmp
309      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: field_ref_
310      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_offset_
311      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: freq_op_
312      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: grid_ref_
313      INTEGER  , OPTIONAL, INTENT(OUT) :: level_
314      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name_
315      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
316      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation_
317      INTEGER  , OPTIONAL, INTENT(OUT) :: prec_
318      LOGICAL  , OPTIONAL, INTENT(OUT) :: read_access_
319      LOGICAL (KIND=C_BOOL) :: read_access__tmp
320      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor_
321      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_
322      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit_
323      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_max_
324      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: valid_min_
325
326      IF (PRESENT(add_offset_)) THEN
327        CALL cxios_get_field_add_offset(field_hdl%daddr, add_offset_)
328      ENDIF
329
330      IF (PRESENT(axis_ref_)) THEN
331        CALL cxios_get_field_axis_ref(field_hdl%daddr, axis_ref_, len(axis_ref_))
332      ENDIF
333
334      IF (PRESENT(default_value_)) THEN
335        CALL cxios_get_field_default_value(field_hdl%daddr, default_value_)
336      ENDIF
337
338      IF (PRESENT(detect_missing_value_)) THEN
339        CALL cxios_get_field_detect_missing_value(field_hdl%daddr, detect_missing_value__tmp)
340        detect_missing_value_ = detect_missing_value__tmp
341      ENDIF
342
343      IF (PRESENT(domain_ref_)) THEN
344        CALL cxios_get_field_domain_ref(field_hdl%daddr, domain_ref_, len(domain_ref_))
345      ENDIF
346
347      IF (PRESENT(enabled_)) THEN
348        CALL cxios_get_field_enabled(field_hdl%daddr, enabled__tmp)
349        enabled_ = enabled__tmp
350      ENDIF
351
352      IF (PRESENT(field_ref_)) THEN
353        CALL cxios_get_field_field_ref(field_hdl%daddr, field_ref_, len(field_ref_))
354      ENDIF
355
356      IF (PRESENT(freq_offset_)) THEN
357        CALL cxios_get_field_freq_offset(field_hdl%daddr, freq_offset_)
358      ENDIF
359
360      IF (PRESENT(freq_op_)) THEN
361        CALL cxios_get_field_freq_op(field_hdl%daddr, freq_op_)
362      ENDIF
363
364      IF (PRESENT(grid_ref_)) THEN
365        CALL cxios_get_field_grid_ref(field_hdl%daddr, grid_ref_, len(grid_ref_))
366      ENDIF
367
368      IF (PRESENT(level_)) THEN
369        CALL cxios_get_field_level(field_hdl%daddr, level_)
370      ENDIF
371
372      IF (PRESENT(long_name_)) THEN
373        CALL cxios_get_field_long_name(field_hdl%daddr, long_name_, len(long_name_))
374      ENDIF
375
376      IF (PRESENT(name_)) THEN
377        CALL cxios_get_field_name(field_hdl%daddr, name_, len(name_))
378      ENDIF
379
380      IF (PRESENT(operation_)) THEN
381        CALL cxios_get_field_operation(field_hdl%daddr, operation_, len(operation_))
382      ENDIF
383
384      IF (PRESENT(prec_)) THEN
385        CALL cxios_get_field_prec(field_hdl%daddr, prec_)
386      ENDIF
387
388      IF (PRESENT(read_access_)) THEN
389        CALL cxios_get_field_read_access(field_hdl%daddr, read_access__tmp)
390        read_access_ = read_access__tmp
391      ENDIF
392
393      IF (PRESENT(scale_factor_)) THEN
394        CALL cxios_get_field_scale_factor(field_hdl%daddr, scale_factor_)
395      ENDIF
396
397      IF (PRESENT(standard_name_)) THEN
398        CALL cxios_get_field_standard_name(field_hdl%daddr, standard_name_, len(standard_name_))
399      ENDIF
400
401      IF (PRESENT(unit_)) THEN
402        CALL cxios_get_field_unit(field_hdl%daddr, unit_, len(unit_))
403      ENDIF
404
405      IF (PRESENT(valid_max_)) THEN
406        CALL cxios_get_field_valid_max(field_hdl%daddr, valid_max_)
407      ENDIF
408
409      IF (PRESENT(valid_min_)) THEN
410        CALL cxios_get_field_valid_min(field_hdl%daddr, valid_min_)
411      ENDIF
412
413  END SUBROUTINE xios(get_field_attr_hdl_)
414
415  SUBROUTINE xios(is_defined_field_attr)  &
416    ( field_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled, field_ref  &
417    , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access, scale_factor  &
418    , standard_name, unit, valid_max, valid_min )
419
420    IMPLICIT NONE
421      TYPE(txios(field))  :: field_hdl
422      CHARACTER(LEN=*), INTENT(IN) ::field_id
423      LOGICAL, OPTIONAL, INTENT(OUT) :: add_offset
424      LOGICAL(KIND=C_BOOL) :: add_offset_tmp
425      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref
426      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp
427      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value
428      LOGICAL(KIND=C_BOOL) :: default_value_tmp
429      LOGICAL, OPTIONAL, INTENT(OUT) :: detect_missing_value
430      LOGICAL(KIND=C_BOOL) :: detect_missing_value_tmp
431      LOGICAL, OPTIONAL, INTENT(OUT) :: domain_ref
432      LOGICAL(KIND=C_BOOL) :: domain_ref_tmp
433      LOGICAL, OPTIONAL, INTENT(OUT) :: enabled
434      LOGICAL(KIND=C_BOOL) :: enabled_tmp
435      LOGICAL, OPTIONAL, INTENT(OUT) :: field_ref
436      LOGICAL(KIND=C_BOOL) :: field_ref_tmp
437      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_offset
438      LOGICAL(KIND=C_BOOL) :: freq_offset_tmp
439      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_op
440      LOGICAL(KIND=C_BOOL) :: freq_op_tmp
441      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_ref
442      LOGICAL(KIND=C_BOOL) :: grid_ref_tmp
443      LOGICAL, OPTIONAL, INTENT(OUT) :: level
444      LOGICAL(KIND=C_BOOL) :: level_tmp
445      LOGICAL, OPTIONAL, INTENT(OUT) :: long_name
446      LOGICAL(KIND=C_BOOL) :: long_name_tmp
447      LOGICAL, OPTIONAL, INTENT(OUT) :: name
448      LOGICAL(KIND=C_BOOL) :: name_tmp
449      LOGICAL, OPTIONAL, INTENT(OUT) :: operation
450      LOGICAL(KIND=C_BOOL) :: operation_tmp
451      LOGICAL, OPTIONAL, INTENT(OUT) :: prec
452      LOGICAL(KIND=C_BOOL) :: prec_tmp
453      LOGICAL, OPTIONAL, INTENT(OUT) :: read_access
454      LOGICAL(KIND=C_BOOL) :: read_access_tmp
455      LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor
456      LOGICAL(KIND=C_BOOL) :: scale_factor_tmp
457      LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
458      LOGICAL(KIND=C_BOOL) :: standard_name_tmp
459      LOGICAL, OPTIONAL, INTENT(OUT) :: unit
460      LOGICAL(KIND=C_BOOL) :: unit_tmp
461      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_max
462      LOGICAL(KIND=C_BOOL) :: valid_max_tmp
463      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_min
464      LOGICAL(KIND=C_BOOL) :: valid_min_tmp
465
466      CALL xios(get_field_handle)(field_id,field_hdl)
467      CALL xios(is_defined_field_attr_hdl_)   &
468      ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
469      , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
470      , scale_factor, standard_name, unit, valid_max, valid_min )
471
472  END SUBROUTINE xios(is_defined_field_attr)
473
474  SUBROUTINE xios(is_defined_field_attr_hdl)  &
475    ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
476    , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
477    , scale_factor, standard_name, unit, valid_max, valid_min )
478
479    IMPLICIT NONE
480      TYPE(txios(field)) , INTENT(IN) :: field_hdl
481      LOGICAL, OPTIONAL, INTENT(OUT) :: add_offset
482      LOGICAL(KIND=C_BOOL) :: add_offset_tmp
483      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref
484      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp
485      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value
486      LOGICAL(KIND=C_BOOL) :: default_value_tmp
487      LOGICAL, OPTIONAL, INTENT(OUT) :: detect_missing_value
488      LOGICAL(KIND=C_BOOL) :: detect_missing_value_tmp
489      LOGICAL, OPTIONAL, INTENT(OUT) :: domain_ref
490      LOGICAL(KIND=C_BOOL) :: domain_ref_tmp
491      LOGICAL, OPTIONAL, INTENT(OUT) :: enabled
492      LOGICAL(KIND=C_BOOL) :: enabled_tmp
493      LOGICAL, OPTIONAL, INTENT(OUT) :: field_ref
494      LOGICAL(KIND=C_BOOL) :: field_ref_tmp
495      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_offset
496      LOGICAL(KIND=C_BOOL) :: freq_offset_tmp
497      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_op
498      LOGICAL(KIND=C_BOOL) :: freq_op_tmp
499      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_ref
500      LOGICAL(KIND=C_BOOL) :: grid_ref_tmp
501      LOGICAL, OPTIONAL, INTENT(OUT) :: level
502      LOGICAL(KIND=C_BOOL) :: level_tmp
503      LOGICAL, OPTIONAL, INTENT(OUT) :: long_name
504      LOGICAL(KIND=C_BOOL) :: long_name_tmp
505      LOGICAL, OPTIONAL, INTENT(OUT) :: name
506      LOGICAL(KIND=C_BOOL) :: name_tmp
507      LOGICAL, OPTIONAL, INTENT(OUT) :: operation
508      LOGICAL(KIND=C_BOOL) :: operation_tmp
509      LOGICAL, OPTIONAL, INTENT(OUT) :: prec
510      LOGICAL(KIND=C_BOOL) :: prec_tmp
511      LOGICAL, OPTIONAL, INTENT(OUT) :: read_access
512      LOGICAL(KIND=C_BOOL) :: read_access_tmp
513      LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor
514      LOGICAL(KIND=C_BOOL) :: scale_factor_tmp
515      LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
516      LOGICAL(KIND=C_BOOL) :: standard_name_tmp
517      LOGICAL, OPTIONAL, INTENT(OUT) :: unit
518      LOGICAL(KIND=C_BOOL) :: unit_tmp
519      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_max
520      LOGICAL(KIND=C_BOOL) :: valid_max_tmp
521      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_min
522      LOGICAL(KIND=C_BOOL) :: valid_min_tmp
523
524      CALL xios(is_defined_field_attr_hdl_)  &
525      ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled  &
526      , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access  &
527      , scale_factor, standard_name, unit, valid_max, valid_min )
528
529  END SUBROUTINE xios(is_defined_field_attr_hdl)
530
531  SUBROUTINE xios(is_defined_field_attr_hdl_)   &
532    ( field_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_, enabled_  &
533    , field_ref_, freq_offset_, freq_op_, grid_ref_, level_, long_name_, name_, operation_, prec_  &
534    , read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ )
535
536    IMPLICIT NONE
537      TYPE(txios(field)) , INTENT(IN) :: field_hdl
538      LOGICAL, OPTIONAL, INTENT(OUT) :: add_offset_
539      LOGICAL(KIND=C_BOOL) :: add_offset__tmp
540      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref_
541      LOGICAL(KIND=C_BOOL) :: axis_ref__tmp
542      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value_
543      LOGICAL(KIND=C_BOOL) :: default_value__tmp
544      LOGICAL, OPTIONAL, INTENT(OUT) :: detect_missing_value_
545      LOGICAL(KIND=C_BOOL) :: detect_missing_value__tmp
546      LOGICAL, OPTIONAL, INTENT(OUT) :: domain_ref_
547      LOGICAL(KIND=C_BOOL) :: domain_ref__tmp
548      LOGICAL, OPTIONAL, INTENT(OUT) :: enabled_
549      LOGICAL(KIND=C_BOOL) :: enabled__tmp
550      LOGICAL, OPTIONAL, INTENT(OUT) :: field_ref_
551      LOGICAL(KIND=C_BOOL) :: field_ref__tmp
552      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_offset_
553      LOGICAL(KIND=C_BOOL) :: freq_offset__tmp
554      LOGICAL, OPTIONAL, INTENT(OUT) :: freq_op_
555      LOGICAL(KIND=C_BOOL) :: freq_op__tmp
556      LOGICAL, OPTIONAL, INTENT(OUT) :: grid_ref_
557      LOGICAL(KIND=C_BOOL) :: grid_ref__tmp
558      LOGICAL, OPTIONAL, INTENT(OUT) :: level_
559      LOGICAL(KIND=C_BOOL) :: level__tmp
560      LOGICAL, OPTIONAL, INTENT(OUT) :: long_name_
561      LOGICAL(KIND=C_BOOL) :: long_name__tmp
562      LOGICAL, OPTIONAL, INTENT(OUT) :: name_
563      LOGICAL(KIND=C_BOOL) :: name__tmp
564      LOGICAL, OPTIONAL, INTENT(OUT) :: operation_
565      LOGICAL(KIND=C_BOOL) :: operation__tmp
566      LOGICAL, OPTIONAL, INTENT(OUT) :: prec_
567      LOGICAL(KIND=C_BOOL) :: prec__tmp
568      LOGICAL, OPTIONAL, INTENT(OUT) :: read_access_
569      LOGICAL(KIND=C_BOOL) :: read_access__tmp
570      LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor_
571      LOGICAL(KIND=C_BOOL) :: scale_factor__tmp
572      LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name_
573      LOGICAL(KIND=C_BOOL) :: standard_name__tmp
574      LOGICAL, OPTIONAL, INTENT(OUT) :: unit_
575      LOGICAL(KIND=C_BOOL) :: unit__tmp
576      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_max_
577      LOGICAL(KIND=C_BOOL) :: valid_max__tmp
578      LOGICAL, OPTIONAL, INTENT(OUT) :: valid_min_
579      LOGICAL(KIND=C_BOOL) :: valid_min__tmp
580
581      IF (PRESENT(add_offset_)) THEN
582        add_offset__tmp = cxios_is_defined_field_add_offset(field_hdl%daddr)
583        add_offset_ = add_offset__tmp
584      ENDIF
585
586      IF (PRESENT(axis_ref_)) THEN
587        axis_ref__tmp = cxios_is_defined_field_axis_ref(field_hdl%daddr)
588        axis_ref_ = axis_ref__tmp
589      ENDIF
590
591      IF (PRESENT(default_value_)) THEN
592        default_value__tmp = cxios_is_defined_field_default_value(field_hdl%daddr)
593        default_value_ = default_value__tmp
594      ENDIF
595
596      IF (PRESENT(detect_missing_value_)) THEN
597        detect_missing_value__tmp = cxios_is_defined_field_detect_missing_value(field_hdl%daddr)
598        detect_missing_value_ = detect_missing_value__tmp
599      ENDIF
600
601      IF (PRESENT(domain_ref_)) THEN
602        domain_ref__tmp = cxios_is_defined_field_domain_ref(field_hdl%daddr)
603        domain_ref_ = domain_ref__tmp
604      ENDIF
605
606      IF (PRESENT(enabled_)) THEN
607        enabled__tmp = cxios_is_defined_field_enabled(field_hdl%daddr)
608        enabled_ = enabled__tmp
609      ENDIF
610
611      IF (PRESENT(field_ref_)) THEN
612        field_ref__tmp = cxios_is_defined_field_field_ref(field_hdl%daddr)
613        field_ref_ = field_ref__tmp
614      ENDIF
615
616      IF (PRESENT(freq_offset_)) THEN
617        freq_offset__tmp = cxios_is_defined_field_freq_offset(field_hdl%daddr)
618        freq_offset_ = freq_offset__tmp
619      ENDIF
620
621      IF (PRESENT(freq_op_)) THEN
622        freq_op__tmp = cxios_is_defined_field_freq_op(field_hdl%daddr)
623        freq_op_ = freq_op__tmp
624      ENDIF
625
626      IF (PRESENT(grid_ref_)) THEN
627        grid_ref__tmp = cxios_is_defined_field_grid_ref(field_hdl%daddr)
628        grid_ref_ = grid_ref__tmp
629      ENDIF
630
631      IF (PRESENT(level_)) THEN
632        level__tmp = cxios_is_defined_field_level(field_hdl%daddr)
633        level_ = level__tmp
634      ENDIF
635
636      IF (PRESENT(long_name_)) THEN
637        long_name__tmp = cxios_is_defined_field_long_name(field_hdl%daddr)
638        long_name_ = long_name__tmp
639      ENDIF
640
641      IF (PRESENT(name_)) THEN
642        name__tmp = cxios_is_defined_field_name(field_hdl%daddr)
643        name_ = name__tmp
644      ENDIF
645
646      IF (PRESENT(operation_)) THEN
647        operation__tmp = cxios_is_defined_field_operation(field_hdl%daddr)
648        operation_ = operation__tmp
649      ENDIF
650
651      IF (PRESENT(prec_)) THEN
652        prec__tmp = cxios_is_defined_field_prec(field_hdl%daddr)
653        prec_ = prec__tmp
654      ENDIF
655
656      IF (PRESENT(read_access_)) THEN
657        read_access__tmp = cxios_is_defined_field_read_access(field_hdl%daddr)
658        read_access_ = read_access__tmp
659      ENDIF
660
661      IF (PRESENT(scale_factor_)) THEN
662        scale_factor__tmp = cxios_is_defined_field_scale_factor(field_hdl%daddr)
663        scale_factor_ = scale_factor__tmp
664      ENDIF
665
666      IF (PRESENT(standard_name_)) THEN
667        standard_name__tmp = cxios_is_defined_field_standard_name(field_hdl%daddr)
668        standard_name_ = standard_name__tmp
669      ENDIF
670
671      IF (PRESENT(unit_)) THEN
672        unit__tmp = cxios_is_defined_field_unit(field_hdl%daddr)
673        unit_ = unit__tmp
674      ENDIF
675
676      IF (PRESENT(valid_max_)) THEN
677        valid_max__tmp = cxios_is_defined_field_valid_max(field_hdl%daddr)
678        valid_max_ = valid_max__tmp
679      ENDIF
680
681      IF (PRESENT(valid_min_)) THEN
682        valid_min__tmp = cxios_is_defined_field_valid_min(field_hdl%daddr)
683        valid_min_ = valid_min__tmp
684      ENDIF
685
686  END SUBROUTINE xios(is_defined_field_attr_hdl_)
687
688END MODULE ifield_attr
Note: See TracBrowser for help on using the repository browser.