Ignore:
Timestamp:
10/16/12 13:04:44 (12 years ago)
Author:
ymipsl
Message:

Major Update

  • redesign Type and attribute manipulation
  • add enumerate type and attribute
  • use blitz class array instead of boost class array

YM

File:
1 edited

Legend:

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

    r326 r369  
    1313  SUBROUTINE xios(set_filegroup_attr)  & 
    1414    ( filegroup_id, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    15     , split_freq, sync_freq, type ) 
     15    , par_access, split_freq, sync_freq, type ) 
    1616     
    1717    IMPLICIT NONE 
     
    2626      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq 
    2727      INTEGER  , OPTIONAL, INTENT(IN) :: output_level 
     28      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: par_access 
    2829      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq 
    2930      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq 
     
    3334      CALL xios(set_filegroup_attr_hdl_)   & 
    3435      ( filegroup_hdl, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    35       , split_freq, sync_freq, type ) 
     36      , par_access, split_freq, sync_freq, type ) 
    3637     
    3738  END SUBROUTINE xios(set_filegroup_attr) 
     
    3940  SUBROUTINE xios(set_filegroup_attr_hdl)  & 
    4041    ( filegroup_hdl, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    41     , split_freq, sync_freq, type ) 
     42    , par_access, split_freq, sync_freq, type ) 
    4243     
    4344    IMPLICIT NONE 
     
    5152      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq 
    5253      INTEGER  , OPTIONAL, INTENT(IN) :: output_level 
     54      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: par_access 
    5355      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq 
    5456      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq 
     
    5759      CALL xios(set_filegroup_attr_hdl_)  & 
    5860      ( filegroup_hdl, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    59       , split_freq, sync_freq, type ) 
     61      , par_access, split_freq, sync_freq, type ) 
    6062     
    6163  END SUBROUTINE xios(set_filegroup_attr_hdl) 
     
    6365  SUBROUTINE xios(set_filegroup_attr_hdl_)   & 
    6466    ( filegroup_hdl, description_, enabled_, group_ref_, name_, name_suffix_, output_freq_, output_level_  & 
    65     , split_freq_, sync_freq_, type_ ) 
     67    , par_access_, split_freq_, sync_freq_, type_ ) 
    6668     
    6769    IMPLICIT NONE 
     
    7577      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq_ 
    7678      INTEGER  , OPTIONAL, INTENT(IN) :: output_level_ 
     79      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: par_access_ 
    7780      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq_ 
    7881      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq_ 
     
    108111      ENDIF 
    109112       
     113      IF (PRESENT(par_access_)) THEN 
     114        CALL cxios_set_filegroup_par_access(filegroup_hdl%daddr, par_access_, len(par_access_)) 
     115      ENDIF 
     116       
    110117      IF (PRESENT(split_freq_)) THEN 
    111118        CALL cxios_set_filegroup_split_freq(filegroup_hdl%daddr, split_freq_, len(split_freq_)) 
     
    126133  SUBROUTINE xios(get_filegroup_attr)  & 
    127134    ( filegroup_id, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    128     , split_freq, sync_freq, type ) 
     135    , par_access, split_freq, sync_freq, type ) 
    129136     
    130137    IMPLICIT NONE 
     
    139146      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq 
    140147      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level 
     148      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: par_access 
    141149      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq 
    142150      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq 
     
    146154      CALL xios(get_filegroup_attr_hdl_)   & 
    147155      ( filegroup_hdl, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    148       , split_freq, sync_freq, type ) 
     156      , par_access, split_freq, sync_freq, type ) 
    149157     
    150158  END SUBROUTINE xios(get_filegroup_attr) 
     
    152160  SUBROUTINE xios(get_filegroup_attr_hdl)  & 
    153161    ( filegroup_hdl, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    154     , split_freq, sync_freq, type ) 
     162    , par_access, split_freq, sync_freq, type ) 
    155163     
    156164    IMPLICIT NONE 
     
    164172      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq 
    165173      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level 
     174      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: par_access 
    166175      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq 
    167176      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq 
     
    170179      CALL xios(get_filegroup_attr_hdl_)  & 
    171180      ( filegroup_hdl, description, enabled, group_ref, name, name_suffix, output_freq, output_level  & 
    172       , split_freq, sync_freq, type ) 
     181      , par_access, split_freq, sync_freq, type ) 
    173182     
    174183  END SUBROUTINE xios(get_filegroup_attr_hdl) 
     
    176185  SUBROUTINE xios(get_filegroup_attr_hdl_)   & 
    177186    ( filegroup_hdl, description_, enabled_, group_ref_, name_, name_suffix_, output_freq_, output_level_  & 
    178     , split_freq_, sync_freq_, type_ ) 
     187    , par_access_, split_freq_, sync_freq_, type_ ) 
    179188     
    180189    IMPLICIT NONE 
     
    188197      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq_ 
    189198      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level_ 
     199      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: par_access_ 
    190200      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq_ 
    191201      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq_ 
     
    221231      ENDIF 
    222232       
     233      IF (PRESENT(par_access_)) THEN 
     234        CALL cxios_get_filegroup_par_access(filegroup_hdl%daddr, par_access_, len(par_access_)) 
     235      ENDIF 
     236       
    223237      IF (PRESENT(split_freq_)) THEN 
    224238        CALL cxios_get_filegroup_split_freq(filegroup_hdl%daddr, split_freq_, len(split_freq_)) 
Note: See TracChangeset for help on using the changeset viewer.