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

Last change on this file since 551 was 546, checked in by rlacroix, 10 years ago

Update the Fortran interface after r540.

  • 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: 7.9 KB
RevLine 
[326]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)  &
[546]14    ( grid_id, axisDomOrder, description, mask, name )
[326]15   
16    IMPLICIT NONE
17      TYPE(txios(grid))  :: grid_hdl
18      CHARACTER(LEN=*), INTENT(IN) ::grid_id
[546]19      INTEGER  , OPTIONAL, INTENT(IN) :: axisDomOrder(:)
[326]20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
[415]21      LOGICAL  , OPTIONAL, INTENT(IN) :: mask(:,:,:)
22      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:,:,:)
[326]23      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
24     
25      CALL xios(get_grid_handle)(grid_id,grid_hdl)
26      CALL xios(set_grid_attr_hdl_)   &
[546]27      ( grid_hdl, axisDomOrder, description, mask, name )
[326]28   
29  END SUBROUTINE xios(set_grid_attr)
30 
31  SUBROUTINE xios(set_grid_attr_hdl)  &
[546]32    ( grid_hdl, axisDomOrder, description, mask, name )
[326]33   
34    IMPLICIT NONE
35      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
[546]36      INTEGER  , OPTIONAL, INTENT(IN) :: axisDomOrder(:)
[326]37      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
[415]38      LOGICAL  , OPTIONAL, INTENT(IN) :: mask(:,:,:)
39      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:,:,:)
[326]40      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
41     
42      CALL xios(set_grid_attr_hdl_)  &
[546]43      ( grid_hdl, axisDomOrder, description, mask, name )
[326]44   
45  END SUBROUTINE xios(set_grid_attr_hdl)
46 
47  SUBROUTINE xios(set_grid_attr_hdl_)   &
[546]48    ( grid_hdl, axisDomOrder_, description_, mask_, name_ )
[326]49   
50    IMPLICIT NONE
51      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
[546]52      INTEGER  , OPTIONAL, INTENT(IN) :: axisDomOrder_(:)
[326]53      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_
[415]54      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_(:,:,:)
55      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask__tmp(:,:,:)
[326]56      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
57     
[546]58      IF (PRESENT(axisDomOrder_)) THEN
59        CALL cxios_set_grid_axisDomOrder(grid_hdl%daddr, axisDomOrder_,size(axisDomOrder_,1))
[326]60      ENDIF
61     
62      IF (PRESENT(description_)) THEN
63        CALL cxios_set_grid_description(grid_hdl%daddr, description_, len(description_))
64      ENDIF
65     
[415]66      IF (PRESENT(mask_)) THEN
67        ALLOCATE(mask__tmp(size(mask_,1),size(mask_,2),size(mask_,3)))
68        mask__tmp=mask_
69        CALL cxios_set_grid_mask(grid_hdl%daddr, mask__tmp,size(mask_,1),size(mask_,2),size(mask_,3))
70      ENDIF
71     
[326]72      IF (PRESENT(name_)) THEN
73        CALL cxios_set_grid_name(grid_hdl%daddr, name_, len(name_))
74      ENDIF
75     
76     
77   
78  END SUBROUTINE xios(set_grid_attr_hdl_)
79 
80  SUBROUTINE xios(get_grid_attr)  &
[546]81    ( grid_id, axisDomOrder, description, mask, name )
[326]82   
83    IMPLICIT NONE
84      TYPE(txios(grid))  :: grid_hdl
85      CHARACTER(LEN=*), INTENT(IN) ::grid_id
[546]86      INTEGER  , OPTIONAL, INTENT(OUT) :: axisDomOrder(:)
[326]87      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
[415]88      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask(:,:,:)
89      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:,:,:)
[326]90      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
91     
92      CALL xios(get_grid_handle)(grid_id,grid_hdl)
93      CALL xios(get_grid_attr_hdl_)   &
[546]94      ( grid_hdl, axisDomOrder, description, mask, name )
[326]95   
96  END SUBROUTINE xios(get_grid_attr)
97 
98  SUBROUTINE xios(get_grid_attr_hdl)  &
[546]99    ( grid_hdl, axisDomOrder, description, mask, name )
[326]100   
101    IMPLICIT NONE
102      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
[546]103      INTEGER  , OPTIONAL, INTENT(OUT) :: axisDomOrder(:)
[326]104      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
[415]105      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask(:,:,:)
106      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:,:,:)
[326]107      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
108     
109      CALL xios(get_grid_attr_hdl_)  &
[546]110      ( grid_hdl, axisDomOrder, description, mask, name )
[326]111   
112  END SUBROUTINE xios(get_grid_attr_hdl)
113 
114  SUBROUTINE xios(get_grid_attr_hdl_)   &
[546]115    ( grid_hdl, axisDomOrder_, description_, mask_, name_ )
[326]116   
117    IMPLICIT NONE
118      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
[546]119      INTEGER  , OPTIONAL, INTENT(OUT) :: axisDomOrder_(:)
[326]120      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_
[415]121      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_(:,:,:)
122      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask__tmp(:,:,:)
[326]123      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
124     
[546]125      IF (PRESENT(axisDomOrder_)) THEN
126        CALL cxios_get_grid_axisDomOrder(grid_hdl%daddr, axisDomOrder_,size(axisDomOrder_,1))
[326]127      ENDIF
128     
129      IF (PRESENT(description_)) THEN
130        CALL cxios_get_grid_description(grid_hdl%daddr, description_, len(description_))
131      ENDIF
132     
[415]133      IF (PRESENT(mask_)) THEN
134        ALLOCATE(mask__tmp(size(mask_,1),size(mask_,2),size(mask_,3)))
135        CALL cxios_get_grid_mask(grid_hdl%daddr, mask__tmp,size(mask_,1),size(mask_,2),size(mask_,3))
136        mask_=mask__tmp
137      ENDIF
138     
[326]139      IF (PRESENT(name_)) THEN
140        CALL cxios_get_grid_name(grid_hdl%daddr, name_, len(name_))
141      ENDIF
142     
143     
144   
145  END SUBROUTINE xios(get_grid_attr_hdl_)
146 
[432]147  SUBROUTINE xios(is_defined_grid_attr)  &
[546]148    ( grid_id, axisDomOrder, description, mask, name )
[432]149   
150    IMPLICIT NONE
151      TYPE(txios(grid))  :: grid_hdl
152      CHARACTER(LEN=*), INTENT(IN) ::grid_id
[546]153      LOGICAL, OPTIONAL, INTENT(OUT) :: axisDomOrder
154      LOGICAL(KIND=C_BOOL) :: axisDomOrder_tmp
[432]155      LOGICAL, OPTIONAL, INTENT(OUT) :: description
156      LOGICAL(KIND=C_BOOL) :: description_tmp
157      LOGICAL, OPTIONAL, INTENT(OUT) :: mask
158      LOGICAL(KIND=C_BOOL) :: mask_tmp
159      LOGICAL, OPTIONAL, INTENT(OUT) :: name
160      LOGICAL(KIND=C_BOOL) :: name_tmp
161     
162      CALL xios(get_grid_handle)(grid_id,grid_hdl)
163      CALL xios(is_defined_grid_attr_hdl_)   &
[546]164      ( grid_hdl, axisDomOrder, description, mask, name )
[432]165   
166  END SUBROUTINE xios(is_defined_grid_attr)
167 
168  SUBROUTINE xios(is_defined_grid_attr_hdl)  &
[546]169    ( grid_hdl, axisDomOrder, description, mask, name )
[432]170   
171    IMPLICIT NONE
172      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
[546]173      LOGICAL, OPTIONAL, INTENT(OUT) :: axisDomOrder
174      LOGICAL(KIND=C_BOOL) :: axisDomOrder_tmp
[432]175      LOGICAL, OPTIONAL, INTENT(OUT) :: description
176      LOGICAL(KIND=C_BOOL) :: description_tmp
177      LOGICAL, OPTIONAL, INTENT(OUT) :: mask
178      LOGICAL(KIND=C_BOOL) :: mask_tmp
179      LOGICAL, OPTIONAL, INTENT(OUT) :: name
180      LOGICAL(KIND=C_BOOL) :: name_tmp
181     
182      CALL xios(is_defined_grid_attr_hdl_)  &
[546]183      ( grid_hdl, axisDomOrder, description, mask, name )
[432]184   
185  END SUBROUTINE xios(is_defined_grid_attr_hdl)
186 
187  SUBROUTINE xios(is_defined_grid_attr_hdl_)   &
[546]188    ( grid_hdl, axisDomOrder_, description_, mask_, name_ )
[432]189   
190    IMPLICIT NONE
191      TYPE(txios(grid)) , INTENT(IN) :: grid_hdl
[546]192      LOGICAL, OPTIONAL, INTENT(OUT) :: axisDomOrder_
193      LOGICAL(KIND=C_BOOL) :: axisDomOrder__tmp
[432]194      LOGICAL, OPTIONAL, INTENT(OUT) :: description_
195      LOGICAL(KIND=C_BOOL) :: description__tmp
196      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_
197      LOGICAL(KIND=C_BOOL) :: mask__tmp
198      LOGICAL, OPTIONAL, INTENT(OUT) :: name_
199      LOGICAL(KIND=C_BOOL) :: name__tmp
200     
[546]201      IF (PRESENT(axisDomOrder_)) THEN
202        axisDomOrder__tmp=cxios_is_defined_grid_axisDomOrder(grid_hdl%daddr)
203        axisDomOrder_=axisDomOrder__tmp
[432]204      ENDIF
205     
206      IF (PRESENT(description_)) THEN
207        description__tmp=cxios_is_defined_grid_description(grid_hdl%daddr)
208        description_=description__tmp
209      ENDIF
210     
211      IF (PRESENT(mask_)) THEN
212        mask__tmp=cxios_is_defined_grid_mask(grid_hdl%daddr)
213        mask_=mask__tmp
214      ENDIF
215     
216      IF (PRESENT(name_)) THEN
217        name__tmp=cxios_is_defined_grid_name(grid_hdl%daddr)
218        name_=name__tmp
219      ENDIF
220     
221     
222   
223  END SUBROUTINE xios(is_defined_grid_attr_hdl_)
224 
[326]225END MODULE igrid_attr
Note: See TracBrowser for help on using the repository browser.