source: XIOS2/trunk/src/interface/fortran_attr/ireduce_domain_to_scalar_attr.F90 @ 2623

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