Ignore:
Timestamp:
01/10/17 14:36:29 (7 years ago)
Author:
oabramkina
Message:

Intermeadiate version for merging with new server functionalities.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_olga/src/interface/fortran_attr/iinterpolate_domain_attr.F90

    r966 r1021  
    1212 
    1313  SUBROUTINE xios(set_interpolate_domain_attr)  & 
    14     ( interpolate_domain_id, file, order, renormalize ) 
     14    ( interpolate_domain_id, file, mode, order, renormalize, weight_filename, write_weight ) 
    1515 
    1616    IMPLICIT NONE 
     
    1818      CHARACTER(LEN=*), INTENT(IN) ::interpolate_domain_id 
    1919      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: file 
     20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode 
    2021      INTEGER  , OPTIONAL, INTENT(IN) :: order 
    2122      LOGICAL  , OPTIONAL, INTENT(IN) :: renormalize 
    2223      LOGICAL (KIND=C_BOOL) :: renormalize_tmp 
     24      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: weight_filename 
     25      LOGICAL  , OPTIONAL, INTENT(IN) :: write_weight 
     26      LOGICAL (KIND=C_BOOL) :: write_weight_tmp 
    2327 
    2428      CALL xios(get_interpolate_domain_handle) & 
    2529      (interpolate_domain_id,interpolate_domain_hdl) 
    2630      CALL xios(set_interpolate_domain_attr_hdl_)   & 
    27       ( interpolate_domain_hdl, file, order, renormalize ) 
     31      ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    2832 
    2933  END SUBROUTINE xios(set_interpolate_domain_attr) 
    3034 
    3135  SUBROUTINE xios(set_interpolate_domain_attr_hdl)  & 
    32     ( interpolate_domain_hdl, file, order, renormalize ) 
     36    ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    3337 
    3438    IMPLICIT NONE 
    3539      TYPE(txios(interpolate_domain)) , INTENT(IN) :: interpolate_domain_hdl 
    3640      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: file 
     41      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode 
    3742      INTEGER  , OPTIONAL, INTENT(IN) :: order 
    3843      LOGICAL  , OPTIONAL, INTENT(IN) :: renormalize 
    3944      LOGICAL (KIND=C_BOOL) :: renormalize_tmp 
     45      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: weight_filename 
     46      LOGICAL  , OPTIONAL, INTENT(IN) :: write_weight 
     47      LOGICAL (KIND=C_BOOL) :: write_weight_tmp 
    4048 
    4149      CALL xios(set_interpolate_domain_attr_hdl_)  & 
    42       ( interpolate_domain_hdl, file, order, renormalize ) 
     50      ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    4351 
    4452  END SUBROUTINE xios(set_interpolate_domain_attr_hdl) 
    4553 
    4654  SUBROUTINE xios(set_interpolate_domain_attr_hdl_)   & 
    47     ( interpolate_domain_hdl, file_, order_, renormalize_ ) 
     55    ( interpolate_domain_hdl, file_, mode_, order_, renormalize_, weight_filename_, write_weight_  & 
     56     ) 
    4857 
    4958    IMPLICIT NONE 
    5059      TYPE(txios(interpolate_domain)) , INTENT(IN) :: interpolate_domain_hdl 
    5160      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: file_ 
     61      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode_ 
    5262      INTEGER  , OPTIONAL, INTENT(IN) :: order_ 
    5363      LOGICAL  , OPTIONAL, INTENT(IN) :: renormalize_ 
    5464      LOGICAL (KIND=C_BOOL) :: renormalize__tmp 
     65      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: weight_filename_ 
     66      LOGICAL  , OPTIONAL, INTENT(IN) :: write_weight_ 
     67      LOGICAL (KIND=C_BOOL) :: write_weight__tmp 
    5568 
    5669      IF (PRESENT(file_)) THEN 
    5770        CALL cxios_set_interpolate_domain_file & 
    5871      (interpolate_domain_hdl%daddr, file_, len(file_)) 
     72      ENDIF 
     73 
     74      IF (PRESENT(mode_)) THEN 
     75        CALL cxios_set_interpolate_domain_mode & 
     76      (interpolate_domain_hdl%daddr, mode_, len(mode_)) 
    5977      ENDIF 
    6078 
     
    7088      ENDIF 
    7189 
     90      IF (PRESENT(weight_filename_)) THEN 
     91        CALL cxios_set_interpolate_domain_weight_filename & 
     92      (interpolate_domain_hdl%daddr, weight_filename_, len(weight_filename_)) 
     93      ENDIF 
     94 
     95      IF (PRESENT(write_weight_)) THEN 
     96        write_weight__tmp = write_weight_ 
     97        CALL cxios_set_interpolate_domain_write_weight & 
     98      (interpolate_domain_hdl%daddr, write_weight__tmp) 
     99      ENDIF 
     100 
    72101  END SUBROUTINE xios(set_interpolate_domain_attr_hdl_) 
    73102 
    74103  SUBROUTINE xios(get_interpolate_domain_attr)  & 
    75     ( interpolate_domain_id, file, order, renormalize ) 
     104    ( interpolate_domain_id, file, mode, order, renormalize, weight_filename, write_weight ) 
    76105 
    77106    IMPLICIT NONE 
     
    79108      CHARACTER(LEN=*), INTENT(IN) ::interpolate_domain_id 
    80109      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: file 
     110      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode 
    81111      INTEGER  , OPTIONAL, INTENT(OUT) :: order 
    82112      LOGICAL  , OPTIONAL, INTENT(OUT) :: renormalize 
    83113      LOGICAL (KIND=C_BOOL) :: renormalize_tmp 
     114      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: weight_filename 
     115      LOGICAL  , OPTIONAL, INTENT(OUT) :: write_weight 
     116      LOGICAL (KIND=C_BOOL) :: write_weight_tmp 
    84117 
    85118      CALL xios(get_interpolate_domain_handle) & 
    86119      (interpolate_domain_id,interpolate_domain_hdl) 
    87120      CALL xios(get_interpolate_domain_attr_hdl_)   & 
    88       ( interpolate_domain_hdl, file, order, renormalize ) 
     121      ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    89122 
    90123  END SUBROUTINE xios(get_interpolate_domain_attr) 
    91124 
    92125  SUBROUTINE xios(get_interpolate_domain_attr_hdl)  & 
    93     ( interpolate_domain_hdl, file, order, renormalize ) 
     126    ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    94127 
    95128    IMPLICIT NONE 
    96129      TYPE(txios(interpolate_domain)) , INTENT(IN) :: interpolate_domain_hdl 
    97130      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: file 
     131      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode 
    98132      INTEGER  , OPTIONAL, INTENT(OUT) :: order 
    99133      LOGICAL  , OPTIONAL, INTENT(OUT) :: renormalize 
    100134      LOGICAL (KIND=C_BOOL) :: renormalize_tmp 
     135      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: weight_filename 
     136      LOGICAL  , OPTIONAL, INTENT(OUT) :: write_weight 
     137      LOGICAL (KIND=C_BOOL) :: write_weight_tmp 
    101138 
    102139      CALL xios(get_interpolate_domain_attr_hdl_)  & 
    103       ( interpolate_domain_hdl, file, order, renormalize ) 
     140      ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    104141 
    105142  END SUBROUTINE xios(get_interpolate_domain_attr_hdl) 
    106143 
    107144  SUBROUTINE xios(get_interpolate_domain_attr_hdl_)   & 
    108     ( interpolate_domain_hdl, file_, order_, renormalize_ ) 
     145    ( interpolate_domain_hdl, file_, mode_, order_, renormalize_, weight_filename_, write_weight_  & 
     146     ) 
    109147 
    110148    IMPLICIT NONE 
    111149      TYPE(txios(interpolate_domain)) , INTENT(IN) :: interpolate_domain_hdl 
    112150      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: file_ 
     151      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode_ 
    113152      INTEGER  , OPTIONAL, INTENT(OUT) :: order_ 
    114153      LOGICAL  , OPTIONAL, INTENT(OUT) :: renormalize_ 
    115154      LOGICAL (KIND=C_BOOL) :: renormalize__tmp 
     155      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: weight_filename_ 
     156      LOGICAL  , OPTIONAL, INTENT(OUT) :: write_weight_ 
     157      LOGICAL (KIND=C_BOOL) :: write_weight__tmp 
    116158 
    117159      IF (PRESENT(file_)) THEN 
    118160        CALL cxios_get_interpolate_domain_file & 
    119161      (interpolate_domain_hdl%daddr, file_, len(file_)) 
     162      ENDIF 
     163 
     164      IF (PRESENT(mode_)) THEN 
     165        CALL cxios_get_interpolate_domain_mode & 
     166      (interpolate_domain_hdl%daddr, mode_, len(mode_)) 
    120167      ENDIF 
    121168 
     
    131178      ENDIF 
    132179 
     180      IF (PRESENT(weight_filename_)) THEN 
     181        CALL cxios_get_interpolate_domain_weight_filename & 
     182      (interpolate_domain_hdl%daddr, weight_filename_, len(weight_filename_)) 
     183      ENDIF 
     184 
     185      IF (PRESENT(write_weight_)) THEN 
     186        CALL cxios_get_interpolate_domain_write_weight & 
     187      (interpolate_domain_hdl%daddr, write_weight__tmp) 
     188        write_weight_ = write_weight__tmp 
     189      ENDIF 
     190 
    133191  END SUBROUTINE xios(get_interpolate_domain_attr_hdl_) 
    134192 
    135193  SUBROUTINE xios(is_defined_interpolate_domain_attr)  & 
    136     ( interpolate_domain_id, file, order, renormalize ) 
     194    ( interpolate_domain_id, file, mode, order, renormalize, weight_filename, write_weight ) 
    137195 
    138196    IMPLICIT NONE 
     
    141199      LOGICAL, OPTIONAL, INTENT(OUT) :: file 
    142200      LOGICAL(KIND=C_BOOL) :: file_tmp 
     201      LOGICAL, OPTIONAL, INTENT(OUT) :: mode 
     202      LOGICAL(KIND=C_BOOL) :: mode_tmp 
    143203      LOGICAL, OPTIONAL, INTENT(OUT) :: order 
    144204      LOGICAL(KIND=C_BOOL) :: order_tmp 
    145205      LOGICAL, OPTIONAL, INTENT(OUT) :: renormalize 
    146206      LOGICAL(KIND=C_BOOL) :: renormalize_tmp 
     207      LOGICAL, OPTIONAL, INTENT(OUT) :: weight_filename 
     208      LOGICAL(KIND=C_BOOL) :: weight_filename_tmp 
     209      LOGICAL, OPTIONAL, INTENT(OUT) :: write_weight 
     210      LOGICAL(KIND=C_BOOL) :: write_weight_tmp 
    147211 
    148212      CALL xios(get_interpolate_domain_handle) & 
    149213      (interpolate_domain_id,interpolate_domain_hdl) 
    150214      CALL xios(is_defined_interpolate_domain_attr_hdl_)   & 
    151       ( interpolate_domain_hdl, file, order, renormalize ) 
     215      ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    152216 
    153217  END SUBROUTINE xios(is_defined_interpolate_domain_attr) 
    154218 
    155219  SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl)  & 
    156     ( interpolate_domain_hdl, file, order, renormalize ) 
     220    ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    157221 
    158222    IMPLICIT NONE 
     
    160224      LOGICAL, OPTIONAL, INTENT(OUT) :: file 
    161225      LOGICAL(KIND=C_BOOL) :: file_tmp 
     226      LOGICAL, OPTIONAL, INTENT(OUT) :: mode 
     227      LOGICAL(KIND=C_BOOL) :: mode_tmp 
    162228      LOGICAL, OPTIONAL, INTENT(OUT) :: order 
    163229      LOGICAL(KIND=C_BOOL) :: order_tmp 
    164230      LOGICAL, OPTIONAL, INTENT(OUT) :: renormalize 
    165231      LOGICAL(KIND=C_BOOL) :: renormalize_tmp 
     232      LOGICAL, OPTIONAL, INTENT(OUT) :: weight_filename 
     233      LOGICAL(KIND=C_BOOL) :: weight_filename_tmp 
     234      LOGICAL, OPTIONAL, INTENT(OUT) :: write_weight 
     235      LOGICAL(KIND=C_BOOL) :: write_weight_tmp 
    166236 
    167237      CALL xios(is_defined_interpolate_domain_attr_hdl_)  & 
    168       ( interpolate_domain_hdl, file, order, renormalize ) 
     238      ( interpolate_domain_hdl, file, mode, order, renormalize, weight_filename, write_weight ) 
    169239 
    170240  END SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl) 
    171241 
    172242  SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl_)   & 
    173     ( interpolate_domain_hdl, file_, order_, renormalize_ ) 
     243    ( interpolate_domain_hdl, file_, mode_, order_, renormalize_, weight_filename_, write_weight_  & 
     244     ) 
    174245 
    175246    IMPLICIT NONE 
     
    177248      LOGICAL, OPTIONAL, INTENT(OUT) :: file_ 
    178249      LOGICAL(KIND=C_BOOL) :: file__tmp 
     250      LOGICAL, OPTIONAL, INTENT(OUT) :: mode_ 
     251      LOGICAL(KIND=C_BOOL) :: mode__tmp 
    179252      LOGICAL, OPTIONAL, INTENT(OUT) :: order_ 
    180253      LOGICAL(KIND=C_BOOL) :: order__tmp 
    181254      LOGICAL, OPTIONAL, INTENT(OUT) :: renormalize_ 
    182255      LOGICAL(KIND=C_BOOL) :: renormalize__tmp 
     256      LOGICAL, OPTIONAL, INTENT(OUT) :: weight_filename_ 
     257      LOGICAL(KIND=C_BOOL) :: weight_filename__tmp 
     258      LOGICAL, OPTIONAL, INTENT(OUT) :: write_weight_ 
     259      LOGICAL(KIND=C_BOOL) :: write_weight__tmp 
    183260 
    184261      IF (PRESENT(file_)) THEN 
     
    188265      ENDIF 
    189266 
     267      IF (PRESENT(mode_)) THEN 
     268        mode__tmp = cxios_is_defined_interpolate_domain_mode & 
     269      (interpolate_domain_hdl%daddr) 
     270        mode_ = mode__tmp 
     271      ENDIF 
     272 
    190273      IF (PRESENT(order_)) THEN 
    191274        order__tmp = cxios_is_defined_interpolate_domain_order & 
     
    200283      ENDIF 
    201284 
     285      IF (PRESENT(weight_filename_)) THEN 
     286        weight_filename__tmp = cxios_is_defined_interpolate_domain_weight_filename & 
     287      (interpolate_domain_hdl%daddr) 
     288        weight_filename_ = weight_filename__tmp 
     289      ENDIF 
     290 
     291      IF (PRESENT(write_weight_)) THEN 
     292        write_weight__tmp = cxios_is_defined_interpolate_domain_write_weight & 
     293      (interpolate_domain_hdl%daddr) 
     294        write_weight_ = write_weight__tmp 
     295      ENDIF 
     296 
    202297  END SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl_) 
    203298 
Note: See TracChangeset for help on using the changeset viewer.