Ignore:
Timestamp:
06/03/13 11:21:19 (11 years ago)
Author:
ymipsl
Message:

Enhancement : Add fortran interface to know if an attribute is set or not
ex : CALL xios_is_defined_field_attr("field_A",enabled=ok)

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/interface/fortran_attr/axis_interface_attr.f90

    r415 r432  
    2323    END SUBROUTINE cxios_get_axis_long_name 
    2424     
     25    FUNCTION cxios_is_defined_axis_long_name(axis_hdl ) BIND(C) 
     26      USE ISO_C_BINDING 
     27      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_long_name 
     28      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     29    END FUNCTION cxios_is_defined_axis_long_name 
     30     
    2531     
    2632    SUBROUTINE cxios_set_axis_name(axis_hdl, name, name_size) BIND(C) 
     
    3844    END SUBROUTINE cxios_get_axis_name 
    3945     
     46    FUNCTION cxios_is_defined_axis_name(axis_hdl ) BIND(C) 
     47      USE ISO_C_BINDING 
     48      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_name 
     49      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     50    END FUNCTION cxios_is_defined_axis_name 
     51     
    4052     
    4153    SUBROUTINE cxios_set_axis_positive(axis_hdl, positive, positive_size) BIND(C) 
     
    5365    END SUBROUTINE cxios_get_axis_positive 
    5466     
     67    FUNCTION cxios_is_defined_axis_positive(axis_hdl ) BIND(C) 
     68      USE ISO_C_BINDING 
     69      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_positive 
     70      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     71    END FUNCTION cxios_is_defined_axis_positive 
     72     
    5573     
    5674    SUBROUTINE cxios_set_axis_size(axis_hdl, size) BIND(C) 
     
    6583      INTEGER (KIND=C_INT)             :: size 
    6684    END SUBROUTINE cxios_get_axis_size 
     85     
     86    FUNCTION cxios_is_defined_axis_size(axis_hdl ) BIND(C) 
     87      USE ISO_C_BINDING 
     88      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_size 
     89      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     90    END FUNCTION cxios_is_defined_axis_size 
    6791     
    6892     
     
    81105    END SUBROUTINE cxios_get_axis_standard_name 
    82106     
     107    FUNCTION cxios_is_defined_axis_standard_name(axis_hdl ) BIND(C) 
     108      USE ISO_C_BINDING 
     109      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_standard_name 
     110      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     111    END FUNCTION cxios_is_defined_axis_standard_name 
     112     
    83113     
    84114    SUBROUTINE cxios_set_axis_unit(axis_hdl, unit, unit_size) BIND(C) 
     
    95125      INTEGER  (kind = C_INT)     , VALUE        :: unit_size 
    96126    END SUBROUTINE cxios_get_axis_unit 
     127     
     128    FUNCTION cxios_is_defined_axis_unit(axis_hdl ) BIND(C) 
     129      USE ISO_C_BINDING 
     130      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_unit 
     131      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     132    END FUNCTION cxios_is_defined_axis_unit 
    97133     
    98134     
     
    111147    END SUBROUTINE cxios_get_axis_value 
    112148     
     149    FUNCTION cxios_is_defined_axis_value(axis_hdl ) BIND(C) 
     150      USE ISO_C_BINDING 
     151      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_value 
     152      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     153    END FUNCTION cxios_is_defined_axis_value 
     154     
    113155     
    114156    SUBROUTINE cxios_set_axis_zoom_begin(axis_hdl, zoom_begin) BIND(C) 
     
    124166    END SUBROUTINE cxios_get_axis_zoom_begin 
    125167     
     168    FUNCTION cxios_is_defined_axis_zoom_begin(axis_hdl ) BIND(C) 
     169      USE ISO_C_BINDING 
     170      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_zoom_begin 
     171      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     172    END FUNCTION cxios_is_defined_axis_zoom_begin 
     173     
    126174     
    127175    SUBROUTINE cxios_set_axis_zoom_end(axis_hdl, zoom_end) BIND(C) 
     
    137185    END SUBROUTINE cxios_get_axis_zoom_end 
    138186     
     187    FUNCTION cxios_is_defined_axis_zoom_end(axis_hdl ) BIND(C) 
     188      USE ISO_C_BINDING 
     189      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_zoom_end 
     190      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     191    END FUNCTION cxios_is_defined_axis_zoom_end 
     192     
    139193     
    140194    SUBROUTINE cxios_set_axis_zoom_size(axis_hdl, zoom_size) BIND(C) 
     
    149203      INTEGER (KIND=C_INT)             :: zoom_size 
    150204    END SUBROUTINE cxios_get_axis_zoom_size 
     205     
     206    FUNCTION cxios_is_defined_axis_zoom_size(axis_hdl ) BIND(C) 
     207      USE ISO_C_BINDING 
     208      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_zoom_size 
     209      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     210    END FUNCTION cxios_is_defined_axis_zoom_size 
    151211     
    152212     
Note: See TracChangeset for help on using the changeset viewer.