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
RevLine 
[786]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
[2620]10  USE LOGICAL_BOOL_CONVERSION
[786]11
12CONTAINS
13
14  SUBROUTINE xios(set_interpolate_axis_attr)  &
[2338]15    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
16     )
[786]17
18    IMPLICIT NONE
19      TYPE(txios(interpolate_axis))  :: interpolate_axis_hdl
20      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id
[891]21      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate
[2338]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
[786]26      INTEGER  , OPTIONAL, INTENT(IN) :: order
27      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
28
[966]29      CALL xios(get_interpolate_axis_handle) &
30      (interpolate_axis_id,interpolate_axis_hdl)
[786]31      CALL xios(set_interpolate_axis_attr_hdl_)   &
[2338]32      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
33       )
[786]34
35  END SUBROUTINE xios(set_interpolate_axis_attr)
36
37  SUBROUTINE xios(set_interpolate_axis_attr_hdl)  &
[2338]38    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
39     )
[786]40
41    IMPLICIT NONE
42      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
[891]43      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate
[2338]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
[786]48      INTEGER  , OPTIONAL, INTENT(IN) :: order
49      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
50
51      CALL xios(set_interpolate_axis_attr_hdl_)  &
[2338]52      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
53       )
[786]54
55  END SUBROUTINE xios(set_interpolate_axis_attr_hdl)
56
57  SUBROUTINE xios(set_interpolate_axis_attr_hdl_)   &
[2338]58    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  &
59    , type_ )
[786]60
61    IMPLICIT NONE
62      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
[891]63      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_
[2338]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
[786]68      INTEGER  , OPTIONAL, INTENT(IN) :: order_
69      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
70
[891]71      IF (PRESENT(coordinate_)) THEN
[966]72        CALL cxios_set_interpolate_axis_coordinate &
73      (interpolate_axis_hdl%daddr, coordinate_, len(coordinate_))
[891]74      ENDIF
75
[2338]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_
[2620]88        CALL xios_logical_to_bool_0d(extrapolate__tmp)
[2338]89        CALL cxios_set_interpolate_axis_extrapolate &
90      (interpolate_axis_hdl%daddr, extrapolate__tmp)
91      ENDIF
92
[786]93      IF (PRESENT(order_)) THEN
[966]94        CALL cxios_set_interpolate_axis_order &
95      (interpolate_axis_hdl%daddr, order_)
[786]96      ENDIF
97
98      IF (PRESENT(type_)) THEN
[966]99        CALL cxios_set_interpolate_axis_type &
100      (interpolate_axis_hdl%daddr, type_, len(type_))
[786]101      ENDIF
102
103  END SUBROUTINE xios(set_interpolate_axis_attr_hdl_)
104
105  SUBROUTINE xios(get_interpolate_axis_attr)  &
[2338]106    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
107     )
[786]108
109    IMPLICIT NONE
110      TYPE(txios(interpolate_axis))  :: interpolate_axis_hdl
111      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id
[891]112      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate
[2338]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
[786]117      INTEGER  , OPTIONAL, INTENT(OUT) :: order
118      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
119
[966]120      CALL xios(get_interpolate_axis_handle) &
121      (interpolate_axis_id,interpolate_axis_hdl)
[786]122      CALL xios(get_interpolate_axis_attr_hdl_)   &
[2338]123      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
124       )
[786]125
126  END SUBROUTINE xios(get_interpolate_axis_attr)
127
128  SUBROUTINE xios(get_interpolate_axis_attr_hdl)  &
[2338]129    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
130     )
[786]131
132    IMPLICIT NONE
133      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
[891]134      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate
[2338]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
[786]139      INTEGER  , OPTIONAL, INTENT(OUT) :: order
140      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
141
142      CALL xios(get_interpolate_axis_attr_hdl_)  &
[2338]143      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
144       )
[786]145
146  END SUBROUTINE xios(get_interpolate_axis_attr_hdl)
147
148  SUBROUTINE xios(get_interpolate_axis_attr_hdl_)   &
[2338]149    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  &
150    , type_ )
[786]151
152    IMPLICIT NONE
153      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
[891]154      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_
[2338]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
[786]159      INTEGER  , OPTIONAL, INTENT(OUT) :: order_
160      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
161
[891]162      IF (PRESENT(coordinate_)) THEN
[966]163        CALL cxios_get_interpolate_axis_coordinate &
164      (interpolate_axis_hdl%daddr, coordinate_, len(coordinate_))
[891]165      ENDIF
166
[2338]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)
[2620]180        CALL xios_bool_to_logical_0d(extrapolate__tmp)
[2338]181        extrapolate_ = extrapolate__tmp
182      ENDIF
183
[786]184      IF (PRESENT(order_)) THEN
[966]185        CALL cxios_get_interpolate_axis_order &
186      (interpolate_axis_hdl%daddr, order_)
[786]187      ENDIF
188
189      IF (PRESENT(type_)) THEN
[966]190        CALL cxios_get_interpolate_axis_type &
191      (interpolate_axis_hdl%daddr, type_, len(type_))
[786]192      ENDIF
193
194  END SUBROUTINE xios(get_interpolate_axis_attr_hdl_)
195
196  SUBROUTINE xios(is_defined_interpolate_axis_attr)  &
[2338]197    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
198     )
[786]199
200    IMPLICIT NONE
201      TYPE(txios(interpolate_axis))  :: interpolate_axis_hdl
202      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id
[891]203      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate
204      LOGICAL(KIND=C_BOOL) :: coordinate_tmp
[2338]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
[786]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
[966]216      CALL xios(get_interpolate_axis_handle) &
217      (interpolate_axis_id,interpolate_axis_hdl)
[786]218      CALL xios(is_defined_interpolate_axis_attr_hdl_)   &
[2338]219      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
220       )
[786]221
222  END SUBROUTINE xios(is_defined_interpolate_axis_attr)
223
224  SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl)  &
[2338]225    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
226     )
[786]227
228    IMPLICIT NONE
229      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
[891]230      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate
231      LOGICAL(KIND=C_BOOL) :: coordinate_tmp
[2338]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
[786]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_)  &
[2338]244      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  &
245       )
[786]246
247  END SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl)
248
249  SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl_)   &
[2338]250    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  &
251    , type_ )
[786]252
253    IMPLICIT NONE
254      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl
[891]255      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_
256      LOGICAL(KIND=C_BOOL) :: coordinate__tmp
[2338]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
[786]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
[891]268      IF (PRESENT(coordinate_)) THEN
[966]269        coordinate__tmp = cxios_is_defined_interpolate_axis_coordinate &
270      (interpolate_axis_hdl%daddr)
[891]271        coordinate_ = coordinate__tmp
272      ENDIF
273
[2338]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
[786]292      IF (PRESENT(order_)) THEN
[966]293        order__tmp = cxios_is_defined_interpolate_axis_order &
294      (interpolate_axis_hdl%daddr)
[786]295        order_ = order__tmp
296      ENDIF
297
298      IF (PRESENT(type_)) THEN
[966]299        type__tmp = cxios_is_defined_interpolate_axis_type &
300      (interpolate_axis_hdl%daddr)
[786]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.