Ignore:
Timestamp:
02/21/12 15:34:27 (12 years ago)
Author:
ymipsl
Message:
  • Adding new file attribut : sync_freq : flush file for a given frequency
  • Now, when a file has a single domain, domain id is not anymore appended to the coordinate name.

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/fortran_attr_interface/ifile_attr.F90

    r314 r318  
    1212   
    1313  SUBROUTINE xios(set_file_attr)  & 
    14     ( file_id, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     14    ( file_id, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     15    , type ) 
    1516     
    1617    IMPLICIT NONE 
     
    2425      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq 
    2526      INTEGER  , OPTIONAL, INTENT(IN) :: output_level 
     27      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq 
     28      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq 
    2629      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    2730       
    2831      CALL xios(get_file_handle)(file_id,file_hdl) 
    2932      CALL xios(set_file_attr_hdl_)   & 
    30       ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     33      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     34      , type ) 
    3135     
    3236  END SUBROUTINE xios(set_file_attr) 
    3337   
    3438  SUBROUTINE xios(set_file_attr_hdl)  & 
    35     ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     39    ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     40    , type ) 
    3641     
    3742    IMPLICIT NONE 
     
    4449      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq 
    4550      INTEGER  , OPTIONAL, INTENT(IN) :: output_level 
     51      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq 
     52      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq 
    4653      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    4754       
    4855      CALL xios(set_file_attr_hdl_)  & 
    49       ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     56      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     57      , type ) 
    5058     
    5159  END SUBROUTINE xios(set_file_attr_hdl) 
    5260   
    5361  SUBROUTINE xios(set_file_attr_hdl_)   & 
    54     ( file_hdl, description_, enabled_, name_, name_suffix_, output_freq_, output_level_, type_  & 
    55     ) 
     62    ( file_hdl, description_, enabled_, name_, name_suffix_, output_freq_, output_level_, split_freq_  & 
     63    , sync_freq_, type_ ) 
    5664     
    5765    IMPLICIT NONE 
     
    6472      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq_ 
    6573      INTEGER  , OPTIONAL, INTENT(IN) :: output_level_ 
     74      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq_ 
     75      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq_ 
    6676      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_ 
    6777       
     
    91101      ENDIF 
    92102       
     103      IF (PRESENT(split_freq_)) THEN 
     104        CALL cxios_set_file_split_freq(file_hdl%daddr, split_freq_, len(split_freq_)) 
     105      ENDIF 
     106       
     107      IF (PRESENT(sync_freq_)) THEN 
     108        CALL cxios_set_file_sync_freq(file_hdl%daddr, sync_freq_, len(sync_freq_)) 
     109      ENDIF 
     110       
    93111      IF (PRESENT(type_)) THEN 
    94112        CALL cxios_set_file_type(file_hdl%daddr, type_, len(type_)) 
     
    100118   
    101119  SUBROUTINE xios(get_file_attr)  & 
    102     ( file_id, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     120    ( file_id, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     121    , type ) 
    103122     
    104123    IMPLICIT NONE 
     
    112131      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq 
    113132      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level 
     133      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq 
     134      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq 
    114135      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    115136       
    116137      CALL xios(get_file_handle)(file_id,file_hdl) 
    117138      CALL xios(get_file_attr_hdl_)   & 
    118       ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     139      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     140      , type ) 
    119141     
    120142  END SUBROUTINE xios(get_file_attr) 
    121143   
    122144  SUBROUTINE xios(get_file_attr_hdl)  & 
    123     ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     145    ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     146    , type ) 
    124147     
    125148    IMPLICIT NONE 
     
    132155      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq 
    133156      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level 
     157      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq 
     158      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq 
    134159      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    135160       
    136161      CALL xios(get_file_attr_hdl_)  & 
    137       ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, type ) 
     162      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, split_freq, sync_freq  & 
     163      , type ) 
    138164     
    139165  END SUBROUTINE xios(get_file_attr_hdl) 
    140166   
    141167  SUBROUTINE xios(get_file_attr_hdl_)   & 
    142     ( file_hdl, description_, enabled_, name_, name_suffix_, output_freq_, output_level_, type_  & 
    143     ) 
     168    ( file_hdl, description_, enabled_, name_, name_suffix_, output_freq_, output_level_, split_freq_  & 
     169    , sync_freq_, type_ ) 
    144170     
    145171    IMPLICIT NONE 
     
    152178      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq_ 
    153179      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level_ 
     180      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq_ 
     181      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq_ 
    154182      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_ 
    155183       
     
    179207      ENDIF 
    180208       
     209      IF (PRESENT(split_freq_)) THEN 
     210        CALL cxios_get_file_split_freq(file_hdl%daddr, split_freq_, len(split_freq_)) 
     211      ENDIF 
     212       
     213      IF (PRESENT(sync_freq_)) THEN 
     214        CALL cxios_get_file_sync_freq(file_hdl%daddr, sync_freq_, len(sync_freq_)) 
     215      ENDIF 
     216       
    181217      IF (PRESENT(type_)) THEN 
    182218        CALL cxios_get_file_type(file_hdl%daddr, type_, len(type_)) 
Note: See TracChangeset for help on using the changeset viewer.