[326] | 1 | ! * ************************************************************************** * |
---|
| 2 | ! * Interface auto generated - do not modify * |
---|
| 3 | ! * ************************************************************************** * |
---|
| 4 | #include "xios_fortran_prefix.hpp" |
---|
| 5 | |
---|
| 6 | MODULE igrid_attr |
---|
| 7 | USE, INTRINSIC :: ISO_C_BINDING |
---|
| 8 | USE igrid |
---|
| 9 | USE grid_interface_attr |
---|
[581] | 10 | |
---|
[326] | 11 | CONTAINS |
---|
[581] | 12 | |
---|
[326] | 13 | SUBROUTINE xios(set_grid_attr) & |
---|
[575] | 14 | ( grid_id, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 15 | |
---|
[326] | 16 | IMPLICIT NONE |
---|
| 17 | TYPE(txios(grid)) :: grid_hdl |
---|
| 18 | CHARACTER(LEN=*), INTENT(IN) ::grid_id |
---|
[575] | 19 | LOGICAL , OPTIONAL, INTENT(IN) :: axis_domain_order(:) |
---|
| 20 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: axis_domain_order_tmp(:) |
---|
[326] | 21 | CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description |
---|
[567] | 22 | LOGICAL , OPTIONAL, INTENT(IN) :: mask1(:) |
---|
| 23 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask1_tmp(:) |
---|
| 24 | LOGICAL , OPTIONAL, INTENT(IN) :: mask2(:,:) |
---|
| 25 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask2_tmp(:,:) |
---|
| 26 | LOGICAL , OPTIONAL, INTENT(IN) :: mask3(:,:,:) |
---|
| 27 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) |
---|
[326] | 28 | CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name |
---|
[581] | 29 | |
---|
[326] | 30 | CALL xios(get_grid_handle)(grid_id,grid_hdl) |
---|
| 31 | CALL xios(set_grid_attr_hdl_) & |
---|
[575] | 32 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 33 | |
---|
[326] | 34 | END SUBROUTINE xios(set_grid_attr) |
---|
[581] | 35 | |
---|
[326] | 36 | SUBROUTINE xios(set_grid_attr_hdl) & |
---|
[575] | 37 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 38 | |
---|
[326] | 39 | IMPLICIT NONE |
---|
| 40 | TYPE(txios(grid)) , INTENT(IN) :: grid_hdl |
---|
[575] | 41 | LOGICAL , OPTIONAL, INTENT(IN) :: axis_domain_order(:) |
---|
| 42 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: axis_domain_order_tmp(:) |
---|
[326] | 43 | CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description |
---|
[567] | 44 | LOGICAL , OPTIONAL, INTENT(IN) :: mask1(:) |
---|
| 45 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask1_tmp(:) |
---|
| 46 | LOGICAL , OPTIONAL, INTENT(IN) :: mask2(:,:) |
---|
| 47 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask2_tmp(:,:) |
---|
| 48 | LOGICAL , OPTIONAL, INTENT(IN) :: mask3(:,:,:) |
---|
| 49 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) |
---|
[326] | 50 | CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name |
---|
[581] | 51 | |
---|
[326] | 52 | CALL xios(set_grid_attr_hdl_) & |
---|
[575] | 53 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 54 | |
---|
[326] | 55 | END SUBROUTINE xios(set_grid_attr_hdl) |
---|
[581] | 56 | |
---|
[326] | 57 | SUBROUTINE xios(set_grid_attr_hdl_) & |
---|
[575] | 58 | ( grid_hdl, axis_domain_order_, description_, mask1_, mask2_, mask3_, name_ ) |
---|
[581] | 59 | |
---|
[326] | 60 | IMPLICIT NONE |
---|
| 61 | TYPE(txios(grid)) , INTENT(IN) :: grid_hdl |
---|
[575] | 62 | LOGICAL , OPTIONAL, INTENT(IN) :: axis_domain_order_(:) |
---|
| 63 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: axis_domain_order__tmp(:) |
---|
[326] | 64 | CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_ |
---|
[567] | 65 | LOGICAL , OPTIONAL, INTENT(IN) :: mask1_(:) |
---|
| 66 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask1__tmp(:) |
---|
| 67 | LOGICAL , OPTIONAL, INTENT(IN) :: mask2_(:,:) |
---|
| 68 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask2__tmp(:,:) |
---|
| 69 | LOGICAL , OPTIONAL, INTENT(IN) :: mask3_(:,:,:) |
---|
| 70 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3__tmp(:,:,:) |
---|
[326] | 71 | CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_ |
---|
[581] | 72 | |
---|
[575] | 73 | IF (PRESENT(axis_domain_order_)) THEN |
---|
| 74 | ALLOCATE(axis_domain_order__tmp(size(axis_domain_order_,1))) |
---|
[581] | 75 | axis_domain_order__tmp = axis_domain_order_ |
---|
| 76 | CALL cxios_set_grid_axis_domain_order(grid_hdl%daddr, axis_domain_order__tmp, size(axis_domain_order_,1)) |
---|
[326] | 77 | ENDIF |
---|
[581] | 78 | |
---|
[326] | 79 | IF (PRESENT(description_)) THEN |
---|
| 80 | CALL cxios_set_grid_description(grid_hdl%daddr, description_, len(description_)) |
---|
| 81 | ENDIF |
---|
[581] | 82 | |
---|
[567] | 83 | IF (PRESENT(mask1_)) THEN |
---|
| 84 | ALLOCATE(mask1__tmp(size(mask1_,1))) |
---|
[581] | 85 | mask1__tmp = mask1_ |
---|
| 86 | CALL cxios_set_grid_mask1(grid_hdl%daddr, mask1__tmp, size(mask1_,1)) |
---|
[415] | 87 | ENDIF |
---|
[581] | 88 | |
---|
[567] | 89 | IF (PRESENT(mask2_)) THEN |
---|
[581] | 90 | ALLOCATE(mask2__tmp(size(mask2_,1), size(mask2_,2))) |
---|
| 91 | mask2__tmp = mask2_ |
---|
| 92 | CALL cxios_set_grid_mask2(grid_hdl%daddr, mask2__tmp, size(mask2_,1), size(mask2_,2)) |
---|
[567] | 93 | ENDIF |
---|
[581] | 94 | |
---|
[567] | 95 | IF (PRESENT(mask3_)) THEN |
---|
[581] | 96 | ALLOCATE(mask3__tmp(size(mask3_,1), size(mask3_,2), size(mask3_,3))) |
---|
| 97 | mask3__tmp = mask3_ |
---|
| 98 | CALL cxios_set_grid_mask3(grid_hdl%daddr, mask3__tmp, size(mask3_,1), size(mask3_,2), size(mask3_,3)) |
---|
[567] | 99 | ENDIF |
---|
[581] | 100 | |
---|
[326] | 101 | IF (PRESENT(name_)) THEN |
---|
| 102 | CALL cxios_set_grid_name(grid_hdl%daddr, name_, len(name_)) |
---|
| 103 | ENDIF |
---|
[581] | 104 | |
---|
[326] | 105 | END SUBROUTINE xios(set_grid_attr_hdl_) |
---|
[581] | 106 | |
---|
[326] | 107 | SUBROUTINE xios(get_grid_attr) & |
---|
[575] | 108 | ( grid_id, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 109 | |
---|
[326] | 110 | IMPLICIT NONE |
---|
| 111 | TYPE(txios(grid)) :: grid_hdl |
---|
| 112 | CHARACTER(LEN=*), INTENT(IN) ::grid_id |
---|
[575] | 113 | LOGICAL , OPTIONAL, INTENT(OUT) :: axis_domain_order(:) |
---|
| 114 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: axis_domain_order_tmp(:) |
---|
[326] | 115 | CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description |
---|
[567] | 116 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask1(:) |
---|
| 117 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask1_tmp(:) |
---|
| 118 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask2(:,:) |
---|
| 119 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask2_tmp(:,:) |
---|
| 120 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask3(:,:,:) |
---|
| 121 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) |
---|
[326] | 122 | CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name |
---|
[581] | 123 | |
---|
[326] | 124 | CALL xios(get_grid_handle)(grid_id,grid_hdl) |
---|
| 125 | CALL xios(get_grid_attr_hdl_) & |
---|
[575] | 126 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 127 | |
---|
[326] | 128 | END SUBROUTINE xios(get_grid_attr) |
---|
[581] | 129 | |
---|
[326] | 130 | SUBROUTINE xios(get_grid_attr_hdl) & |
---|
[575] | 131 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 132 | |
---|
[326] | 133 | IMPLICIT NONE |
---|
| 134 | TYPE(txios(grid)) , INTENT(IN) :: grid_hdl |
---|
[575] | 135 | LOGICAL , OPTIONAL, INTENT(OUT) :: axis_domain_order(:) |
---|
| 136 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: axis_domain_order_tmp(:) |
---|
[326] | 137 | CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description |
---|
[567] | 138 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask1(:) |
---|
| 139 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask1_tmp(:) |
---|
| 140 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask2(:,:) |
---|
| 141 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask2_tmp(:,:) |
---|
| 142 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask3(:,:,:) |
---|
| 143 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) |
---|
[326] | 144 | CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name |
---|
[581] | 145 | |
---|
[326] | 146 | CALL xios(get_grid_attr_hdl_) & |
---|
[575] | 147 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 148 | |
---|
[326] | 149 | END SUBROUTINE xios(get_grid_attr_hdl) |
---|
[581] | 150 | |
---|
[326] | 151 | SUBROUTINE xios(get_grid_attr_hdl_) & |
---|
[575] | 152 | ( grid_hdl, axis_domain_order_, description_, mask1_, mask2_, mask3_, name_ ) |
---|
[581] | 153 | |
---|
[326] | 154 | IMPLICIT NONE |
---|
| 155 | TYPE(txios(grid)) , INTENT(IN) :: grid_hdl |
---|
[575] | 156 | LOGICAL , OPTIONAL, INTENT(OUT) :: axis_domain_order_(:) |
---|
| 157 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: axis_domain_order__tmp(:) |
---|
[326] | 158 | CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_ |
---|
[567] | 159 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask1_(:) |
---|
| 160 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask1__tmp(:) |
---|
| 161 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask2_(:,:) |
---|
| 162 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask2__tmp(:,:) |
---|
| 163 | LOGICAL , OPTIONAL, INTENT(OUT) :: mask3_(:,:,:) |
---|
| 164 | LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3__tmp(:,:,:) |
---|
[326] | 165 | CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_ |
---|
[581] | 166 | |
---|
[575] | 167 | IF (PRESENT(axis_domain_order_)) THEN |
---|
| 168 | ALLOCATE(axis_domain_order__tmp(size(axis_domain_order_,1))) |
---|
[581] | 169 | CALL cxios_get_grid_axis_domain_order(grid_hdl%daddr, axis_domain_order__tmp, size(axis_domain_order_,1)) |
---|
| 170 | axis_domain_order_ = axis_domain_order__tmp |
---|
[326] | 171 | ENDIF |
---|
[581] | 172 | |
---|
[326] | 173 | IF (PRESENT(description_)) THEN |
---|
| 174 | CALL cxios_get_grid_description(grid_hdl%daddr, description_, len(description_)) |
---|
| 175 | ENDIF |
---|
[581] | 176 | |
---|
[567] | 177 | IF (PRESENT(mask1_)) THEN |
---|
| 178 | ALLOCATE(mask1__tmp(size(mask1_,1))) |
---|
[581] | 179 | CALL cxios_get_grid_mask1(grid_hdl%daddr, mask1__tmp, size(mask1_,1)) |
---|
| 180 | mask1_ = mask1__tmp |
---|
[415] | 181 | ENDIF |
---|
[581] | 182 | |
---|
[567] | 183 | IF (PRESENT(mask2_)) THEN |
---|
[581] | 184 | ALLOCATE(mask2__tmp(size(mask2_,1), size(mask2_,2))) |
---|
| 185 | CALL cxios_get_grid_mask2(grid_hdl%daddr, mask2__tmp, size(mask2_,1), size(mask2_,2)) |
---|
| 186 | mask2_ = mask2__tmp |
---|
[567] | 187 | ENDIF |
---|
[581] | 188 | |
---|
[567] | 189 | IF (PRESENT(mask3_)) THEN |
---|
[581] | 190 | ALLOCATE(mask3__tmp(size(mask3_,1), size(mask3_,2), size(mask3_,3))) |
---|
| 191 | CALL cxios_get_grid_mask3(grid_hdl%daddr, mask3__tmp, size(mask3_,1), size(mask3_,2), size(mask3_,3)) |
---|
| 192 | mask3_ = mask3__tmp |
---|
[567] | 193 | ENDIF |
---|
[581] | 194 | |
---|
[326] | 195 | IF (PRESENT(name_)) THEN |
---|
| 196 | CALL cxios_get_grid_name(grid_hdl%daddr, name_, len(name_)) |
---|
| 197 | ENDIF |
---|
[581] | 198 | |
---|
[326] | 199 | END SUBROUTINE xios(get_grid_attr_hdl_) |
---|
[581] | 200 | |
---|
[432] | 201 | SUBROUTINE xios(is_defined_grid_attr) & |
---|
[575] | 202 | ( grid_id, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 203 | |
---|
[432] | 204 | IMPLICIT NONE |
---|
| 205 | TYPE(txios(grid)) :: grid_hdl |
---|
| 206 | CHARACTER(LEN=*), INTENT(IN) ::grid_id |
---|
[575] | 207 | LOGICAL, OPTIONAL, INTENT(OUT) :: axis_domain_order |
---|
| 208 | LOGICAL(KIND=C_BOOL) :: axis_domain_order_tmp |
---|
[432] | 209 | LOGICAL, OPTIONAL, INTENT(OUT) :: description |
---|
| 210 | LOGICAL(KIND=C_BOOL) :: description_tmp |
---|
[567] | 211 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask1 |
---|
| 212 | LOGICAL(KIND=C_BOOL) :: mask1_tmp |
---|
| 213 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask2 |
---|
| 214 | LOGICAL(KIND=C_BOOL) :: mask2_tmp |
---|
| 215 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask3 |
---|
| 216 | LOGICAL(KIND=C_BOOL) :: mask3_tmp |
---|
[432] | 217 | LOGICAL, OPTIONAL, INTENT(OUT) :: name |
---|
| 218 | LOGICAL(KIND=C_BOOL) :: name_tmp |
---|
[581] | 219 | |
---|
[432] | 220 | CALL xios(get_grid_handle)(grid_id,grid_hdl) |
---|
| 221 | CALL xios(is_defined_grid_attr_hdl_) & |
---|
[575] | 222 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 223 | |
---|
[432] | 224 | END SUBROUTINE xios(is_defined_grid_attr) |
---|
[581] | 225 | |
---|
[432] | 226 | SUBROUTINE xios(is_defined_grid_attr_hdl) & |
---|
[575] | 227 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 228 | |
---|
[432] | 229 | IMPLICIT NONE |
---|
| 230 | TYPE(txios(grid)) , INTENT(IN) :: grid_hdl |
---|
[575] | 231 | LOGICAL, OPTIONAL, INTENT(OUT) :: axis_domain_order |
---|
| 232 | LOGICAL(KIND=C_BOOL) :: axis_domain_order_tmp |
---|
[432] | 233 | LOGICAL, OPTIONAL, INTENT(OUT) :: description |
---|
| 234 | LOGICAL(KIND=C_BOOL) :: description_tmp |
---|
[567] | 235 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask1 |
---|
| 236 | LOGICAL(KIND=C_BOOL) :: mask1_tmp |
---|
| 237 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask2 |
---|
| 238 | LOGICAL(KIND=C_BOOL) :: mask2_tmp |
---|
| 239 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask3 |
---|
| 240 | LOGICAL(KIND=C_BOOL) :: mask3_tmp |
---|
[432] | 241 | LOGICAL, OPTIONAL, INTENT(OUT) :: name |
---|
| 242 | LOGICAL(KIND=C_BOOL) :: name_tmp |
---|
[581] | 243 | |
---|
[432] | 244 | CALL xios(is_defined_grid_attr_hdl_) & |
---|
[575] | 245 | ( grid_hdl, axis_domain_order, description, mask1, mask2, mask3, name ) |
---|
[581] | 246 | |
---|
[432] | 247 | END SUBROUTINE xios(is_defined_grid_attr_hdl) |
---|
[581] | 248 | |
---|
[432] | 249 | SUBROUTINE xios(is_defined_grid_attr_hdl_) & |
---|
[575] | 250 | ( grid_hdl, axis_domain_order_, description_, mask1_, mask2_, mask3_, name_ ) |
---|
[581] | 251 | |
---|
[432] | 252 | IMPLICIT NONE |
---|
| 253 | TYPE(txios(grid)) , INTENT(IN) :: grid_hdl |
---|
[575] | 254 | LOGICAL, OPTIONAL, INTENT(OUT) :: axis_domain_order_ |
---|
| 255 | LOGICAL(KIND=C_BOOL) :: axis_domain_order__tmp |
---|
[432] | 256 | LOGICAL, OPTIONAL, INTENT(OUT) :: description_ |
---|
| 257 | LOGICAL(KIND=C_BOOL) :: description__tmp |
---|
[567] | 258 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask1_ |
---|
| 259 | LOGICAL(KIND=C_BOOL) :: mask1__tmp |
---|
| 260 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask2_ |
---|
| 261 | LOGICAL(KIND=C_BOOL) :: mask2__tmp |
---|
| 262 | LOGICAL, OPTIONAL, INTENT(OUT) :: mask3_ |
---|
| 263 | LOGICAL(KIND=C_BOOL) :: mask3__tmp |
---|
[432] | 264 | LOGICAL, OPTIONAL, INTENT(OUT) :: name_ |
---|
| 265 | LOGICAL(KIND=C_BOOL) :: name__tmp |
---|
[581] | 266 | |
---|
[575] | 267 | IF (PRESENT(axis_domain_order_)) THEN |
---|
[581] | 268 | axis_domain_order__tmp = cxios_is_defined_grid_axis_domain_order(grid_hdl%daddr) |
---|
| 269 | axis_domain_order_ = axis_domain_order__tmp |
---|
[432] | 270 | ENDIF |
---|
[581] | 271 | |
---|
[432] | 272 | IF (PRESENT(description_)) THEN |
---|
[581] | 273 | description__tmp = cxios_is_defined_grid_description(grid_hdl%daddr) |
---|
| 274 | description_ = description__tmp |
---|
[432] | 275 | ENDIF |
---|
[581] | 276 | |
---|
[567] | 277 | IF (PRESENT(mask1_)) THEN |
---|
[581] | 278 | mask1__tmp = cxios_is_defined_grid_mask1(grid_hdl%daddr) |
---|
| 279 | mask1_ = mask1__tmp |
---|
[432] | 280 | ENDIF |
---|
[581] | 281 | |
---|
[567] | 282 | IF (PRESENT(mask2_)) THEN |
---|
[581] | 283 | mask2__tmp = cxios_is_defined_grid_mask2(grid_hdl%daddr) |
---|
| 284 | mask2_ = mask2__tmp |
---|
[567] | 285 | ENDIF |
---|
[581] | 286 | |
---|
[567] | 287 | IF (PRESENT(mask3_)) THEN |
---|
[581] | 288 | mask3__tmp = cxios_is_defined_grid_mask3(grid_hdl%daddr) |
---|
| 289 | mask3_ = mask3__tmp |
---|
[567] | 290 | ENDIF |
---|
[581] | 291 | |
---|
[432] | 292 | IF (PRESENT(name_)) THEN |
---|
[581] | 293 | name__tmp = cxios_is_defined_grid_name(grid_hdl%daddr) |
---|
| 294 | name_ = name__tmp |
---|
[432] | 295 | ENDIF |
---|
[581] | 296 | |
---|
[432] | 297 | END SUBROUTINE xios(is_defined_grid_attr_hdl_) |
---|
[581] | 298 | |
---|
[326] | 299 | END MODULE igrid_attr |
---|