source: XIOS3/trunk/src/interface/fortran_attr/ivariable_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.

  • Property copyright set to
    Software name : XIOS (Xml I/O Server)
    http://forge.ipsl.jussieu.fr/ioserver
    Creation date : January 2009
    Licence : CeCCIL version2
    see license file in root directory : Licence_CeCILL_V2-en.txt
    or http://www.cecill.info/licences/Licence_CeCILL_V2-en.html
    Holder : CEA/LSCE (Laboratoire des Sciences du CLimat et de l'Environnement)
    CNRS/IPSL (Institut Pierre Simon Laplace)
    Project Manager : Yann Meurdesoif
    yann.meurdesoif@cea.fr
File size: 6.2 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE ivariable_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE ivariable
9  USE variable_interface_attr
10  USE LOGICAL_BOOL_CONVERSION
11
12CONTAINS
13
14  SUBROUTINE xios(set_variable_attr)  &
15    ( variable_id, name, ts_target, type )
16
17    IMPLICIT NONE
18      TYPE(txios(variable))  :: variable_hdl
19      CHARACTER(LEN=*), INTENT(IN) ::variable_id
20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
21      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: ts_target
22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
23
24      CALL xios(get_variable_handle) &
25      (variable_id,variable_hdl)
26      CALL xios(set_variable_attr_hdl_)   &
27      ( variable_hdl, name, ts_target, type )
28
29  END SUBROUTINE xios(set_variable_attr)
30
31  SUBROUTINE xios(set_variable_attr_hdl)  &
32    ( variable_hdl, name, ts_target, type )
33
34    IMPLICIT NONE
35      TYPE(txios(variable)) , INTENT(IN) :: variable_hdl
36      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
37      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: ts_target
38      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
39
40      CALL xios(set_variable_attr_hdl_)  &
41      ( variable_hdl, name, ts_target, type )
42
43  END SUBROUTINE xios(set_variable_attr_hdl)
44
45  SUBROUTINE xios(set_variable_attr_hdl_)   &
46    ( variable_hdl, name_, ts_target_, type_ )
47
48    IMPLICIT NONE
49      TYPE(txios(variable)) , INTENT(IN) :: variable_hdl
50      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
51      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: ts_target_
52      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
53
54      IF (PRESENT(name_)) THEN
55        CALL cxios_set_variable_name &
56      (variable_hdl%daddr, name_, len(name_))
57      ENDIF
58
59      IF (PRESENT(ts_target_)) THEN
60        CALL cxios_set_variable_ts_target &
61      (variable_hdl%daddr, ts_target_, len(ts_target_))
62      ENDIF
63
64      IF (PRESENT(type_)) THEN
65        CALL cxios_set_variable_type &
66      (variable_hdl%daddr, type_, len(type_))
67      ENDIF
68
69  END SUBROUTINE xios(set_variable_attr_hdl_)
70
71  SUBROUTINE xios(get_variable_attr)  &
72    ( variable_id, name, ts_target, type )
73
74    IMPLICIT NONE
75      TYPE(txios(variable))  :: variable_hdl
76      CHARACTER(LEN=*), INTENT(IN) ::variable_id
77      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
78      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: ts_target
79      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
80
81      CALL xios(get_variable_handle) &
82      (variable_id,variable_hdl)
83      CALL xios(get_variable_attr_hdl_)   &
84      ( variable_hdl, name, ts_target, type )
85
86  END SUBROUTINE xios(get_variable_attr)
87
88  SUBROUTINE xios(get_variable_attr_hdl)  &
89    ( variable_hdl, name, ts_target, type )
90
91    IMPLICIT NONE
92      TYPE(txios(variable)) , INTENT(IN) :: variable_hdl
93      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
94      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: ts_target
95      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
96
97      CALL xios(get_variable_attr_hdl_)  &
98      ( variable_hdl, name, ts_target, type )
99
100  END SUBROUTINE xios(get_variable_attr_hdl)
101
102  SUBROUTINE xios(get_variable_attr_hdl_)   &
103    ( variable_hdl, name_, ts_target_, type_ )
104
105    IMPLICIT NONE
106      TYPE(txios(variable)) , INTENT(IN) :: variable_hdl
107      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
108      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: ts_target_
109      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
110
111      IF (PRESENT(name_)) THEN
112        CALL cxios_get_variable_name &
113      (variable_hdl%daddr, name_, len(name_))
114      ENDIF
115
116      IF (PRESENT(ts_target_)) THEN
117        CALL cxios_get_variable_ts_target &
118      (variable_hdl%daddr, ts_target_, len(ts_target_))
119      ENDIF
120
121      IF (PRESENT(type_)) THEN
122        CALL cxios_get_variable_type &
123      (variable_hdl%daddr, type_, len(type_))
124      ENDIF
125
126  END SUBROUTINE xios(get_variable_attr_hdl_)
127
128  SUBROUTINE xios(is_defined_variable_attr)  &
129    ( variable_id, name, ts_target, type )
130
131    IMPLICIT NONE
132      TYPE(txios(variable))  :: variable_hdl
133      CHARACTER(LEN=*), INTENT(IN) ::variable_id
134      LOGICAL, OPTIONAL, INTENT(OUT) :: name
135      LOGICAL(KIND=C_BOOL) :: name_tmp
136      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_target
137      LOGICAL(KIND=C_BOOL) :: ts_target_tmp
138      LOGICAL, OPTIONAL, INTENT(OUT) :: type
139      LOGICAL(KIND=C_BOOL) :: type_tmp
140
141      CALL xios(get_variable_handle) &
142      (variable_id,variable_hdl)
143      CALL xios(is_defined_variable_attr_hdl_)   &
144      ( variable_hdl, name, ts_target, type )
145
146  END SUBROUTINE xios(is_defined_variable_attr)
147
148  SUBROUTINE xios(is_defined_variable_attr_hdl)  &
149    ( variable_hdl, name, ts_target, type )
150
151    IMPLICIT NONE
152      TYPE(txios(variable)) , INTENT(IN) :: variable_hdl
153      LOGICAL, OPTIONAL, INTENT(OUT) :: name
154      LOGICAL(KIND=C_BOOL) :: name_tmp
155      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_target
156      LOGICAL(KIND=C_BOOL) :: ts_target_tmp
157      LOGICAL, OPTIONAL, INTENT(OUT) :: type
158      LOGICAL(KIND=C_BOOL) :: type_tmp
159
160      CALL xios(is_defined_variable_attr_hdl_)  &
161      ( variable_hdl, name, ts_target, type )
162
163  END SUBROUTINE xios(is_defined_variable_attr_hdl)
164
165  SUBROUTINE xios(is_defined_variable_attr_hdl_)   &
166    ( variable_hdl, name_, ts_target_, type_ )
167
168    IMPLICIT NONE
169      TYPE(txios(variable)) , INTENT(IN) :: variable_hdl
170      LOGICAL, OPTIONAL, INTENT(OUT) :: name_
171      LOGICAL(KIND=C_BOOL) :: name__tmp
172      LOGICAL, OPTIONAL, INTENT(OUT) :: ts_target_
173      LOGICAL(KIND=C_BOOL) :: ts_target__tmp
174      LOGICAL, OPTIONAL, INTENT(OUT) :: type_
175      LOGICAL(KIND=C_BOOL) :: type__tmp
176
177      IF (PRESENT(name_)) THEN
178        name__tmp = cxios_is_defined_variable_name &
179      (variable_hdl%daddr)
180        name_ = name__tmp
181      ENDIF
182
183      IF (PRESENT(ts_target_)) THEN
184        ts_target__tmp = cxios_is_defined_variable_ts_target &
185      (variable_hdl%daddr)
186        ts_target_ = ts_target__tmp
187      ENDIF
188
189      IF (PRESENT(type_)) THEN
190        type__tmp = cxios_is_defined_variable_type &
191      (variable_hdl%daddr)
192        type_ = type__tmp
193      ENDIF
194
195  END SUBROUTINE xios(is_defined_variable_attr_hdl_)
196
197END MODULE ivariable_attr
Note: See TracBrowser for help on using the repository browser.