Ignore:
Timestamp:
06/28/22 11:44:19 (2 years ago)
Author:
jderouillat
Message:

Added extract_domain interface. Updated all interfaces, normalize some private attributes names of domain

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/interface/fortran_attr/iscalar_attr.F90

    r1941 r2338  
    1212 
    1313  SUBROUTINE xios(set_scalar_attr)  & 
    14     ( scalar_id, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     14    ( scalar_id, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    1515    , prec, scalar_ref, standard_name, unit, value ) 
    1616 
     
    2626      LOGICAL  , OPTIONAL, INTENT(IN) :: mask 
    2727      LOGICAL (KIND=C_BOOL) :: mask_tmp 
     28      INTEGER  , OPTIONAL, INTENT(IN) :: n 
    2829      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 
    2930      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: positive 
     
    3738      (scalar_id,scalar_hdl) 
    3839      CALL xios(set_scalar_attr_hdl_)   & 
    39       ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     40      ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    4041      , prec, scalar_ref, standard_name, unit, value ) 
    4142 
     
    4344 
    4445  SUBROUTINE xios(set_scalar_attr_hdl)  & 
    45     ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     46    ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    4647    , prec, scalar_ref, standard_name, unit, value ) 
    4748 
     
    5657      LOGICAL  , OPTIONAL, INTENT(IN) :: mask 
    5758      LOGICAL (KIND=C_BOOL) :: mask_tmp 
     59      INTEGER  , OPTIONAL, INTENT(IN) :: n 
    5860      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 
    5961      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: positive 
     
    6567 
    6668      CALL xios(set_scalar_attr_hdl_)  & 
    67       ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     69      ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    6870      , prec, scalar_ref, standard_name, unit, value ) 
    6971 
     
    7173 
    7274  SUBROUTINE xios(set_scalar_attr_hdl_)   & 
    73     ( scalar_hdl, axis_type_, bounds_, bounds_name_, comment_, label_, long_name_, mask_, name_  & 
     75    ( scalar_hdl, axis_type_, bounds_, bounds_name_, comment_, label_, long_name_, mask_, n_, name_  & 
    7476    , positive_, prec_, scalar_ref_, standard_name_, unit_, value_ ) 
    7577 
     
    8486      LOGICAL  , OPTIONAL, INTENT(IN) :: mask_ 
    8587      LOGICAL (KIND=C_BOOL) :: mask__tmp 
     88      INTEGER  , OPTIONAL, INTENT(IN) :: n_ 
    8689      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_ 
    8790      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: positive_ 
     
    128131      ENDIF 
    129132 
     133      IF (PRESENT(n_)) THEN 
     134        CALL cxios_set_scalar_n & 
     135      (scalar_hdl%daddr, n_) 
     136      ENDIF 
     137 
    130138      IF (PRESENT(name_)) THEN 
    131139        CALL cxios_set_scalar_name & 
     
    166174 
    167175  SUBROUTINE xios(get_scalar_attr)  & 
    168     ( scalar_id, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     176    ( scalar_id, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    169177    , prec, scalar_ref, standard_name, unit, value ) 
    170178 
     
    180188      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask 
    181189      LOGICAL (KIND=C_BOOL) :: mask_tmp 
     190      INTEGER  , OPTIONAL, INTENT(OUT) :: n 
    182191      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 
    183192      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: positive 
     
    191200      (scalar_id,scalar_hdl) 
    192201      CALL xios(get_scalar_attr_hdl_)   & 
    193       ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     202      ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    194203      , prec, scalar_ref, standard_name, unit, value ) 
    195204 
     
    197206 
    198207  SUBROUTINE xios(get_scalar_attr_hdl)  & 
    199     ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     208    ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    200209    , prec, scalar_ref, standard_name, unit, value ) 
    201210 
     
    210219      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask 
    211220      LOGICAL (KIND=C_BOOL) :: mask_tmp 
     221      INTEGER  , OPTIONAL, INTENT(OUT) :: n 
    212222      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 
    213223      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: positive 
     
    219229 
    220230      CALL xios(get_scalar_attr_hdl_)  & 
    221       ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     231      ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    222232      , prec, scalar_ref, standard_name, unit, value ) 
    223233 
     
    225235 
    226236  SUBROUTINE xios(get_scalar_attr_hdl_)   & 
    227     ( scalar_hdl, axis_type_, bounds_, bounds_name_, comment_, label_, long_name_, mask_, name_  & 
     237    ( scalar_hdl, axis_type_, bounds_, bounds_name_, comment_, label_, long_name_, mask_, n_, name_  & 
    228238    , positive_, prec_, scalar_ref_, standard_name_, unit_, value_ ) 
    229239 
     
    238248      LOGICAL  , OPTIONAL, INTENT(OUT) :: mask_ 
    239249      LOGICAL (KIND=C_BOOL) :: mask__tmp 
     250      INTEGER  , OPTIONAL, INTENT(OUT) :: n_ 
    240251      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_ 
    241252      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: positive_ 
     
    282293      ENDIF 
    283294 
     295      IF (PRESENT(n_)) THEN 
     296        CALL cxios_get_scalar_n & 
     297      (scalar_hdl%daddr, n_) 
     298      ENDIF 
     299 
    284300      IF (PRESENT(name_)) THEN 
    285301        CALL cxios_get_scalar_name & 
     
    320336 
    321337  SUBROUTINE xios(is_defined_scalar_attr)  & 
    322     ( scalar_id, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     338    ( scalar_id, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    323339    , prec, scalar_ref, standard_name, unit, value ) 
    324340 
     
    340356      LOGICAL, OPTIONAL, INTENT(OUT) :: mask 
    341357      LOGICAL(KIND=C_BOOL) :: mask_tmp 
     358      LOGICAL, OPTIONAL, INTENT(OUT) :: n 
     359      LOGICAL(KIND=C_BOOL) :: n_tmp 
    342360      LOGICAL, OPTIONAL, INTENT(OUT) :: name 
    343361      LOGICAL(KIND=C_BOOL) :: name_tmp 
     
    358376      (scalar_id,scalar_hdl) 
    359377      CALL xios(is_defined_scalar_attr_hdl_)   & 
    360       ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     378      ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    361379      , prec, scalar_ref, standard_name, unit, value ) 
    362380 
     
    364382 
    365383  SUBROUTINE xios(is_defined_scalar_attr_hdl)  & 
    366     ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     384    ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    367385    , prec, scalar_ref, standard_name, unit, value ) 
    368386 
     
    383401      LOGICAL, OPTIONAL, INTENT(OUT) :: mask 
    384402      LOGICAL(KIND=C_BOOL) :: mask_tmp 
     403      LOGICAL, OPTIONAL, INTENT(OUT) :: n 
     404      LOGICAL(KIND=C_BOOL) :: n_tmp 
    385405      LOGICAL, OPTIONAL, INTENT(OUT) :: name 
    386406      LOGICAL(KIND=C_BOOL) :: name_tmp 
     
    399419 
    400420      CALL xios(is_defined_scalar_attr_hdl_)  & 
    401       ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, name, positive  & 
     421      ( scalar_hdl, axis_type, bounds, bounds_name, comment, label, long_name, mask, n, name, positive  & 
    402422      , prec, scalar_ref, standard_name, unit, value ) 
    403423 
     
    405425 
    406426  SUBROUTINE xios(is_defined_scalar_attr_hdl_)   & 
    407     ( scalar_hdl, axis_type_, bounds_, bounds_name_, comment_, label_, long_name_, mask_, name_  & 
     427    ( scalar_hdl, axis_type_, bounds_, bounds_name_, comment_, label_, long_name_, mask_, n_, name_  & 
    408428    , positive_, prec_, scalar_ref_, standard_name_, unit_, value_ ) 
    409429 
     
    424444      LOGICAL, OPTIONAL, INTENT(OUT) :: mask_ 
    425445      LOGICAL(KIND=C_BOOL) :: mask__tmp 
     446      LOGICAL, OPTIONAL, INTENT(OUT) :: n_ 
     447      LOGICAL(KIND=C_BOOL) :: n__tmp 
    426448      LOGICAL, OPTIONAL, INTENT(OUT) :: name_ 
    427449      LOGICAL(KIND=C_BOOL) :: name__tmp 
     
    481503      ENDIF 
    482504 
     505      IF (PRESENT(n_)) THEN 
     506        n__tmp = cxios_is_defined_scalar_n & 
     507      (scalar_hdl%daddr) 
     508        n_ = n__tmp 
     509      ENDIF 
     510 
    483511      IF (PRESENT(name_)) THEN 
    484512        name__tmp = cxios_is_defined_scalar_name & 
Note: See TracChangeset for help on using the changeset viewer.