source: XIOS/trunk/src/interface/fortran_attr/igridgroup_attr.F90 @ 891

Last change on this file since 891 was 817, checked in by mhnguyen, 8 years ago

Adding some attributes for axis and grid (ticket 71, 78)

+) Add index attribute for axis
+) Change mask?d to mask_?d for grid

Test
+) On Curie
+) Test passes

  • 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: 11.6 KB
RevLine 
[326]1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE igridgroup_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE igrid
9  USE gridgroup_interface_attr
[581]10
[326]11CONTAINS
[581]12
[326]13  SUBROUTINE xios(set_gridgroup_attr)  &
[817]14    ( gridgroup_id, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]15
[326]16    IMPLICIT NONE
17      TYPE(txios(gridgroup))  :: gridgroup_hdl
18      CHARACTER(LEN=*), INTENT(IN) ::gridgroup_id
19      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref
[817]21      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_1d(:)
22      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
23      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_2d(:,:)
24      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
25      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_3d(:,:,:)
26      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
[326]27      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
[581]28
[326]29      CALL xios(get_gridgroup_handle)(gridgroup_id,gridgroup_hdl)
30      CALL xios(set_gridgroup_attr_hdl_)   &
[817]31      ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]32
[326]33  END SUBROUTINE xios(set_gridgroup_attr)
[581]34
[326]35  SUBROUTINE xios(set_gridgroup_attr_hdl)  &
[817]36    ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]37
[326]38    IMPLICIT NONE
39      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl
40      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
41      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref
[817]42      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_1d(:)
43      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
44      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_2d(:,:)
45      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
46      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_3d(:,:,:)
47      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
[326]48      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
[581]49
[326]50      CALL xios(set_gridgroup_attr_hdl_)  &
[817]51      ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]52
[326]53  END SUBROUTINE xios(set_gridgroup_attr_hdl)
[581]54
[326]55  SUBROUTINE xios(set_gridgroup_attr_hdl_)   &
[817]56    ( gridgroup_hdl, description_, group_ref_, mask_1d_, mask_2d_, mask_3d_, name_ )
[581]57
[326]58    IMPLICIT NONE
59      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl
60      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_
61      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref_
[817]62      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_1d_(:)
63      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d__tmp(:)
64      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_2d_(:,:)
65      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d__tmp(:,:)
66      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_3d_(:,:,:)
67      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d__tmp(:,:,:)
[326]68      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
[581]69
[326]70      IF (PRESENT(description_)) THEN
71        CALL cxios_set_gridgroup_description(gridgroup_hdl%daddr, description_, len(description_))
72      ENDIF
[581]73
[326]74      IF (PRESENT(group_ref_)) THEN
75        CALL cxios_set_gridgroup_group_ref(gridgroup_hdl%daddr, group_ref_, len(group_ref_))
76      ENDIF
[581]77
[817]78      IF (PRESENT(mask_1d_)) THEN
79        ALLOCATE(mask_1d__tmp(SIZE(mask_1d_,1)))
80        mask_1d__tmp = mask_1d_
81        CALL cxios_set_gridgroup_mask_1d(gridgroup_hdl%daddr, mask_1d__tmp, SHAPE(mask_1d_))
[415]82      ENDIF
[581]83
[817]84      IF (PRESENT(mask_2d_)) THEN
85        ALLOCATE(mask_2d__tmp(SIZE(mask_2d_,1), SIZE(mask_2d_,2)))
86        mask_2d__tmp = mask_2d_
87        CALL cxios_set_gridgroup_mask_2d(gridgroup_hdl%daddr, mask_2d__tmp, SHAPE(mask_2d_))
[567]88      ENDIF
[581]89
[817]90      IF (PRESENT(mask_3d_)) THEN
91        ALLOCATE(mask_3d__tmp(SIZE(mask_3d_,1), SIZE(mask_3d_,2), SIZE(mask_3d_,3)))
92        mask_3d__tmp = mask_3d_
93        CALL cxios_set_gridgroup_mask_3d(gridgroup_hdl%daddr, mask_3d__tmp, SHAPE(mask_3d_))
[567]94      ENDIF
[581]95
[326]96      IF (PRESENT(name_)) THEN
97        CALL cxios_set_gridgroup_name(gridgroup_hdl%daddr, name_, len(name_))
98      ENDIF
[581]99
[326]100  END SUBROUTINE xios(set_gridgroup_attr_hdl_)
[581]101
[326]102  SUBROUTINE xios(get_gridgroup_attr)  &
[817]103    ( gridgroup_id, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]104
[326]105    IMPLICIT NONE
106      TYPE(txios(gridgroup))  :: gridgroup_hdl
107      CHARACTER(LEN=*), INTENT(IN) ::gridgroup_id
108      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
109      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref
[817]110      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_1d(:)
111      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
112      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_2d(:,:)
113      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
114      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_3d(:,:,:)
115      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
[326]116      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
[581]117
[326]118      CALL xios(get_gridgroup_handle)(gridgroup_id,gridgroup_hdl)
119      CALL xios(get_gridgroup_attr_hdl_)   &
[817]120      ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]121
[326]122  END SUBROUTINE xios(get_gridgroup_attr)
[581]123
[326]124  SUBROUTINE xios(get_gridgroup_attr_hdl)  &
[817]125    ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]126
[326]127    IMPLICIT NONE
128      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl
129      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
130      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref
[817]131      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_1d(:)
132      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d_tmp(:)
133      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_2d(:,:)
134      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d_tmp(:,:)
135      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_3d(:,:,:)
136      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d_tmp(:,:,:)
[326]137      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
[581]138
[326]139      CALL xios(get_gridgroup_attr_hdl_)  &
[817]140      ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]141
[326]142  END SUBROUTINE xios(get_gridgroup_attr_hdl)
[581]143
[326]144  SUBROUTINE xios(get_gridgroup_attr_hdl_)   &
[817]145    ( gridgroup_hdl, description_, group_ref_, mask_1d_, mask_2d_, mask_3d_, name_ )
[581]146
[326]147    IMPLICIT NONE
148      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl
149      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_
150      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref_
[817]151      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_1d_(:)
152      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_1d__tmp(:)
153      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_2d_(:,:)
154      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_2d__tmp(:,:)
155      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_3d_(:,:,:)
156      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_3d__tmp(:,:,:)
[326]157      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
[581]158
[326]159      IF (PRESENT(description_)) THEN
160        CALL cxios_get_gridgroup_description(gridgroup_hdl%daddr, description_, len(description_))
161      ENDIF
[581]162
[326]163      IF (PRESENT(group_ref_)) THEN
164        CALL cxios_get_gridgroup_group_ref(gridgroup_hdl%daddr, group_ref_, len(group_ref_))
165      ENDIF
[581]166
[817]167      IF (PRESENT(mask_1d_)) THEN
168        ALLOCATE(mask_1d__tmp(SIZE(mask_1d_,1)))
169        CALL cxios_get_gridgroup_mask_1d(gridgroup_hdl%daddr, mask_1d__tmp, SHAPE(mask_1d_))
170        mask_1d_ = mask_1d__tmp
[415]171      ENDIF
[581]172
[817]173      IF (PRESENT(mask_2d_)) THEN
174        ALLOCATE(mask_2d__tmp(SIZE(mask_2d_,1), SIZE(mask_2d_,2)))
175        CALL cxios_get_gridgroup_mask_2d(gridgroup_hdl%daddr, mask_2d__tmp, SHAPE(mask_2d_))
176        mask_2d_ = mask_2d__tmp
[567]177      ENDIF
[581]178
[817]179      IF (PRESENT(mask_3d_)) THEN
180        ALLOCATE(mask_3d__tmp(SIZE(mask_3d_,1), SIZE(mask_3d_,2), SIZE(mask_3d_,3)))
181        CALL cxios_get_gridgroup_mask_3d(gridgroup_hdl%daddr, mask_3d__tmp, SHAPE(mask_3d_))
182        mask_3d_ = mask_3d__tmp
[567]183      ENDIF
[581]184
[326]185      IF (PRESENT(name_)) THEN
186        CALL cxios_get_gridgroup_name(gridgroup_hdl%daddr, name_, len(name_))
187      ENDIF
[581]188
[326]189  END SUBROUTINE xios(get_gridgroup_attr_hdl_)
[581]190
[432]191  SUBROUTINE xios(is_defined_gridgroup_attr)  &
[817]192    ( gridgroup_id, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]193
[432]194    IMPLICIT NONE
195      TYPE(txios(gridgroup))  :: gridgroup_hdl
196      CHARACTER(LEN=*), INTENT(IN) ::gridgroup_id
197      LOGICAL, OPTIONAL, INTENT(OUT) :: description
198      LOGICAL(KIND=C_BOOL) :: description_tmp
199      LOGICAL, OPTIONAL, INTENT(OUT) :: group_ref
200      LOGICAL(KIND=C_BOOL) :: group_ref_tmp
[817]201      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_1d
202      LOGICAL(KIND=C_BOOL) :: mask_1d_tmp
203      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_2d
204      LOGICAL(KIND=C_BOOL) :: mask_2d_tmp
205      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_3d
206      LOGICAL(KIND=C_BOOL) :: mask_3d_tmp
[432]207      LOGICAL, OPTIONAL, INTENT(OUT) :: name
208      LOGICAL(KIND=C_BOOL) :: name_tmp
[581]209
[432]210      CALL xios(get_gridgroup_handle)(gridgroup_id,gridgroup_hdl)
211      CALL xios(is_defined_gridgroup_attr_hdl_)   &
[817]212      ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]213
[432]214  END SUBROUTINE xios(is_defined_gridgroup_attr)
[581]215
[432]216  SUBROUTINE xios(is_defined_gridgroup_attr_hdl)  &
[817]217    ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]218
[432]219    IMPLICIT NONE
220      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl
221      LOGICAL, OPTIONAL, INTENT(OUT) :: description
222      LOGICAL(KIND=C_BOOL) :: description_tmp
223      LOGICAL, OPTIONAL, INTENT(OUT) :: group_ref
224      LOGICAL(KIND=C_BOOL) :: group_ref_tmp
[817]225      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_1d
226      LOGICAL(KIND=C_BOOL) :: mask_1d_tmp
227      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_2d
228      LOGICAL(KIND=C_BOOL) :: mask_2d_tmp
229      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_3d
230      LOGICAL(KIND=C_BOOL) :: mask_3d_tmp
[432]231      LOGICAL, OPTIONAL, INTENT(OUT) :: name
232      LOGICAL(KIND=C_BOOL) :: name_tmp
[581]233
[432]234      CALL xios(is_defined_gridgroup_attr_hdl_)  &
[817]235      ( gridgroup_hdl, description, group_ref, mask_1d, mask_2d, mask_3d, name )
[581]236
[432]237  END SUBROUTINE xios(is_defined_gridgroup_attr_hdl)
[581]238
[432]239  SUBROUTINE xios(is_defined_gridgroup_attr_hdl_)   &
[817]240    ( gridgroup_hdl, description_, group_ref_, mask_1d_, mask_2d_, mask_3d_, name_ )
[581]241
[432]242    IMPLICIT NONE
243      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl
244      LOGICAL, OPTIONAL, INTENT(OUT) :: description_
245      LOGICAL(KIND=C_BOOL) :: description__tmp
246      LOGICAL, OPTIONAL, INTENT(OUT) :: group_ref_
247      LOGICAL(KIND=C_BOOL) :: group_ref__tmp
[817]248      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_1d_
249      LOGICAL(KIND=C_BOOL) :: mask_1d__tmp
250      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_2d_
251      LOGICAL(KIND=C_BOOL) :: mask_2d__tmp
252      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_3d_
253      LOGICAL(KIND=C_BOOL) :: mask_3d__tmp
[432]254      LOGICAL, OPTIONAL, INTENT(OUT) :: name_
255      LOGICAL(KIND=C_BOOL) :: name__tmp
[581]256
[432]257      IF (PRESENT(description_)) THEN
[581]258        description__tmp = cxios_is_defined_gridgroup_description(gridgroup_hdl%daddr)
259        description_ = description__tmp
[432]260      ENDIF
[581]261
[432]262      IF (PRESENT(group_ref_)) THEN
[581]263        group_ref__tmp = cxios_is_defined_gridgroup_group_ref(gridgroup_hdl%daddr)
264        group_ref_ = group_ref__tmp
[432]265      ENDIF
[581]266
[817]267      IF (PRESENT(mask_1d_)) THEN
268        mask_1d__tmp = cxios_is_defined_gridgroup_mask_1d(gridgroup_hdl%daddr)
269        mask_1d_ = mask_1d__tmp
[432]270      ENDIF
[581]271
[817]272      IF (PRESENT(mask_2d_)) THEN
273        mask_2d__tmp = cxios_is_defined_gridgroup_mask_2d(gridgroup_hdl%daddr)
274        mask_2d_ = mask_2d__tmp
[567]275      ENDIF
[581]276
[817]277      IF (PRESENT(mask_3d_)) THEN
278        mask_3d__tmp = cxios_is_defined_gridgroup_mask_3d(gridgroup_hdl%daddr)
279        mask_3d_ = mask_3d__tmp
[567]280      ENDIF
[581]281
[432]282      IF (PRESENT(name_)) THEN
[581]283        name__tmp = cxios_is_defined_gridgroup_name(gridgroup_hdl%daddr)
284        name_ = name__tmp
[432]285      ENDIF
[581]286
[432]287  END SUBROUTINE xios(is_defined_gridgroup_attr_hdl_)
[581]288
[326]289END MODULE igridgroup_attr
Note: See TracBrowser for help on using the repository browser.