source: XIOS3/trunk/src/interface/fortran_attr/iredistribute_scalar_attr.F90 @ 2616

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

Add XIOS3 fortran interfaces (resources management, chunking, compression)

File size: 7.4 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE iredistribute_scalar_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE iredistribute_scalar
9  USE redistribute_scalar_interface_attr
10
11CONTAINS
12
13  SUBROUTINE xios(set_redistribute_scalar_attr)  &
14    ( redistribute_scalar_id, index, mask, type )
15
16    IMPLICIT NONE
17      TYPE(txios(redistribute_scalar))  :: redistribute_scalar_hdl
18      CHARACTER(LEN=*), INTENT(IN) ::redistribute_scalar_id
19      INTEGER  , OPTIONAL, INTENT(IN) :: index(:)
20      LOGICAL  , OPTIONAL, INTENT(IN) :: mask(:)
21      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:)
22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
23
24      CALL xios(get_redistribute_scalar_handle) &
25      (redistribute_scalar_id,redistribute_scalar_hdl)
26      CALL xios(set_redistribute_scalar_attr_hdl_)   &
27      ( redistribute_scalar_hdl, index, mask, type )
28
29  END SUBROUTINE xios(set_redistribute_scalar_attr)
30
31  SUBROUTINE xios(set_redistribute_scalar_attr_hdl)  &
32    ( redistribute_scalar_hdl, index, mask, type )
33
34    IMPLICIT NONE
35      TYPE(txios(redistribute_scalar)) , INTENT(IN) :: redistribute_scalar_hdl
36      INTEGER  , OPTIONAL, INTENT(IN) :: index(:)
37      LOGICAL  , OPTIONAL, INTENT(IN) :: mask(:)
38      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:)
39      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
40
41      CALL xios(set_redistribute_scalar_attr_hdl_)  &
42      ( redistribute_scalar_hdl, index, mask, type )
43
44  END SUBROUTINE xios(set_redistribute_scalar_attr_hdl)
45
46  SUBROUTINE xios(set_redistribute_scalar_attr_hdl_)   &
47    ( redistribute_scalar_hdl, index_, mask_, type_ )
48
49    IMPLICIT NONE
50      TYPE(txios(redistribute_scalar)) , INTENT(IN) :: redistribute_scalar_hdl
51      INTEGER  , OPTIONAL, INTENT(IN) :: index_(:)
52      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_(:)
53      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask__tmp(:)
54      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
55
56      IF (PRESENT(index_)) THEN
57        CALL cxios_set_redistribute_scalar_index &
58      (redistribute_scalar_hdl%daddr, index_, SHAPE(index_))
59      ENDIF
60
61      IF (PRESENT(mask_)) THEN
62        ALLOCATE(mask__tmp(SIZE(mask_,1)))
63        mask__tmp = mask_
64        CALL cxios_set_redistribute_scalar_mask &
65      (redistribute_scalar_hdl%daddr, mask__tmp, SHAPE(mask_))
66      ENDIF
67
68      IF (PRESENT(type_)) THEN
69        CALL cxios_set_redistribute_scalar_type &
70      (redistribute_scalar_hdl%daddr, type_, len(type_))
71      ENDIF
72
73  END SUBROUTINE xios(set_redistribute_scalar_attr_hdl_)
74
75  SUBROUTINE xios(get_redistribute_scalar_attr)  &
76    ( redistribute_scalar_id, index, mask, type )
77
78    IMPLICIT NONE
79      TYPE(txios(redistribute_scalar))  :: redistribute_scalar_hdl
80      CHARACTER(LEN=*), INTENT(IN) ::redistribute_scalar_id
81      INTEGER  , OPTIONAL, INTENT(OUT) :: index(:)
82      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask(:)
83      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:)
84      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
85
86      CALL xios(get_redistribute_scalar_handle) &
87      (redistribute_scalar_id,redistribute_scalar_hdl)
88      CALL xios(get_redistribute_scalar_attr_hdl_)   &
89      ( redistribute_scalar_hdl, index, mask, type )
90
91  END SUBROUTINE xios(get_redistribute_scalar_attr)
92
93  SUBROUTINE xios(get_redistribute_scalar_attr_hdl)  &
94    ( redistribute_scalar_hdl, index, mask, type )
95
96    IMPLICIT NONE
97      TYPE(txios(redistribute_scalar)) , INTENT(IN) :: redistribute_scalar_hdl
98      INTEGER  , OPTIONAL, INTENT(OUT) :: index(:)
99      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask(:)
100      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask_tmp(:)
101      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
102
103      CALL xios(get_redistribute_scalar_attr_hdl_)  &
104      ( redistribute_scalar_hdl, index, mask, type )
105
106  END SUBROUTINE xios(get_redistribute_scalar_attr_hdl)
107
108  SUBROUTINE xios(get_redistribute_scalar_attr_hdl_)   &
109    ( redistribute_scalar_hdl, index_, mask_, type_ )
110
111    IMPLICIT NONE
112      TYPE(txios(redistribute_scalar)) , INTENT(IN) :: redistribute_scalar_hdl
113      INTEGER  , OPTIONAL, INTENT(OUT) :: index_(:)
114      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_(:)
115      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask__tmp(:)
116      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
117
118      IF (PRESENT(index_)) THEN
119        CALL cxios_get_redistribute_scalar_index &
120      (redistribute_scalar_hdl%daddr, index_, SHAPE(index_))
121      ENDIF
122
123      IF (PRESENT(mask_)) THEN
124        ALLOCATE(mask__tmp(SIZE(mask_,1)))
125        CALL cxios_get_redistribute_scalar_mask &
126      (redistribute_scalar_hdl%daddr, mask__tmp, SHAPE(mask_))
127        mask_ = mask__tmp
128      ENDIF
129
130      IF (PRESENT(type_)) THEN
131        CALL cxios_get_redistribute_scalar_type &
132      (redistribute_scalar_hdl%daddr, type_, len(type_))
133      ENDIF
134
135  END SUBROUTINE xios(get_redistribute_scalar_attr_hdl_)
136
137  SUBROUTINE xios(is_defined_redistribute_scalar_attr)  &
138    ( redistribute_scalar_id, index, mask, type )
139
140    IMPLICIT NONE
141      TYPE(txios(redistribute_scalar))  :: redistribute_scalar_hdl
142      CHARACTER(LEN=*), INTENT(IN) ::redistribute_scalar_id
143      LOGICAL, OPTIONAL, INTENT(OUT) :: index
144      LOGICAL(KIND=C_BOOL) :: index_tmp
145      LOGICAL, OPTIONAL, INTENT(OUT) :: mask
146      LOGICAL(KIND=C_BOOL) :: mask_tmp
147      LOGICAL, OPTIONAL, INTENT(OUT) :: type
148      LOGICAL(KIND=C_BOOL) :: type_tmp
149
150      CALL xios(get_redistribute_scalar_handle) &
151      (redistribute_scalar_id,redistribute_scalar_hdl)
152      CALL xios(is_defined_redistribute_scalar_attr_hdl_)   &
153      ( redistribute_scalar_hdl, index, mask, type )
154
155  END SUBROUTINE xios(is_defined_redistribute_scalar_attr)
156
157  SUBROUTINE xios(is_defined_redistribute_scalar_attr_hdl)  &
158    ( redistribute_scalar_hdl, index, mask, type )
159
160    IMPLICIT NONE
161      TYPE(txios(redistribute_scalar)) , INTENT(IN) :: redistribute_scalar_hdl
162      LOGICAL, OPTIONAL, INTENT(OUT) :: index
163      LOGICAL(KIND=C_BOOL) :: index_tmp
164      LOGICAL, OPTIONAL, INTENT(OUT) :: mask
165      LOGICAL(KIND=C_BOOL) :: mask_tmp
166      LOGICAL, OPTIONAL, INTENT(OUT) :: type
167      LOGICAL(KIND=C_BOOL) :: type_tmp
168
169      CALL xios(is_defined_redistribute_scalar_attr_hdl_)  &
170      ( redistribute_scalar_hdl, index, mask, type )
171
172  END SUBROUTINE xios(is_defined_redistribute_scalar_attr_hdl)
173
174  SUBROUTINE xios(is_defined_redistribute_scalar_attr_hdl_)   &
175    ( redistribute_scalar_hdl, index_, mask_, type_ )
176
177    IMPLICIT NONE
178      TYPE(txios(redistribute_scalar)) , INTENT(IN) :: redistribute_scalar_hdl
179      LOGICAL, OPTIONAL, INTENT(OUT) :: index_
180      LOGICAL(KIND=C_BOOL) :: index__tmp
181      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_
182      LOGICAL(KIND=C_BOOL) :: mask__tmp
183      LOGICAL, OPTIONAL, INTENT(OUT) :: type_
184      LOGICAL(KIND=C_BOOL) :: type__tmp
185
186      IF (PRESENT(index_)) THEN
187        index__tmp = cxios_is_defined_redistribute_scalar_index &
188      (redistribute_scalar_hdl%daddr)
189        index_ = index__tmp
190      ENDIF
191
192      IF (PRESENT(mask_)) THEN
193        mask__tmp = cxios_is_defined_redistribute_scalar_mask &
194      (redistribute_scalar_hdl%daddr)
195        mask_ = mask__tmp
196      ENDIF
197
198      IF (PRESENT(type_)) THEN
199        type__tmp = cxios_is_defined_redistribute_scalar_type &
200      (redistribute_scalar_hdl%daddr)
201        type_ = type__tmp
202      ENDIF
203
204  END SUBROUTINE xios(is_defined_redistribute_scalar_attr_hdl_)
205
206END MODULE iredistribute_scalar_attr
Note: See TracBrowser for help on using the repository browser.