source: XIOS3/trunk/src/interface/fortran_attr/ireduce_axis_to_scalar_attr.F90

Last change on this file 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: 6.6 KB
RevLine 
[891]1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE ireduce_axis_to_scalar_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE ireduce_axis_to_scalar
9  USE reduce_axis_to_scalar_interface_attr
[2620]10  USE LOGICAL_BOOL_CONVERSION
[891]11
12CONTAINS
13
14  SUBROUTINE xios(set_reduce_axis_to_scalar_attr)  &
[2338]15    ( reduce_axis_to_scalar_id, local, operation )
[891]16
17    IMPLICIT NONE
18      TYPE(txios(reduce_axis_to_scalar))  :: reduce_axis_to_scalar_hdl
19      CHARACTER(LEN=*), INTENT(IN) ::reduce_axis_to_scalar_id
[2338]20      LOGICAL  , OPTIONAL, INTENT(IN) :: local
21      LOGICAL (KIND=C_BOOL) :: local_tmp
[891]22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation
23
[966]24      CALL xios(get_reduce_axis_to_scalar_handle) &
25      (reduce_axis_to_scalar_id,reduce_axis_to_scalar_hdl)
[891]26      CALL xios(set_reduce_axis_to_scalar_attr_hdl_)   &
[2338]27      ( reduce_axis_to_scalar_hdl, local, operation )
[891]28
29  END SUBROUTINE xios(set_reduce_axis_to_scalar_attr)
30
31  SUBROUTINE xios(set_reduce_axis_to_scalar_attr_hdl)  &
[2338]32    ( reduce_axis_to_scalar_hdl, local, operation )
[891]33
34    IMPLICIT NONE
35      TYPE(txios(reduce_axis_to_scalar)) , INTENT(IN) :: reduce_axis_to_scalar_hdl
[2338]36      LOGICAL  , OPTIONAL, INTENT(IN) :: local
37      LOGICAL (KIND=C_BOOL) :: local_tmp
[891]38      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation
39
40      CALL xios(set_reduce_axis_to_scalar_attr_hdl_)  &
[2338]41      ( reduce_axis_to_scalar_hdl, local, operation )
[891]42
43  END SUBROUTINE xios(set_reduce_axis_to_scalar_attr_hdl)
44
45  SUBROUTINE xios(set_reduce_axis_to_scalar_attr_hdl_)   &
[2338]46    ( reduce_axis_to_scalar_hdl, local_, operation_ )
[891]47
48    IMPLICIT NONE
49      TYPE(txios(reduce_axis_to_scalar)) , INTENT(IN) :: reduce_axis_to_scalar_hdl
[2338]50      LOGICAL  , OPTIONAL, INTENT(IN) :: local_
51      LOGICAL (KIND=C_BOOL) :: local__tmp
[891]52      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_
53
[2338]54      IF (PRESENT(local_)) THEN
55        local__tmp = local_
[2620]56        CALL xios_logical_to_bool_0d(local__tmp)
[2338]57        CALL cxios_set_reduce_axis_to_scalar_local &
58      (reduce_axis_to_scalar_hdl%daddr, local__tmp)
59      ENDIF
60
[891]61      IF (PRESENT(operation_)) THEN
[966]62        CALL cxios_set_reduce_axis_to_scalar_operation &
63      (reduce_axis_to_scalar_hdl%daddr, operation_, len(operation_))
[891]64      ENDIF
65
66  END SUBROUTINE xios(set_reduce_axis_to_scalar_attr_hdl_)
67
68  SUBROUTINE xios(get_reduce_axis_to_scalar_attr)  &
[2338]69    ( reduce_axis_to_scalar_id, local, operation )
[891]70
71    IMPLICIT NONE
72      TYPE(txios(reduce_axis_to_scalar))  :: reduce_axis_to_scalar_hdl
73      CHARACTER(LEN=*), INTENT(IN) ::reduce_axis_to_scalar_id
[2338]74      LOGICAL  , OPTIONAL, INTENT(OUT) :: local
75      LOGICAL (KIND=C_BOOL) :: local_tmp
[891]76      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation
77
[966]78      CALL xios(get_reduce_axis_to_scalar_handle) &
79      (reduce_axis_to_scalar_id,reduce_axis_to_scalar_hdl)
[891]80      CALL xios(get_reduce_axis_to_scalar_attr_hdl_)   &
[2338]81      ( reduce_axis_to_scalar_hdl, local, operation )
[891]82
83  END SUBROUTINE xios(get_reduce_axis_to_scalar_attr)
84
85  SUBROUTINE xios(get_reduce_axis_to_scalar_attr_hdl)  &
[2338]86    ( reduce_axis_to_scalar_hdl, local, operation )
[891]87
88    IMPLICIT NONE
89      TYPE(txios(reduce_axis_to_scalar)) , INTENT(IN) :: reduce_axis_to_scalar_hdl
[2338]90      LOGICAL  , OPTIONAL, INTENT(OUT) :: local
91      LOGICAL (KIND=C_BOOL) :: local_tmp
[891]92      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation
93
94      CALL xios(get_reduce_axis_to_scalar_attr_hdl_)  &
[2338]95      ( reduce_axis_to_scalar_hdl, local, operation )
[891]96
97  END SUBROUTINE xios(get_reduce_axis_to_scalar_attr_hdl)
98
99  SUBROUTINE xios(get_reduce_axis_to_scalar_attr_hdl_)   &
[2338]100    ( reduce_axis_to_scalar_hdl, local_, operation_ )
[891]101
102    IMPLICIT NONE
103      TYPE(txios(reduce_axis_to_scalar)) , INTENT(IN) :: reduce_axis_to_scalar_hdl
[2338]104      LOGICAL  , OPTIONAL, INTENT(OUT) :: local_
105      LOGICAL (KIND=C_BOOL) :: local__tmp
[891]106      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation_
107
[2338]108      IF (PRESENT(local_)) THEN
109        CALL cxios_get_reduce_axis_to_scalar_local &
110      (reduce_axis_to_scalar_hdl%daddr, local__tmp)
[2620]111        CALL xios_bool_to_logical_0d(local__tmp)
[2338]112        local_ = local__tmp
113      ENDIF
114
[891]115      IF (PRESENT(operation_)) THEN
[966]116        CALL cxios_get_reduce_axis_to_scalar_operation &
117      (reduce_axis_to_scalar_hdl%daddr, operation_, len(operation_))
[891]118      ENDIF
119
120  END SUBROUTINE xios(get_reduce_axis_to_scalar_attr_hdl_)
121
122  SUBROUTINE xios(is_defined_reduce_axis_to_scalar_attr)  &
[2338]123    ( reduce_axis_to_scalar_id, local, operation )
[891]124
125    IMPLICIT NONE
126      TYPE(txios(reduce_axis_to_scalar))  :: reduce_axis_to_scalar_hdl
127      CHARACTER(LEN=*), INTENT(IN) ::reduce_axis_to_scalar_id
[2338]128      LOGICAL, OPTIONAL, INTENT(OUT) :: local
129      LOGICAL(KIND=C_BOOL) :: local_tmp
[891]130      LOGICAL, OPTIONAL, INTENT(OUT) :: operation
131      LOGICAL(KIND=C_BOOL) :: operation_tmp
132
[966]133      CALL xios(get_reduce_axis_to_scalar_handle) &
134      (reduce_axis_to_scalar_id,reduce_axis_to_scalar_hdl)
[891]135      CALL xios(is_defined_reduce_axis_to_scalar_attr_hdl_)   &
[2338]136      ( reduce_axis_to_scalar_hdl, local, operation )
[891]137
138  END SUBROUTINE xios(is_defined_reduce_axis_to_scalar_attr)
139
140  SUBROUTINE xios(is_defined_reduce_axis_to_scalar_attr_hdl)  &
[2338]141    ( reduce_axis_to_scalar_hdl, local, operation )
[891]142
143    IMPLICIT NONE
144      TYPE(txios(reduce_axis_to_scalar)) , INTENT(IN) :: reduce_axis_to_scalar_hdl
[2338]145      LOGICAL, OPTIONAL, INTENT(OUT) :: local
146      LOGICAL(KIND=C_BOOL) :: local_tmp
[891]147      LOGICAL, OPTIONAL, INTENT(OUT) :: operation
148      LOGICAL(KIND=C_BOOL) :: operation_tmp
149
150      CALL xios(is_defined_reduce_axis_to_scalar_attr_hdl_)  &
[2338]151      ( reduce_axis_to_scalar_hdl, local, operation )
[891]152
153  END SUBROUTINE xios(is_defined_reduce_axis_to_scalar_attr_hdl)
154
155  SUBROUTINE xios(is_defined_reduce_axis_to_scalar_attr_hdl_)   &
[2338]156    ( reduce_axis_to_scalar_hdl, local_, operation_ )
[891]157
158    IMPLICIT NONE
159      TYPE(txios(reduce_axis_to_scalar)) , INTENT(IN) :: reduce_axis_to_scalar_hdl
[2338]160      LOGICAL, OPTIONAL, INTENT(OUT) :: local_
161      LOGICAL(KIND=C_BOOL) :: local__tmp
[891]162      LOGICAL, OPTIONAL, INTENT(OUT) :: operation_
163      LOGICAL(KIND=C_BOOL) :: operation__tmp
164
[2338]165      IF (PRESENT(local_)) THEN
166        local__tmp = cxios_is_defined_reduce_axis_to_scalar_local &
167      (reduce_axis_to_scalar_hdl%daddr)
168        local_ = local__tmp
169      ENDIF
170
[891]171      IF (PRESENT(operation_)) THEN
[966]172        operation__tmp = cxios_is_defined_reduce_axis_to_scalar_operation &
173      (reduce_axis_to_scalar_hdl%daddr)
[891]174        operation_ = operation__tmp
175      ENDIF
176
177  END SUBROUTINE xios(is_defined_reduce_axis_to_scalar_attr_hdl_)
178
179END MODULE ireduce_axis_to_scalar_attr
Note: See TracBrowser for help on using the repository browser.