Changeset 593 for XIOS/trunk/src/interface/fortran_attr
- Timestamp:
- 05/26/15 16:13:45 (9 years ago)
- Location:
- XIOS/trunk/src/interface/fortran_attr
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/interface/fortran_attr/field_interface_attr.F90
r581 r593 313 313 314 314 315 SUBROUTINE cxios_set_field_read_access(field_hdl, read_access) BIND(C) 316 USE ISO_C_BINDING 317 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 318 LOGICAL (KIND=C_BOOL) , VALUE :: read_access 319 END SUBROUTINE cxios_set_field_read_access 320 321 SUBROUTINE cxios_get_field_read_access(field_hdl, read_access) BIND(C) 322 USE ISO_C_BINDING 323 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 324 LOGICAL (KIND=C_BOOL) :: read_access 325 END SUBROUTINE cxios_get_field_read_access 326 327 FUNCTION cxios_is_defined_field_read_access(field_hdl) BIND(C) 328 USE ISO_C_BINDING 329 LOGICAL(kind=C_BOOL) :: cxios_is_defined_field_read_access 330 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 331 END FUNCTION cxios_is_defined_field_read_access 332 333 315 334 SUBROUTINE cxios_set_field_scale_factor(field_hdl, scale_factor) BIND(C) 316 335 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/fieldgroup_interface_attr.F90
r581 r593 334 334 335 335 336 SUBROUTINE cxios_set_fieldgroup_read_access(fieldgroup_hdl, read_access) BIND(C) 337 USE ISO_C_BINDING 338 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 339 LOGICAL (KIND=C_BOOL) , VALUE :: read_access 340 END SUBROUTINE cxios_set_fieldgroup_read_access 341 342 SUBROUTINE cxios_get_fieldgroup_read_access(fieldgroup_hdl, read_access) BIND(C) 343 USE ISO_C_BINDING 344 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 345 LOGICAL (KIND=C_BOOL) :: read_access 346 END SUBROUTINE cxios_get_fieldgroup_read_access 347 348 FUNCTION cxios_is_defined_fieldgroup_read_access(fieldgroup_hdl) BIND(C) 349 USE ISO_C_BINDING 350 LOGICAL(kind=C_BOOL) :: cxios_is_defined_fieldgroup_read_access 351 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 352 END FUNCTION cxios_is_defined_fieldgroup_read_access 353 354 336 355 SUBROUTINE cxios_set_fieldgroup_scale_factor(fieldgroup_hdl, scale_factor) BIND(C) 337 356 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/ifield_attr.F90
r581 r593 13 13 SUBROUTINE xios(set_field_attr) & 14 14 ( field_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled, field_ref & 15 , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor, standard_name&16 , unit, valid_max, valid_min )15 , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access, scale_factor & 16 , standard_name, unit, valid_max, valid_min ) 17 17 18 18 IMPLICIT NONE … … 36 36 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation 37 37 INTEGER , OPTIONAL, INTENT(IN) :: prec 38 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 39 LOGICAL (KIND=C_BOOL) :: read_access_tmp 38 40 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 39 41 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 45 47 CALL xios(set_field_attr_hdl_) & 46 48 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 47 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&48 , s tandard_name, unit, valid_max, valid_min )49 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 50 , scale_factor, standard_name, unit, valid_max, valid_min ) 49 51 50 52 END SUBROUTINE xios(set_field_attr) … … 52 54 SUBROUTINE xios(set_field_attr_hdl) & 53 55 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 54 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&55 , s tandard_name, unit, valid_max, valid_min )56 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 57 , scale_factor, standard_name, unit, valid_max, valid_min ) 56 58 57 59 IMPLICIT NONE … … 74 76 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation 75 77 INTEGER , OPTIONAL, INTENT(IN) :: prec 78 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 79 LOGICAL (KIND=C_BOOL) :: read_access_tmp 76 80 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 77 81 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 82 86 CALL xios(set_field_attr_hdl_) & 83 87 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 84 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&85 , s tandard_name, unit, valid_max, valid_min )88 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 89 , scale_factor, standard_name, unit, valid_max, valid_min ) 86 90 87 91 END SUBROUTINE xios(set_field_attr_hdl) … … 90 94 ( field_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_, enabled_ & 91 95 , field_ref_, freq_offset_, freq_op_, grid_ref_, level_, long_name_, name_, operation_, prec_ & 92 , scale_factor_, standard_name_, unit_, valid_max_, valid_min_ )96 , read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ ) 93 97 94 98 IMPLICIT NONE … … 111 115 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_ 112 116 INTEGER , OPTIONAL, INTENT(IN) :: prec_ 117 LOGICAL , OPTIONAL, INTENT(IN) :: read_access_ 118 LOGICAL (KIND=C_BOOL) :: read_access__tmp 113 119 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor_ 114 120 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_ … … 179 185 ENDIF 180 186 187 IF (PRESENT(read_access_)) THEN 188 read_access__tmp = read_access_ 189 CALL cxios_set_field_read_access(field_hdl%daddr, read_access__tmp) 190 ENDIF 191 181 192 IF (PRESENT(scale_factor_)) THEN 182 193 CALL cxios_set_field_scale_factor(field_hdl%daddr, scale_factor_) … … 203 214 SUBROUTINE xios(get_field_attr) & 204 215 ( field_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled, field_ref & 205 , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor, standard_name&206 , unit, valid_max, valid_min )216 , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access, scale_factor & 217 , standard_name, unit, valid_max, valid_min ) 207 218 208 219 IMPLICIT NONE … … 226 237 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation 227 238 INTEGER , OPTIONAL, INTENT(OUT) :: prec 239 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 240 LOGICAL (KIND=C_BOOL) :: read_access_tmp 228 241 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 229 242 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 235 248 CALL xios(get_field_attr_hdl_) & 236 249 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 237 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&238 , s tandard_name, unit, valid_max, valid_min )250 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 251 , scale_factor, standard_name, unit, valid_max, valid_min ) 239 252 240 253 END SUBROUTINE xios(get_field_attr) … … 242 255 SUBROUTINE xios(get_field_attr_hdl) & 243 256 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 244 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&245 , s tandard_name, unit, valid_max, valid_min )257 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 258 , scale_factor, standard_name, unit, valid_max, valid_min ) 246 259 247 260 IMPLICIT NONE … … 264 277 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation 265 278 INTEGER , OPTIONAL, INTENT(OUT) :: prec 279 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 280 LOGICAL (KIND=C_BOOL) :: read_access_tmp 266 281 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 267 282 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 272 287 CALL xios(get_field_attr_hdl_) & 273 288 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 274 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&275 , s tandard_name, unit, valid_max, valid_min )289 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 290 , scale_factor, standard_name, unit, valid_max, valid_min ) 276 291 277 292 END SUBROUTINE xios(get_field_attr_hdl) … … 280 295 ( field_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_, enabled_ & 281 296 , field_ref_, freq_offset_, freq_op_, grid_ref_, level_, long_name_, name_, operation_, prec_ & 282 , scale_factor_, standard_name_, unit_, valid_max_, valid_min_ )297 , read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ ) 283 298 284 299 IMPLICIT NONE … … 301 316 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation_ 302 317 INTEGER , OPTIONAL, INTENT(OUT) :: prec_ 318 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access_ 319 LOGICAL (KIND=C_BOOL) :: read_access__tmp 303 320 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor_ 304 321 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_ … … 369 386 ENDIF 370 387 388 IF (PRESENT(read_access_)) THEN 389 CALL cxios_get_field_read_access(field_hdl%daddr, read_access__tmp) 390 read_access_ = read_access__tmp 391 ENDIF 392 371 393 IF (PRESENT(scale_factor_)) THEN 372 394 CALL cxios_get_field_scale_factor(field_hdl%daddr, scale_factor_) … … 393 415 SUBROUTINE xios(is_defined_field_attr) & 394 416 ( field_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled, field_ref & 395 , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor, standard_name&396 , unit, valid_max, valid_min )417 , freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access, scale_factor & 418 , standard_name, unit, valid_max, valid_min ) 397 419 398 420 IMPLICIT NONE … … 429 451 LOGICAL, OPTIONAL, INTENT(OUT) :: prec 430 452 LOGICAL(KIND=C_BOOL) :: prec_tmp 453 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 454 LOGICAL(KIND=C_BOOL) :: read_access_tmp 431 455 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 432 456 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 443 467 CALL xios(is_defined_field_attr_hdl_) & 444 468 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 445 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&446 , s tandard_name, unit, valid_max, valid_min )469 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 470 , scale_factor, standard_name, unit, valid_max, valid_min ) 447 471 448 472 END SUBROUTINE xios(is_defined_field_attr) … … 450 474 SUBROUTINE xios(is_defined_field_attr_hdl) & 451 475 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 452 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&453 , s tandard_name, unit, valid_max, valid_min )476 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 477 , scale_factor, standard_name, unit, valid_max, valid_min ) 454 478 455 479 IMPLICIT NONE … … 485 509 LOGICAL, OPTIONAL, INTENT(OUT) :: prec 486 510 LOGICAL(KIND=C_BOOL) :: prec_tmp 511 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 512 LOGICAL(KIND=C_BOOL) :: read_access_tmp 487 513 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 488 514 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 498 524 CALL xios(is_defined_field_attr_hdl_) & 499 525 ( field_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 500 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, scale_factor&501 , s tandard_name, unit, valid_max, valid_min )526 , field_ref, freq_offset, freq_op, grid_ref, level, long_name, name, operation, prec, read_access & 527 , scale_factor, standard_name, unit, valid_max, valid_min ) 502 528 503 529 END SUBROUTINE xios(is_defined_field_attr_hdl) … … 506 532 ( field_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_, enabled_ & 507 533 , field_ref_, freq_offset_, freq_op_, grid_ref_, level_, long_name_, name_, operation_, prec_ & 508 , scale_factor_, standard_name_, unit_, valid_max_, valid_min_ )534 , read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ ) 509 535 510 536 IMPLICIT NONE … … 540 566 LOGICAL, OPTIONAL, INTENT(OUT) :: prec_ 541 567 LOGICAL(KIND=C_BOOL) :: prec__tmp 568 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access_ 569 LOGICAL(KIND=C_BOOL) :: read_access__tmp 542 570 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor_ 543 571 LOGICAL(KIND=C_BOOL) :: scale_factor__tmp … … 626 654 ENDIF 627 655 656 IF (PRESENT(read_access_)) THEN 657 read_access__tmp = cxios_is_defined_field_read_access(field_hdl%daddr) 658 read_access_ = read_access__tmp 659 ENDIF 660 628 661 IF (PRESENT(scale_factor_)) THEN 629 662 scale_factor__tmp = cxios_is_defined_field_scale_factor(field_hdl%daddr) -
XIOS/trunk/src/interface/fortran_attr/ifieldgroup_attr.F90
r581 r593 14 14 ( fieldgroup_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 15 15 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 16 , scale_factor, standard_name, unit, valid_max, valid_min )16 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 17 17 18 18 IMPLICIT NONE … … 37 37 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation 38 38 INTEGER , OPTIONAL, INTENT(IN) :: prec 39 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 40 LOGICAL (KIND=C_BOOL) :: read_access_tmp 39 41 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 40 42 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 47 49 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 48 50 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 49 , scale_factor, standard_name, unit, valid_max, valid_min )51 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 50 52 51 53 END SUBROUTINE xios(set_fieldgroup_attr) … … 54 56 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 55 57 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 56 , scale_factor, standard_name, unit, valid_max, valid_min )58 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 57 59 58 60 IMPLICIT NONE … … 76 78 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation 77 79 INTEGER , OPTIONAL, INTENT(IN) :: prec 80 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 81 LOGICAL (KIND=C_BOOL) :: read_access_tmp 78 82 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 79 83 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 85 89 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 86 90 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 87 , scale_factor, standard_name, unit, valid_max, valid_min )91 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 88 92 89 93 END SUBROUTINE xios(set_fieldgroup_attr_hdl) … … 92 96 ( fieldgroup_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_ & 93 97 , enabled_, field_ref_, freq_offset_, freq_op_, grid_ref_, group_ref_, level_, long_name_, name_ & 94 , operation_, prec_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ ) 98 , operation_, prec_, read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ & 99 ) 95 100 96 101 IMPLICIT NONE … … 114 119 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_ 115 120 INTEGER , OPTIONAL, INTENT(IN) :: prec_ 121 LOGICAL , OPTIONAL, INTENT(IN) :: read_access_ 122 LOGICAL (KIND=C_BOOL) :: read_access__tmp 116 123 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor_ 117 124 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_ … … 186 193 ENDIF 187 194 195 IF (PRESENT(read_access_)) THEN 196 read_access__tmp = read_access_ 197 CALL cxios_set_fieldgroup_read_access(fieldgroup_hdl%daddr, read_access__tmp) 198 ENDIF 199 188 200 IF (PRESENT(scale_factor_)) THEN 189 201 CALL cxios_set_fieldgroup_scale_factor(fieldgroup_hdl%daddr, scale_factor_) … … 211 223 ( fieldgroup_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 212 224 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 213 , scale_factor, standard_name, unit, valid_max, valid_min )225 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 214 226 215 227 IMPLICIT NONE … … 234 246 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation 235 247 INTEGER , OPTIONAL, INTENT(OUT) :: prec 248 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 249 LOGICAL (KIND=C_BOOL) :: read_access_tmp 236 250 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 237 251 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 244 258 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 245 259 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 246 , scale_factor, standard_name, unit, valid_max, valid_min )260 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 247 261 248 262 END SUBROUTINE xios(get_fieldgroup_attr) … … 251 265 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 252 266 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 253 , scale_factor, standard_name, unit, valid_max, valid_min )267 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 254 268 255 269 IMPLICIT NONE … … 273 287 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation 274 288 INTEGER , OPTIONAL, INTENT(OUT) :: prec 289 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 290 LOGICAL (KIND=C_BOOL) :: read_access_tmp 275 291 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 276 292 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 282 298 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 283 299 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 284 , scale_factor, standard_name, unit, valid_max, valid_min )300 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 285 301 286 302 END SUBROUTINE xios(get_fieldgroup_attr_hdl) … … 289 305 ( fieldgroup_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_ & 290 306 , enabled_, field_ref_, freq_offset_, freq_op_, grid_ref_, group_ref_, level_, long_name_, name_ & 291 , operation_, prec_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ ) 307 , operation_, prec_, read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ & 308 ) 292 309 293 310 IMPLICIT NONE … … 311 328 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: operation_ 312 329 INTEGER , OPTIONAL, INTENT(OUT) :: prec_ 330 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access_ 331 LOGICAL (KIND=C_BOOL) :: read_access__tmp 313 332 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor_ 314 333 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_ … … 383 402 ENDIF 384 403 404 IF (PRESENT(read_access_)) THEN 405 CALL cxios_get_fieldgroup_read_access(fieldgroup_hdl%daddr, read_access__tmp) 406 read_access_ = read_access__tmp 407 ENDIF 408 385 409 IF (PRESENT(scale_factor_)) THEN 386 410 CALL cxios_get_fieldgroup_scale_factor(fieldgroup_hdl%daddr, scale_factor_) … … 408 432 ( fieldgroup_id, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 409 433 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 410 , scale_factor, standard_name, unit, valid_max, valid_min )434 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 411 435 412 436 IMPLICIT NONE … … 445 469 LOGICAL, OPTIONAL, INTENT(OUT) :: prec 446 470 LOGICAL(KIND=C_BOOL) :: prec_tmp 471 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 472 LOGICAL(KIND=C_BOOL) :: read_access_tmp 447 473 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 448 474 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 460 486 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 461 487 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 462 , scale_factor, standard_name, unit, valid_max, valid_min )488 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 463 489 464 490 END SUBROUTINE xios(is_defined_fieldgroup_attr) … … 467 493 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 468 494 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 469 , scale_factor, standard_name, unit, valid_max, valid_min )495 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 470 496 471 497 IMPLICIT NONE … … 503 529 LOGICAL, OPTIONAL, INTENT(OUT) :: prec 504 530 LOGICAL(KIND=C_BOOL) :: prec_tmp 531 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 532 LOGICAL(KIND=C_BOOL) :: read_access_tmp 505 533 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 506 534 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 517 545 ( fieldgroup_hdl, add_offset, axis_ref, default_value, detect_missing_value, domain_ref, enabled & 518 546 , field_ref, freq_offset, freq_op, grid_ref, group_ref, level, long_name, name, operation, prec & 519 , scale_factor, standard_name, unit, valid_max, valid_min )547 , read_access, scale_factor, standard_name, unit, valid_max, valid_min ) 520 548 521 549 END SUBROUTINE xios(is_defined_fieldgroup_attr_hdl) … … 524 552 ( fieldgroup_hdl, add_offset_, axis_ref_, default_value_, detect_missing_value_, domain_ref_ & 525 553 , enabled_, field_ref_, freq_offset_, freq_op_, grid_ref_, group_ref_, level_, long_name_, name_ & 526 , operation_, prec_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ ) 554 , operation_, prec_, read_access_, scale_factor_, standard_name_, unit_, valid_max_, valid_min_ & 555 ) 527 556 528 557 IMPLICIT NONE … … 560 589 LOGICAL, OPTIONAL, INTENT(OUT) :: prec_ 561 590 LOGICAL(KIND=C_BOOL) :: prec__tmp 591 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access_ 592 LOGICAL(KIND=C_BOOL) :: read_access__tmp 562 593 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor_ 563 594 LOGICAL(KIND=C_BOOL) :: scale_factor__tmp … … 651 682 ENDIF 652 683 684 IF (PRESENT(read_access_)) THEN 685 read_access__tmp = cxios_is_defined_fieldgroup_read_access(fieldgroup_hdl%daddr) 686 read_access_ = read_access__tmp 687 ENDIF 688 653 689 IF (PRESENT(scale_factor_)) THEN 654 690 scale_factor__tmp = cxios_is_defined_fieldgroup_scale_factor(fieldgroup_hdl%daddr)
Note: See TracChangeset
for help on using the changeset viewer.