Ignore:
Timestamp:
07/05/16 15:59:23 (8 years ago)
Author:
mhnguyen
Message:

Adding Fortran interface for reduce_axis_to_scalar

Test
+) On Curie
+) Only compilation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/interface/fortran_attr/ifile_attr.F90

    r802 r891  
    1212 
    1313  SUBROUTINE xios(set_file_attr)  & 
    14     ( file_id, append, compression_level, description, enabled, format, min_digits, mode, name, name_suffix  & 
    15     , output_freq, output_level, par_access, record_offset, split_freq, split_freq_format, sync_freq  & 
    16     , time_counter, time_counter_name, timeseries, ts_prefix, type ) 
     14    ( file_id, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     15    , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     16    , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    1717 
    1818    IMPLICIT NONE 
     
    2222      LOGICAL (KIND=C_BOOL) :: append_tmp 
    2323      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level 
     24      LOGICAL  , OPTIONAL, INTENT(IN) :: cyclic 
     25      LOGICAL (KIND=C_BOOL) :: cyclic_tmp 
    2426      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description 
    2527      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled 
     
    4547      CALL xios(get_file_handle)(file_id,file_hdl) 
    4648      CALL xios(set_file_attr_hdl_)   & 
    47       ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    48       , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     49      ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     50      , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    4951      , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    5052 
     
    5254 
    5355  SUBROUTINE xios(set_file_attr_hdl)  & 
    54     ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    55     , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     56    ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     57    , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    5658    , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    5759 
     
    6163      LOGICAL (KIND=C_BOOL) :: append_tmp 
    6264      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level 
     65      LOGICAL  , OPTIONAL, INTENT(IN) :: cyclic 
     66      LOGICAL (KIND=C_BOOL) :: cyclic_tmp 
    6367      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description 
    6468      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled 
     
    8387 
    8488      CALL xios(set_file_attr_hdl_)  & 
    85       ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    86       , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     89      ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     90      , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    8791      , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    8892 
     
    9094 
    9195  SUBROUTINE xios(set_file_attr_hdl_)   & 
    92     ( file_hdl, append_, compression_level_, description_, enabled_, format_, min_digits_, mode_  & 
    93     , name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_  & 
     96    ( file_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, min_digits_  & 
     97    , mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_  & 
    9498    , split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_  & 
    9599    , type_ ) 
     
    100104      LOGICAL (KIND=C_BOOL) :: append__tmp 
    101105      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level_ 
     106      LOGICAL  , OPTIONAL, INTENT(IN) :: cyclic_ 
     107      LOGICAL (KIND=C_BOOL) :: cyclic__tmp 
    102108      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_ 
    103109      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled_ 
     
    130136      ENDIF 
    131137 
     138      IF (PRESENT(cyclic_)) THEN 
     139        cyclic__tmp = cyclic_ 
     140        CALL cxios_set_file_cyclic(file_hdl%daddr, cyclic__tmp) 
     141      ENDIF 
     142 
    132143      IF (PRESENT(description_)) THEN 
    133144        CALL cxios_set_file_description(file_hdl%daddr, description_, len(description_)) 
     
    210221 
    211222  SUBROUTINE xios(get_file_attr)  & 
    212     ( file_id, append, compression_level, description, enabled, format, min_digits, mode, name, name_suffix  & 
    213     , output_freq, output_level, par_access, record_offset, split_freq, split_freq_format, sync_freq  & 
    214     , time_counter, time_counter_name, timeseries, ts_prefix, type ) 
     223    ( file_id, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     224    , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     225    , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    215226 
    216227    IMPLICIT NONE 
     
    220231      LOGICAL (KIND=C_BOOL) :: append_tmp 
    221232      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level 
     233      LOGICAL  , OPTIONAL, INTENT(OUT) :: cyclic 
     234      LOGICAL (KIND=C_BOOL) :: cyclic_tmp 
    222235      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description 
    223236      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled 
     
    243256      CALL xios(get_file_handle)(file_id,file_hdl) 
    244257      CALL xios(get_file_attr_hdl_)   & 
    245       ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    246       , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     258      ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     259      , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    247260      , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    248261 
     
    250263 
    251264  SUBROUTINE xios(get_file_attr_hdl)  & 
    252     ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    253     , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     265    ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     266    , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    254267    , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    255268 
     
    259272      LOGICAL (KIND=C_BOOL) :: append_tmp 
    260273      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level 
     274      LOGICAL  , OPTIONAL, INTENT(OUT) :: cyclic 
     275      LOGICAL (KIND=C_BOOL) :: cyclic_tmp 
    261276      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description 
    262277      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled 
     
    281296 
    282297      CALL xios(get_file_attr_hdl_)  & 
    283       ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    284       , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     298      ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     299      , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    285300      , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    286301 
     
    288303 
    289304  SUBROUTINE xios(get_file_attr_hdl_)   & 
    290     ( file_hdl, append_, compression_level_, description_, enabled_, format_, min_digits_, mode_  & 
    291     , name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_  & 
     305    ( file_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, min_digits_  & 
     306    , mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_  & 
    292307    , split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_  & 
    293308    , type_ ) 
     
    298313      LOGICAL (KIND=C_BOOL) :: append__tmp 
    299314      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level_ 
     315      LOGICAL  , OPTIONAL, INTENT(OUT) :: cyclic_ 
     316      LOGICAL (KIND=C_BOOL) :: cyclic__tmp 
    300317      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_ 
    301318      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled_ 
     
    328345      ENDIF 
    329346 
     347      IF (PRESENT(cyclic_)) THEN 
     348        CALL cxios_get_file_cyclic(file_hdl%daddr, cyclic__tmp) 
     349        cyclic_ = cyclic__tmp 
     350      ENDIF 
     351 
    330352      IF (PRESENT(description_)) THEN 
    331353        CALL cxios_get_file_description(file_hdl%daddr, description_, len(description_)) 
     
    408430 
    409431  SUBROUTINE xios(is_defined_file_attr)  & 
    410     ( file_id, append, compression_level, description, enabled, format, min_digits, mode, name, name_suffix  & 
    411     , output_freq, output_level, par_access, record_offset, split_freq, split_freq_format, sync_freq  & 
    412     , time_counter, time_counter_name, timeseries, ts_prefix, type ) 
     432    ( file_id, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     433    , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     434    , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    413435 
    414436    IMPLICIT NONE 
     
    419441      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 
    420442      LOGICAL(KIND=C_BOOL) :: compression_level_tmp 
     443      LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic 
     444      LOGICAL(KIND=C_BOOL) :: cyclic_tmp 
    421445      LOGICAL, OPTIONAL, INTENT(OUT) :: description 
    422446      LOGICAL(KIND=C_BOOL) :: description_tmp 
     
    460484      CALL xios(get_file_handle)(file_id,file_hdl) 
    461485      CALL xios(is_defined_file_attr_hdl_)   & 
    462       ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    463       , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     486      ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     487      , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    464488      , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    465489 
     
    467491 
    468492  SUBROUTINE xios(is_defined_file_attr_hdl)  & 
    469     ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    470     , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     493    ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     494    , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    471495    , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    472496 
     
    477501      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 
    478502      LOGICAL(KIND=C_BOOL) :: compression_level_tmp 
     503      LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic 
     504      LOGICAL(KIND=C_BOOL) :: cyclic_tmp 
    479505      LOGICAL, OPTIONAL, INTENT(OUT) :: description 
    480506      LOGICAL(KIND=C_BOOL) :: description_tmp 
     
    517543 
    518544      CALL xios(is_defined_file_attr_hdl_)  & 
    519       ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name  & 
    520       , name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
     545      ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode  & 
     546      , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format  & 
    521547      , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 
    522548 
     
    524550 
    525551  SUBROUTINE xios(is_defined_file_attr_hdl_)   & 
    526     ( file_hdl, append_, compression_level_, description_, enabled_, format_, min_digits_, mode_  & 
    527     , name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_  & 
     552    ( file_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, min_digits_  & 
     553    , mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_  & 
    528554    , split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_  & 
    529555    , type_ ) 
     
    535561      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level_ 
    536562      LOGICAL(KIND=C_BOOL) :: compression_level__tmp 
     563      LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic_ 
     564      LOGICAL(KIND=C_BOOL) :: cyclic__tmp 
    537565      LOGICAL, OPTIONAL, INTENT(OUT) :: description_ 
    538566      LOGICAL(KIND=C_BOOL) :: description__tmp 
     
    584612      ENDIF 
    585613 
     614      IF (PRESENT(cyclic_)) THEN 
     615        cyclic__tmp = cxios_is_defined_file_cyclic(file_hdl%daddr) 
     616        cyclic_ = cyclic__tmp 
     617      ENDIF 
     618 
    586619      IF (PRESENT(description_)) THEN 
    587620        description__tmp = cxios_is_defined_file_description(file_hdl%daddr) 
Note: See TracChangeset for help on using the changeset viewer.