source: XIOS3/trunk/src/interface/fortran_attr/iinterpolate_axis_attr.F90 @ 2620

Last change on this file since 2620 was 2620, checked in by jderouillat, 4 months ago

Modify fortran-C interfaces to manage logical-bool conversion, the optimizations of OneAPI could produce bugs regarding the logical-bool encodings.

File size: 11.9 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE iinterpolate_axis_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE iinterpolate_axis
9  USE interpolate_axis_interface_attr
10  USE LOGICAL_BOOL_CONVERSION
11
12CONTAINS
13
14  SUBROUTINE xios(set_interpolate_axis_attr)  &
15    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
16     )
17
18    IMPLICIT NONE
19      TYPE(txios(interpolate_axis))  :: interpolate_axis_hdl
20      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id
21      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate
22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_dst
23      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_src
24      LOGICAL  , OPTIONAL, INTENT(IN) :: extrapolate
25      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp
26      INTEGER  , OPTIONAL, INTENT(IN) :: order
27      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
28
29      CALL xios(get_interpolate_axis_handle) &
30      (interpolate_axis_id,interpolate_axis_hdl)
31      CALL xios(set_interpolate_axis_attr_hdl_)   &
32      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
33       )
34
35  END SUBROUTINE xios(set_interpolate_axis_attr)
36
37  SUBROUTINE xios(set_interpolate_axis_attr_hdl)  &
38    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
39     )
40
41    IMPLICIT NONE
42      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
43      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate
44      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_dst
45      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_src
46      LOGICAL  , OPTIONAL, INTENT(IN) :: extrapolate
47      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp
48      INTEGER  , OPTIONAL, INTENT(IN) :: order
49      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
50
51      CALL xios(set_interpolate_axis_attr_hdl_)  &
52      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
53       )
54
55  END SUBROUTINE xios(set_interpolate_axis_attr_hdl)
56
57  SUBROUTINE xios(set_interpolate_axis_attr_hdl_)   &
58    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  &
59    , type_ )
60
61    IMPLICIT NONE
62      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
63      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_
64      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_dst_
65      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_src_
66      LOGICAL  , OPTIONAL, INTENT(IN) :: extrapolate_
67      LOGICAL (KIND=C_BOOL) :: extrapolate__tmp
68      INTEGER  , OPTIONAL, INTENT(IN) :: order_
69      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
70
71      IF (PRESENT(coordinate_)) THEN
72        CALL cxios_set_interpolate_axis_coordinate &
73      (interpolate_axis_hdl%daddr, coordinate_, len(coordinate_))
74      ENDIF
75
76      IF (PRESENT(coordinate_dst_)) THEN
77        CALL cxios_set_interpolate_axis_coordinate_dst &
78      (interpolate_axis_hdl%daddr, coordinate_dst_, len(coordinate_dst_))
79      ENDIF
80
81      IF (PRESENT(coordinate_src_)) THEN
82        CALL cxios_set_interpolate_axis_coordinate_src &
83      (interpolate_axis_hdl%daddr, coordinate_src_, len(coordinate_src_))
84      ENDIF
85
86      IF (PRESENT(extrapolate_)) THEN
87        extrapolate__tmp = extrapolate_
88        CALL xios_logical_to_bool_0d(extrapolate__tmp)
89        CALL cxios_set_interpolate_axis_extrapolate &
90      (interpolate_axis_hdl%daddr, extrapolate__tmp)
91      ENDIF
92
93      IF (PRESENT(order_)) THEN
94        CALL cxios_set_interpolate_axis_order &
95      (interpolate_axis_hdl%daddr, order_)
96      ENDIF
97
98      IF (PRESENT(type_)) THEN
99        CALL cxios_set_interpolate_axis_type &
100      (interpolate_axis_hdl%daddr, type_, len(type_))
101      ENDIF
102
103  END SUBROUTINE xios(set_interpolate_axis_attr_hdl_)
104
105  SUBROUTINE xios(get_interpolate_axis_attr)  &
106    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
107     )
108
109    IMPLICIT NONE
110      TYPE(txios(interpolate_axis))  :: interpolate_axis_hdl
111      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id
112      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate
113      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_dst
114      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_src
115      LOGICAL  , OPTIONAL, INTENT(OUT) :: extrapolate
116      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp
117      INTEGER  , OPTIONAL, INTENT(OUT) :: order
118      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
119
120      CALL xios(get_interpolate_axis_handle) &
121      (interpolate_axis_id,interpolate_axis_hdl)
122      CALL xios(get_interpolate_axis_attr_hdl_)   &
123      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
124       )
125
126  END SUBROUTINE xios(get_interpolate_axis_attr)
127
128  SUBROUTINE xios(get_interpolate_axis_attr_hdl)  &
129    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
130     )
131
132    IMPLICIT NONE
133      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
134      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate
135      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_dst
136      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_src
137      LOGICAL  , OPTIONAL, INTENT(OUT) :: extrapolate
138      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp
139      INTEGER  , OPTIONAL, INTENT(OUT) :: order
140      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
141
142      CALL xios(get_interpolate_axis_attr_hdl_)  &
143      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
144       )
145
146  END SUBROUTINE xios(get_interpolate_axis_attr_hdl)
147
148  SUBROUTINE xios(get_interpolate_axis_attr_hdl_)   &
149    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  &
150    , type_ )
151
152    IMPLICIT NONE
153      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
154      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_
155      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_dst_
156      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_src_
157      LOGICAL  , OPTIONAL, INTENT(OUT) :: extrapolate_
158      LOGICAL (KIND=C_BOOL) :: extrapolate__tmp
159      INTEGER  , OPTIONAL, INTENT(OUT) :: order_
160      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
161
162      IF (PRESENT(coordinate_)) THEN
163        CALL cxios_get_interpolate_axis_coordinate &
164      (interpolate_axis_hdl%daddr, coordinate_, len(coordinate_))
165      ENDIF
166
167      IF (PRESENT(coordinate_dst_)) THEN
168        CALL cxios_get_interpolate_axis_coordinate_dst &
169      (interpolate_axis_hdl%daddr, coordinate_dst_, len(coordinate_dst_))
170      ENDIF
171
172      IF (PRESENT(coordinate_src_)) THEN
173        CALL cxios_get_interpolate_axis_coordinate_src &
174      (interpolate_axis_hdl%daddr, coordinate_src_, len(coordinate_src_))
175      ENDIF
176
177      IF (PRESENT(extrapolate_)) THEN
178        CALL cxios_get_interpolate_axis_extrapolate &
179      (interpolate_axis_hdl%daddr, extrapolate__tmp)
180        CALL xios_bool_to_logical_0d(extrapolate__tmp)
181        extrapolate_ = extrapolate__tmp
182      ENDIF
183
184      IF (PRESENT(order_)) THEN
185        CALL cxios_get_interpolate_axis_order &
186      (interpolate_axis_hdl%daddr, order_)
187      ENDIF
188
189      IF (PRESENT(type_)) THEN
190        CALL cxios_get_interpolate_axis_type &
191      (interpolate_axis_hdl%daddr, type_, len(type_))
192      ENDIF
193
194  END SUBROUTINE xios(get_interpolate_axis_attr_hdl_)
195
196  SUBROUTINE xios(is_defined_interpolate_axis_attr)  &
197    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
198     )
199
200    IMPLICIT NONE
201      TYPE(txios(interpolate_axis))  :: interpolate_axis_hdl
202      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id
203      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate
204      LOGICAL(KIND=C_BOOL) :: coordinate_tmp
205      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_dst
206      LOGICAL(KIND=C_BOOL) :: coordinate_dst_tmp
207      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_src
208      LOGICAL(KIND=C_BOOL) :: coordinate_src_tmp
209      LOGICAL, OPTIONAL, INTENT(OUT) :: extrapolate
210      LOGICAL(KIND=C_BOOL) :: extrapolate_tmp
211      LOGICAL, OPTIONAL, INTENT(OUT) :: order
212      LOGICAL(KIND=C_BOOL) :: order_tmp
213      LOGICAL, OPTIONAL, INTENT(OUT) :: type
214      LOGICAL(KIND=C_BOOL) :: type_tmp
215
216      CALL xios(get_interpolate_axis_handle) &
217      (interpolate_axis_id,interpolate_axis_hdl)
218      CALL xios(is_defined_interpolate_axis_attr_hdl_)   &
219      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
220       )
221
222  END SUBROUTINE xios(is_defined_interpolate_axis_attr)
223
224  SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl)  &
225    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
226     )
227
228    IMPLICIT NONE
229      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
230      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate
231      LOGICAL(KIND=C_BOOL) :: coordinate_tmp
232      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_dst
233      LOGICAL(KIND=C_BOOL) :: coordinate_dst_tmp
234      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_src
235      LOGICAL(KIND=C_BOOL) :: coordinate_src_tmp
236      LOGICAL, OPTIONAL, INTENT(OUT) :: extrapolate
237      LOGICAL(KIND=C_BOOL) :: extrapolate_tmp
238      LOGICAL, OPTIONAL, INTENT(OUT) :: order
239      LOGICAL(KIND=C_BOOL) :: order_tmp
240      LOGICAL, OPTIONAL, INTENT(OUT) :: type
241      LOGICAL(KIND=C_BOOL) :: type_tmp
242
243      CALL xios(is_defined_interpolate_axis_attr_hdl_)  &
244      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
245       )
246
247  END SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl)
248
249  SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl_)   &
250    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  &
251    , type_ )
252
253    IMPLICIT NONE
254      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
255      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_
256      LOGICAL(KIND=C_BOOL) :: coordinate__tmp
257      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_dst_
258      LOGICAL(KIND=C_BOOL) :: coordinate_dst__tmp
259      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_src_
260      LOGICAL(KIND=C_BOOL) :: coordinate_src__tmp
261      LOGICAL, OPTIONAL, INTENT(OUT) :: extrapolate_
262      LOGICAL(KIND=C_BOOL) :: extrapolate__tmp
263      LOGICAL, OPTIONAL, INTENT(OUT) :: order_
264      LOGICAL(KIND=C_BOOL) :: order__tmp
265      LOGICAL, OPTIONAL, INTENT(OUT) :: type_
266      LOGICAL(KIND=C_BOOL) :: type__tmp
267
268      IF (PRESENT(coordinate_)) THEN
269        coordinate__tmp = cxios_is_defined_interpolate_axis_coordinate &
270      (interpolate_axis_hdl%daddr)
271        coordinate_ = coordinate__tmp
272      ENDIF
273
274      IF (PRESENT(coordinate_dst_)) THEN
275        coordinate_dst__tmp = cxios_is_defined_interpolate_axis_coordinate_dst &
276      (interpolate_axis_hdl%daddr)
277        coordinate_dst_ = coordinate_dst__tmp
278      ENDIF
279
280      IF (PRESENT(coordinate_src_)) THEN
281        coordinate_src__tmp = cxios_is_defined_interpolate_axis_coordinate_src &
282      (interpolate_axis_hdl%daddr)
283        coordinate_src_ = coordinate_src__tmp
284      ENDIF
285
286      IF (PRESENT(extrapolate_)) THEN
287        extrapolate__tmp = cxios_is_defined_interpolate_axis_extrapolate &
288      (interpolate_axis_hdl%daddr)
289        extrapolate_ = extrapolate__tmp
290      ENDIF
291
292      IF (PRESENT(order_)) THEN
293        order__tmp = cxios_is_defined_interpolate_axis_order &
294      (interpolate_axis_hdl%daddr)
295        order_ = order__tmp
296      ENDIF
297
298      IF (PRESENT(type_)) THEN
299        type__tmp = cxios_is_defined_interpolate_axis_type &
300      (interpolate_axis_hdl%daddr)
301        type_ = type__tmp
302      ENDIF
303
304  END SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl_)
305
306END MODULE iinterpolate_axis_attr
Note: See TracBrowser for help on using the repository browser.