source: XIOS/trunk/src/interface/fortran_attr/igrid_attr.F90 @ 1542

Last change on this file since 1542 was 1492, checked in by oabramkina, 6 years ago

Updating fortran interface for attributes that have been recently introduced and the following filters:

duplicate_scalar_to_axis
reduce_axis_to_axis
reduce_scalar_to_scalar
reorder_domain
temporal_splitting.

  • 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: 20.7 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE igrid_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE igrid
9  USE grid_interface_attr
10
11CONTAINS
12
13  SUBROUTINE xios(set_grid_attr)  &
14    ( grid_id, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
15    , mask_7d, name )
16
17    IMPLICIT NONE
18      TYPE(txios(grid))  :: grid_hdl
19      CHARACTER(LEN=*), INTENT(IN) ::grid_id
20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment
21      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
22      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_0d(:)
23      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_0d_tmp(:)
24      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_1d(:)
25      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
26      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_2d(:,:)
27      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
28      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_3d(:,:,:)
29      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
30      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_4d(:,:,:,:)
31      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_4d_tmp(:,:,:,:)
32      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_5d(:,:,:,:,:)
33      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_5d_tmp(:,:,:,:,:)
34      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_6d(:,:,:,:,:,:)
35      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_6d_tmp(:,:,:,:,:,:)
36      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_7d(:,:,:,:,:,:,:)
37      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_7d_tmp(:,:,:,:,:,:,:)
38      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
39
40      CALL xios(get_grid_handle) &
41      (grid_id,grid_hdl)
42      CALL xios(set_grid_attr_hdl_)   &
43      ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
44      , mask_7d, name )
45
46  END SUBROUTINE xios(set_grid_attr)
47
48  SUBROUTINE xios(set_grid_attr_hdl)  &
49    ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
50    , mask_7d, name )
51
52    IMPLICIT NONE
53      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
54      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment
55      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
56      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_0d(:)
57      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_0d_tmp(:)
58      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_1d(:)
59      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
60      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_2d(:,:)
61      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
62      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_3d(:,:,:)
63      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
64      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_4d(:,:,:,:)
65      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_4d_tmp(:,:,:,:)
66      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_5d(:,:,:,:,:)
67      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_5d_tmp(:,:,:,:,:)
68      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_6d(:,:,:,:,:,:)
69      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_6d_tmp(:,:,:,:,:,:)
70      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_7d(:,:,:,:,:,:,:)
71      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_7d_tmp(:,:,:,:,:,:,:)
72      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
73
74      CALL xios(set_grid_attr_hdl_)  &
75      ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
76      , mask_7d, name )
77
78  END SUBROUTINE xios(set_grid_attr_hdl)
79
80  SUBROUTINE xios(set_grid_attr_hdl_)   &
81    ( grid_hdl, comment_, description_, mask_0d_, mask_1d_, mask_2d_, mask_3d_, mask_4d_, mask_5d_  &
82    , mask_6d_, mask_7d_, name_ )
83
84    IMPLICIT NONE
85      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
86      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment_
87      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_
88      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_0d_(:)
89      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_0d__tmp(:)
90      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_1d_(:)
91      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d__tmp(:)
92      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_2d_(:,:)
93      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d__tmp(:,:)
94      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_3d_(:,:,:)
95      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d__tmp(:,:,:)
96      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_4d_(:,:,:,:)
97      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_4d__tmp(:,:,:,:)
98      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_5d_(:,:,:,:,:)
99      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_5d__tmp(:,:,:,:,:)
100      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_6d_(:,:,:,:,:,:)
101      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_6d__tmp(:,:,:,:,:,:)
102      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_7d_(:,:,:,:,:,:,:)
103      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_7d__tmp(:,:,:,:,:,:,:)
104      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
105
106      IF (PRESENT(comment_)) THEN
107        CALL cxios_set_grid_comment &
108      (grid_hdl%daddr, comment_, len(comment_))
109      ENDIF
110
111      IF (PRESENT(description_)) THEN
112        CALL cxios_set_grid_description &
113      (grid_hdl%daddr, description_, len(description_))
114      ENDIF
115
116      IF (PRESENT(mask_0d_)) THEN
117        ALLOCATE(mask_0d__tmp(SIZE(mask_0d_,1)))
118        mask_0d__tmp = mask_0d_
119        CALL cxios_set_grid_mask_0d &
120      (grid_hdl%daddr, mask_0d__tmp, SHAPE(mask_0d_))
121      ENDIF
122
123      IF (PRESENT(mask_1d_)) THEN
124        ALLOCATE(mask_1d__tmp(SIZE(mask_1d_,1)))
125        mask_1d__tmp = mask_1d_
126        CALL cxios_set_grid_mask_1d &
127      (grid_hdl%daddr, mask_1d__tmp, SHAPE(mask_1d_))
128      ENDIF
129
130      IF (PRESENT(mask_2d_)) THEN
131        ALLOCATE(mask_2d__tmp(SIZE(mask_2d_,1), SIZE(mask_2d_,2)))
132        mask_2d__tmp = mask_2d_
133        CALL cxios_set_grid_mask_2d &
134      (grid_hdl%daddr, mask_2d__tmp, SHAPE(mask_2d_))
135      ENDIF
136
137      IF (PRESENT(mask_3d_)) THEN
138        ALLOCATE(mask_3d__tmp(SIZE(mask_3d_,1), SIZE(mask_3d_,2), SIZE(mask_3d_,3)))
139        mask_3d__tmp = mask_3d_
140        CALL cxios_set_grid_mask_3d &
141      (grid_hdl%daddr, mask_3d__tmp, SHAPE(mask_3d_))
142      ENDIF
143
144      IF (PRESENT(mask_4d_)) THEN
145        ALLOCATE(mask_4d__tmp(SIZE(mask_4d_,1), SIZE(mask_4d_,2), SIZE(mask_4d_,3), &
146       SIZE(mask_4d_,4)))
147        mask_4d__tmp = mask_4d_
148        CALL cxios_set_grid_mask_4d &
149      (grid_hdl%daddr, mask_4d__tmp, SHAPE(mask_4d_))
150      ENDIF
151
152      IF (PRESENT(mask_5d_)) THEN
153        ALLOCATE(mask_5d__tmp(SIZE(mask_5d_,1), SIZE(mask_5d_,2), SIZE(mask_5d_,3), &
154       SIZE(mask_5d_,4), SIZE(mask_5d_,5)))
155        mask_5d__tmp = mask_5d_
156        CALL cxios_set_grid_mask_5d &
157      (grid_hdl%daddr, mask_5d__tmp, SHAPE(mask_5d_))
158      ENDIF
159
160      IF (PRESENT(mask_6d_)) THEN
161        ALLOCATE(mask_6d__tmp(SIZE(mask_6d_,1), SIZE(mask_6d_,2), SIZE(mask_6d_,3), &
162       SIZE(mask_6d_,4), SIZE(mask_6d_,5), SIZE(mask_6d_,6)))
163        mask_6d__tmp = mask_6d_
164        CALL cxios_set_grid_mask_6d &
165      (grid_hdl%daddr, mask_6d__tmp, SHAPE(mask_6d_))
166      ENDIF
167
168      IF (PRESENT(mask_7d_)) THEN
169        ALLOCATE(mask_7d__tmp(SIZE(mask_7d_,1), SIZE(mask_7d_,2), SIZE(mask_7d_,3), &
170       SIZE(mask_7d_,4), SIZE(mask_7d_,5), SIZE(mask_7d_,6), &
171       SIZE(mask_7d_,7)))
172        mask_7d__tmp = mask_7d_
173        CALL cxios_set_grid_mask_7d &
174      (grid_hdl%daddr, mask_7d__tmp, SHAPE(mask_7d_))
175      ENDIF
176
177      IF (PRESENT(name_)) THEN
178        CALL cxios_set_grid_name &
179      (grid_hdl%daddr, name_, len(name_))
180      ENDIF
181
182  END SUBROUTINE xios(set_grid_attr_hdl_)
183
184  SUBROUTINE xios(get_grid_attr)  &
185    ( grid_id, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
186    , mask_7d, name )
187
188    IMPLICIT NONE
189      TYPE(txios(grid))  :: grid_hdl
190      CHARACTER(LEN=*), INTENT(IN) ::grid_id
191      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment
192      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
193      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_0d(:)
194      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_0d_tmp(:)
195      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_1d(:)
196      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
197      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_2d(:,:)
198      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
199      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_3d(:,:,:)
200      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
201      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_4d(:,:,:,:)
202      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_4d_tmp(:,:,:,:)
203      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_5d(:,:,:,:,:)
204      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_5d_tmp(:,:,:,:,:)
205      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_6d(:,:,:,:,:,:)
206      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_6d_tmp(:,:,:,:,:,:)
207      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_7d(:,:,:,:,:,:,:)
208      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_7d_tmp(:,:,:,:,:,:,:)
209      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
210
211      CALL xios(get_grid_handle) &
212      (grid_id,grid_hdl)
213      CALL xios(get_grid_attr_hdl_)   &
214      ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
215      , mask_7d, name )
216
217  END SUBROUTINE xios(get_grid_attr)
218
219  SUBROUTINE xios(get_grid_attr_hdl)  &
220    ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
221    , mask_7d, name )
222
223    IMPLICIT NONE
224      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
225      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment
226      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
227      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_0d(:)
228      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_0d_tmp(:)
229      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_1d(:)
230      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
231      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_2d(:,:)
232      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
233      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_3d(:,:,:)
234      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
235      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_4d(:,:,:,:)
236      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_4d_tmp(:,:,:,:)
237      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_5d(:,:,:,:,:)
238      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_5d_tmp(:,:,:,:,:)
239      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_6d(:,:,:,:,:,:)
240      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_6d_tmp(:,:,:,:,:,:)
241      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_7d(:,:,:,:,:,:,:)
242      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_7d_tmp(:,:,:,:,:,:,:)
243      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
244
245      CALL xios(get_grid_attr_hdl_)  &
246      ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
247      , mask_7d, name )
248
249  END SUBROUTINE xios(get_grid_attr_hdl)
250
251  SUBROUTINE xios(get_grid_attr_hdl_)   &
252    ( grid_hdl, comment_, description_, mask_0d_, mask_1d_, mask_2d_, mask_3d_, mask_4d_, mask_5d_  &
253    , mask_6d_, mask_7d_, name_ )
254
255    IMPLICIT NONE
256      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
257      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment_
258      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_
259      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_0d_(:)
260      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_0d__tmp(:)
261      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_1d_(:)
262      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d__tmp(:)
263      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_2d_(:,:)
264      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d__tmp(:,:)
265      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_3d_(:,:,:)
266      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d__tmp(:,:,:)
267      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_4d_(:,:,:,:)
268      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_4d__tmp(:,:,:,:)
269      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_5d_(:,:,:,:,:)
270      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_5d__tmp(:,:,:,:,:)
271      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_6d_(:,:,:,:,:,:)
272      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_6d__tmp(:,:,:,:,:,:)
273      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_7d_(:,:,:,:,:,:,:)
274      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_7d__tmp(:,:,:,:,:,:,:)
275      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
276
277      IF (PRESENT(comment_)) THEN
278        CALL cxios_get_grid_comment &
279      (grid_hdl%daddr, comment_, len(comment_))
280      ENDIF
281
282      IF (PRESENT(description_)) THEN
283        CALL cxios_get_grid_description &
284      (grid_hdl%daddr, description_, len(description_))
285      ENDIF
286
287      IF (PRESENT(mask_0d_)) THEN
288        ALLOCATE(mask_0d__tmp(SIZE(mask_0d_,1)))
289        CALL cxios_get_grid_mask_0d &
290      (grid_hdl%daddr, mask_0d__tmp, SHAPE(mask_0d_))
291        mask_0d_ = mask_0d__tmp
292      ENDIF
293
294      IF (PRESENT(mask_1d_)) THEN
295        ALLOCATE(mask_1d__tmp(SIZE(mask_1d_,1)))
296        CALL cxios_get_grid_mask_1d &
297      (grid_hdl%daddr, mask_1d__tmp, SHAPE(mask_1d_))
298        mask_1d_ = mask_1d__tmp
299      ENDIF
300
301      IF (PRESENT(mask_2d_)) THEN
302        ALLOCATE(mask_2d__tmp(SIZE(mask_2d_,1), SIZE(mask_2d_,2)))
303        CALL cxios_get_grid_mask_2d &
304      (grid_hdl%daddr, mask_2d__tmp, SHAPE(mask_2d_))
305        mask_2d_ = mask_2d__tmp
306      ENDIF
307
308      IF (PRESENT(mask_3d_)) THEN
309        ALLOCATE(mask_3d__tmp(SIZE(mask_3d_,1), SIZE(mask_3d_,2), SIZE(mask_3d_,3)))
310        CALL cxios_get_grid_mask_3d &
311      (grid_hdl%daddr, mask_3d__tmp, SHAPE(mask_3d_))
312        mask_3d_ = mask_3d__tmp
313      ENDIF
314
315      IF (PRESENT(mask_4d_)) THEN
316        ALLOCATE(mask_4d__tmp(SIZE(mask_4d_,1), SIZE(mask_4d_,2), SIZE(mask_4d_,3), &
317       SIZE(mask_4d_,4)))
318        CALL cxios_get_grid_mask_4d &
319      (grid_hdl%daddr, mask_4d__tmp, SHAPE(mask_4d_))
320        mask_4d_ = mask_4d__tmp
321      ENDIF
322
323      IF (PRESENT(mask_5d_)) THEN
324        ALLOCATE(mask_5d__tmp(SIZE(mask_5d_,1), SIZE(mask_5d_,2), SIZE(mask_5d_,3), &
325       SIZE(mask_5d_,4), SIZE(mask_5d_,5)))
326        CALL cxios_get_grid_mask_5d &
327      (grid_hdl%daddr, mask_5d__tmp, SHAPE(mask_5d_))
328        mask_5d_ = mask_5d__tmp
329      ENDIF
330
331      IF (PRESENT(mask_6d_)) THEN
332        ALLOCATE(mask_6d__tmp(SIZE(mask_6d_,1), SIZE(mask_6d_,2), SIZE(mask_6d_,3), &
333       SIZE(mask_6d_,4), SIZE(mask_6d_,5), SIZE(mask_6d_,6)))
334        CALL cxios_get_grid_mask_6d &
335      (grid_hdl%daddr, mask_6d__tmp, SHAPE(mask_6d_))
336        mask_6d_ = mask_6d__tmp
337      ENDIF
338
339      IF (PRESENT(mask_7d_)) THEN
340        ALLOCATE(mask_7d__tmp(SIZE(mask_7d_,1), SIZE(mask_7d_,2), SIZE(mask_7d_,3), &
341       SIZE(mask_7d_,4), SIZE(mask_7d_,5), SIZE(mask_7d_,6), &
342       SIZE(mask_7d_,7)))
343        CALL cxios_get_grid_mask_7d &
344      (grid_hdl%daddr, mask_7d__tmp, SHAPE(mask_7d_))
345        mask_7d_ = mask_7d__tmp
346      ENDIF
347
348      IF (PRESENT(name_)) THEN
349        CALL cxios_get_grid_name &
350      (grid_hdl%daddr, name_, len(name_))
351      ENDIF
352
353  END SUBROUTINE xios(get_grid_attr_hdl_)
354
355  SUBROUTINE xios(is_defined_grid_attr)  &
356    ( grid_id, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
357    , mask_7d, name )
358
359    IMPLICIT NONE
360      TYPE(txios(grid))  :: grid_hdl
361      CHARACTER(LEN=*), INTENT(IN) ::grid_id
362      LOGICAL, OPTIONAL, INTENT(OUT) :: comment
363      LOGICAL(KIND=C_BOOL) :: comment_tmp
364      LOGICAL, OPTIONAL, INTENT(OUT) :: description
365      LOGICAL(KIND=C_BOOL) :: description_tmp
366      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_0d
367      LOGICAL(KIND=C_BOOL) :: mask_0d_tmp
368      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_1d
369      LOGICAL(KIND=C_BOOL) :: mask_1d_tmp
370      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_2d
371      LOGICAL(KIND=C_BOOL) :: mask_2d_tmp
372      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_3d
373      LOGICAL(KIND=C_BOOL) :: mask_3d_tmp
374      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_4d
375      LOGICAL(KIND=C_BOOL) :: mask_4d_tmp
376      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_5d
377      LOGICAL(KIND=C_BOOL) :: mask_5d_tmp
378      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_6d
379      LOGICAL(KIND=C_BOOL) :: mask_6d_tmp
380      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_7d
381      LOGICAL(KIND=C_BOOL) :: mask_7d_tmp
382      LOGICAL, OPTIONAL, INTENT(OUT) :: name
383      LOGICAL(KIND=C_BOOL) :: name_tmp
384
385      CALL xios(get_grid_handle) &
386      (grid_id,grid_hdl)
387      CALL xios(is_defined_grid_attr_hdl_)   &
388      ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
389      , mask_7d, name )
390
391  END SUBROUTINE xios(is_defined_grid_attr)
392
393  SUBROUTINE xios(is_defined_grid_attr_hdl)  &
394    ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
395    , mask_7d, name )
396
397    IMPLICIT NONE
398      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
399      LOGICAL, OPTIONAL, INTENT(OUT) :: comment
400      LOGICAL(KIND=C_BOOL) :: comment_tmp
401      LOGICAL, OPTIONAL, INTENT(OUT) :: description
402      LOGICAL(KIND=C_BOOL) :: description_tmp
403      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_0d
404      LOGICAL(KIND=C_BOOL) :: mask_0d_tmp
405      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_1d
406      LOGICAL(KIND=C_BOOL) :: mask_1d_tmp
407      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_2d
408      LOGICAL(KIND=C_BOOL) :: mask_2d_tmp
409      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_3d
410      LOGICAL(KIND=C_BOOL) :: mask_3d_tmp
411      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_4d
412      LOGICAL(KIND=C_BOOL) :: mask_4d_tmp
413      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_5d
414      LOGICAL(KIND=C_BOOL) :: mask_5d_tmp
415      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_6d
416      LOGICAL(KIND=C_BOOL) :: mask_6d_tmp
417      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_7d
418      LOGICAL(KIND=C_BOOL) :: mask_7d_tmp
419      LOGICAL, OPTIONAL, INTENT(OUT) :: name
420      LOGICAL(KIND=C_BOOL) :: name_tmp
421
422      CALL xios(is_defined_grid_attr_hdl_)  &
423      ( grid_hdl, comment, description, mask_0d, mask_1d, mask_2d, mask_3d, mask_4d, mask_5d, mask_6d  &
424      , mask_7d, name )
425
426  END SUBROUTINE xios(is_defined_grid_attr_hdl)
427
428  SUBROUTINE xios(is_defined_grid_attr_hdl_)   &
429    ( grid_hdl, comment_, description_, mask_0d_, mask_1d_, mask_2d_, mask_3d_, mask_4d_, mask_5d_  &
430    , mask_6d_, mask_7d_, name_ )
431
432    IMPLICIT NONE
433      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
434      LOGICAL, OPTIONAL, INTENT(OUT) :: comment_
435      LOGICAL(KIND=C_BOOL) :: comment__tmp
436      LOGICAL, OPTIONAL, INTENT(OUT) :: description_
437      LOGICAL(KIND=C_BOOL) :: description__tmp
438      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_0d_
439      LOGICAL(KIND=C_BOOL) :: mask_0d__tmp
440      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_1d_
441      LOGICAL(KIND=C_BOOL) :: mask_1d__tmp
442      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_2d_
443      LOGICAL(KIND=C_BOOL) :: mask_2d__tmp
444      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_3d_
445      LOGICAL(KIND=C_BOOL) :: mask_3d__tmp
446      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_4d_
447      LOGICAL(KIND=C_BOOL) :: mask_4d__tmp
448      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_5d_
449      LOGICAL(KIND=C_BOOL) :: mask_5d__tmp
450      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_6d_
451      LOGICAL(KIND=C_BOOL) :: mask_6d__tmp
452      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_7d_
453      LOGICAL(KIND=C_BOOL) :: mask_7d__tmp
454      LOGICAL, OPTIONAL, INTENT(OUT) :: name_
455      LOGICAL(KIND=C_BOOL) :: name__tmp
456
457      IF (PRESENT(comment_)) THEN
458        comment__tmp = cxios_is_defined_grid_comment &
459      (grid_hdl%daddr)
460        comment_ = comment__tmp
461      ENDIF
462
463      IF (PRESENT(description_)) THEN
464        description__tmp = cxios_is_defined_grid_description &
465      (grid_hdl%daddr)
466        description_ = description__tmp
467      ENDIF
468
469      IF (PRESENT(mask_0d_)) THEN
470        mask_0d__tmp = cxios_is_defined_grid_mask_0d &
471      (grid_hdl%daddr)
472        mask_0d_ = mask_0d__tmp
473      ENDIF
474
475      IF (PRESENT(mask_1d_)) THEN
476        mask_1d__tmp = cxios_is_defined_grid_mask_1d &
477      (grid_hdl%daddr)
478        mask_1d_ = mask_1d__tmp
479      ENDIF
480
481      IF (PRESENT(mask_2d_)) THEN
482        mask_2d__tmp = cxios_is_defined_grid_mask_2d &
483      (grid_hdl%daddr)
484        mask_2d_ = mask_2d__tmp
485      ENDIF
486
487      IF (PRESENT(mask_3d_)) THEN
488        mask_3d__tmp = cxios_is_defined_grid_mask_3d &
489      (grid_hdl%daddr)
490        mask_3d_ = mask_3d__tmp
491      ENDIF
492
493      IF (PRESENT(mask_4d_)) THEN
494        mask_4d__tmp = cxios_is_defined_grid_mask_4d &
495      (grid_hdl%daddr)
496        mask_4d_ = mask_4d__tmp
497      ENDIF
498
499      IF (PRESENT(mask_5d_)) THEN
500        mask_5d__tmp = cxios_is_defined_grid_mask_5d &
501      (grid_hdl%daddr)
502        mask_5d_ = mask_5d__tmp
503      ENDIF
504
505      IF (PRESENT(mask_6d_)) THEN
506        mask_6d__tmp = cxios_is_defined_grid_mask_6d &
507      (grid_hdl%daddr)
508        mask_6d_ = mask_6d__tmp
509      ENDIF
510
511      IF (PRESENT(mask_7d_)) THEN
512        mask_7d__tmp = cxios_is_defined_grid_mask_7d &
513      (grid_hdl%daddr)
514        mask_7d_ = mask_7d__tmp
515      ENDIF
516
517      IF (PRESENT(name_)) THEN
518        name__tmp = cxios_is_defined_grid_name &
519      (grid_hdl%daddr)
520        name_ = name__tmp
521      ENDIF
522
523  END SUBROUTINE xios(is_defined_grid_attr_hdl_)
524
525END MODULE igrid_attr
Note: See TracBrowser for help on using the repository browser.