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

Last change on this file since 538 was 538, checked in by rlacroix, 8 years ago

Convert more attributes to use the new duration type:

  • field: freq_op and freq_offset
  • file: output_freq, sync_freq and split_freq.

Remember that you now have to use the "xios_duration" type instead of strings to get/set those attributes through the Fortran interface.

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