source: XIOS/trunk/src/interface/fortran_attr/iaxisgroup_attr.F90 @ 369

Last change on this file since 369 was 369, checked in by ymipsl, 12 years ago

Major Update

  • redesign Type and attribute manipulation
  • add enumerate type and attribute
  • use blitz class array instead of boost class array

YM

File size: 9.1 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE iaxisgroup_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE iaxis
9  USE axisgroup_interface_attr
10 
11CONTAINS
12 
13  SUBROUTINE xios(set_axisgroup_attr)  &
14    ( axisgroup_id, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
15    , zoom_size )
16   
17    IMPLICIT NONE
18      TYPE(txios(axisgroup))  :: axisgroup_hdl
19      CHARACTER(LEN=*), INTENT(IN) ::axisgroup_id
20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref
21      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name
22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
23      INTEGER  , OPTIONAL, INTENT(IN) :: size
24      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
25      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit
26      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: value(:)
27      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_begin
28      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_end
29      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_size
30     
31      CALL xios(get_axisgroup_handle)(axisgroup_id,axisgroup_hdl)
32      CALL xios(set_axisgroup_attr_hdl_)   &
33      ( axisgroup_hdl, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
34      , zoom_size )
35   
36  END SUBROUTINE xios(set_axisgroup_attr)
37 
38  SUBROUTINE xios(set_axisgroup_attr_hdl)  &
39    ( axisgroup_hdl, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
40    , zoom_size )
41   
42    IMPLICIT NONE
43      TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl
44      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref
45      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name
46      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
47      INTEGER  , OPTIONAL, INTENT(IN) :: size
48      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
49      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit
50      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: value(:)
51      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_begin
52      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_end
53      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_size
54     
55      CALL xios(set_axisgroup_attr_hdl_)  &
56      ( axisgroup_hdl, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
57      , zoom_size )
58   
59  END SUBROUTINE xios(set_axisgroup_attr_hdl)
60 
61  SUBROUTINE xios(set_axisgroup_attr_hdl_)   &
62    ( axisgroup_hdl, group_ref_, long_name_, name_, size_, standard_name_, unit_, value_, zoom_begin_  &
63    , zoom_end_, zoom_size_ )
64   
65    IMPLICIT NONE
66      TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl
67      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref_
68      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_
69      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
70      INTEGER  , OPTIONAL, INTENT(IN) :: size_
71      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_
72      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_
73      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: value_(:)
74      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_begin_
75      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_end_
76      INTEGER  , OPTIONAL, INTENT(IN) :: zoom_size_
77     
78      IF (PRESENT(group_ref_)) THEN
79        CALL cxios_set_axisgroup_group_ref(axisgroup_hdl%daddr, group_ref_, len(group_ref_))
80      ENDIF
81     
82      IF (PRESENT(long_name_)) THEN
83        CALL cxios_set_axisgroup_long_name(axisgroup_hdl%daddr, long_name_, len(long_name_))
84      ENDIF
85     
86      IF (PRESENT(name_)) THEN
87        CALL cxios_set_axisgroup_name(axisgroup_hdl%daddr, name_, len(name_))
88      ENDIF
89     
90      IF (PRESENT(size_)) THEN
91        CALL cxios_set_axisgroup_size(axisgroup_hdl%daddr, size_)
92      ENDIF
93     
94      IF (PRESENT(standard_name_)) THEN
95        CALL cxios_set_axisgroup_standard_name(axisgroup_hdl%daddr, standard_name_, len(standard_name_))
96      ENDIF
97     
98      IF (PRESENT(unit_)) THEN
99        CALL cxios_set_axisgroup_unit(axisgroup_hdl%daddr, unit_, len(unit_))
100      ENDIF
101     
102      IF (PRESENT(value_)) THEN
103        CALL cxios_set_axisgroup_value(axisgroup_hdl%daddr, value_,size(value_,1))
104      ENDIF
105     
106      IF (PRESENT(zoom_begin_)) THEN
107        CALL cxios_set_axisgroup_zoom_begin(axisgroup_hdl%daddr, zoom_begin_)
108      ENDIF
109     
110      IF (PRESENT(zoom_end_)) THEN
111        CALL cxios_set_axisgroup_zoom_end(axisgroup_hdl%daddr, zoom_end_)
112      ENDIF
113     
114      IF (PRESENT(zoom_size_)) THEN
115        CALL cxios_set_axisgroup_zoom_size(axisgroup_hdl%daddr, zoom_size_)
116      ENDIF
117     
118     
119   
120  END SUBROUTINE xios(set_axisgroup_attr_hdl_)
121 
122  SUBROUTINE xios(get_axisgroup_attr)  &
123    ( axisgroup_id, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
124    , zoom_size )
125   
126    IMPLICIT NONE
127      TYPE(txios(axisgroup))  :: axisgroup_hdl
128      CHARACTER(LEN=*), INTENT(IN) ::axisgroup_id
129      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref
130      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name
131      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
132      INTEGER  , OPTIONAL, INTENT(OUT) :: size
133      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
134      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit
135      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: value(:)
136      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_begin
137      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_end
138      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_size
139     
140      CALL xios(get_axisgroup_handle)(axisgroup_id,axisgroup_hdl)
141      CALL xios(get_axisgroup_attr_hdl_)   &
142      ( axisgroup_hdl, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
143      , zoom_size )
144   
145  END SUBROUTINE xios(get_axisgroup_attr)
146 
147  SUBROUTINE xios(get_axisgroup_attr_hdl)  &
148    ( axisgroup_hdl, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
149    , zoom_size )
150   
151    IMPLICIT NONE
152      TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl
153      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref
154      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name
155      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
156      INTEGER  , OPTIONAL, INTENT(OUT) :: size
157      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
158      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit
159      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: value(:)
160      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_begin
161      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_end
162      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_size
163     
164      CALL xios(get_axisgroup_attr_hdl_)  &
165      ( axisgroup_hdl, group_ref, long_name, name, size, standard_name, unit, value, zoom_begin, zoom_end  &
166      , zoom_size )
167   
168  END SUBROUTINE xios(get_axisgroup_attr_hdl)
169 
170  SUBROUTINE xios(get_axisgroup_attr_hdl_)   &
171    ( axisgroup_hdl, group_ref_, long_name_, name_, size_, standard_name_, unit_, value_, zoom_begin_  &
172    , zoom_end_, zoom_size_ )
173   
174    IMPLICIT NONE
175      TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl
176      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref_
177      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name_
178      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
179      INTEGER  , OPTIONAL, INTENT(OUT) :: size_
180      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_
181      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: unit_
182      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: value_(:)
183      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_begin_
184      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_end_
185      INTEGER  , OPTIONAL, INTENT(OUT) :: zoom_size_
186     
187      IF (PRESENT(group_ref_)) THEN
188        CALL cxios_get_axisgroup_group_ref(axisgroup_hdl%daddr, group_ref_, len(group_ref_))
189      ENDIF
190     
191      IF (PRESENT(long_name_)) THEN
192        CALL cxios_get_axisgroup_long_name(axisgroup_hdl%daddr, long_name_, len(long_name_))
193      ENDIF
194     
195      IF (PRESENT(name_)) THEN
196        CALL cxios_get_axisgroup_name(axisgroup_hdl%daddr, name_, len(name_))
197      ENDIF
198     
199      IF (PRESENT(size_)) THEN
200        CALL cxios_get_axisgroup_size(axisgroup_hdl%daddr, size_)
201      ENDIF
202     
203      IF (PRESENT(standard_name_)) THEN
204        CALL cxios_get_axisgroup_standard_name(axisgroup_hdl%daddr, standard_name_, len(standard_name_))
205      ENDIF
206     
207      IF (PRESENT(unit_)) THEN
208        CALL cxios_get_axisgroup_unit(axisgroup_hdl%daddr, unit_, len(unit_))
209      ENDIF
210     
211      IF (PRESENT(value_)) THEN
212        CALL cxios_get_axisgroup_value(axisgroup_hdl%daddr, value_,size(value_,1))
213      ENDIF
214     
215      IF (PRESENT(zoom_begin_)) THEN
216        CALL cxios_get_axisgroup_zoom_begin(axisgroup_hdl%daddr, zoom_begin_)
217      ENDIF
218     
219      IF (PRESENT(zoom_end_)) THEN
220        CALL cxios_get_axisgroup_zoom_end(axisgroup_hdl%daddr, zoom_end_)
221      ENDIF
222     
223      IF (PRESENT(zoom_size_)) THEN
224        CALL cxios_get_axisgroup_zoom_size(axisgroup_hdl%daddr, zoom_size_)
225      ENDIF
226     
227     
228   
229  END SUBROUTINE xios(get_axisgroup_attr_hdl_)
230 
231END MODULE iaxisgroup_attr
Note: See TracBrowser for help on using the repository browser.