Ignore:
Timestamp:
03/19/24 14:23:16 (4 months ago)
Author:
jderouillat
Message:

Add XIOS3 fortran interfaces (resources management, chunking, compression)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS3/trunk/src/interface/fortran_attr/domaingroup_interface_attr.F90

    r1626 r2616  
    3131 
    3232 
     33    SUBROUTINE cxios_set_domaingroup_area_1d(domaingroup_hdl, area_1d, extent) BIND(C) 
     34      USE ISO_C_BINDING 
     35      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl 
     36      REAL (KIND=C_DOUBLE)     , DIMENSION(*) :: area_1d 
     37      INTEGER (kind = C_INT), DIMENSION(*)     :: extent 
     38    END SUBROUTINE cxios_set_domaingroup_area_1d 
     39 
     40    SUBROUTINE cxios_get_domaingroup_area_1d(domaingroup_hdl, area_1d, extent) BIND(C) 
     41      USE ISO_C_BINDING 
     42      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl 
     43      REAL (KIND=C_DOUBLE)     , DIMENSION(*) :: area_1d 
     44      INTEGER (kind = C_INT), DIMENSION(*)     :: extent 
     45    END SUBROUTINE cxios_get_domaingroup_area_1d 
     46 
     47    FUNCTION cxios_is_defined_domaingroup_area_1d(domaingroup_hdl) BIND(C) 
     48      USE ISO_C_BINDING 
     49      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_area_1d 
     50      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     51    END FUNCTION cxios_is_defined_domaingroup_area_1d 
     52 
     53 
     54    SUBROUTINE cxios_set_domaingroup_area_2d(domaingroup_hdl, area_2d, extent) BIND(C) 
     55      USE ISO_C_BINDING 
     56      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl 
     57      REAL (KIND=C_DOUBLE)     , DIMENSION(*) :: area_2d 
     58      INTEGER (kind = C_INT), DIMENSION(*)     :: extent 
     59    END SUBROUTINE cxios_set_domaingroup_area_2d 
     60 
     61    SUBROUTINE cxios_get_domaingroup_area_2d(domaingroup_hdl, area_2d, extent) BIND(C) 
     62      USE ISO_C_BINDING 
     63      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl 
     64      REAL (KIND=C_DOUBLE)     , DIMENSION(*) :: area_2d 
     65      INTEGER (kind = C_INT), DIMENSION(*)     :: extent 
     66    END SUBROUTINE cxios_get_domaingroup_area_2d 
     67 
     68    FUNCTION cxios_is_defined_domaingroup_area_2d(domaingroup_hdl) BIND(C) 
     69      USE ISO_C_BINDING 
     70      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_area_2d 
     71      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     72    END FUNCTION cxios_is_defined_domaingroup_area_2d 
     73 
     74 
    3375    SUBROUTINE cxios_set_domaingroup_bounds_lat_1d(domaingroup_hdl, bounds_lat_1d, extent) BIND(C) 
    3476      USE ISO_C_BINDING 
     
    157199 
    158200 
     201    SUBROUTINE cxios_set_domaingroup_chunking_weight_i(domaingroup_hdl, chunking_weight_i) BIND(C) 
     202      USE ISO_C_BINDING 
     203      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     204      REAL (KIND=C_DOUBLE)      , VALUE :: chunking_weight_i 
     205    END SUBROUTINE cxios_set_domaingroup_chunking_weight_i 
     206 
     207    SUBROUTINE cxios_get_domaingroup_chunking_weight_i(domaingroup_hdl, chunking_weight_i) BIND(C) 
     208      USE ISO_C_BINDING 
     209      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     210      REAL (KIND=C_DOUBLE)             :: chunking_weight_i 
     211    END SUBROUTINE cxios_get_domaingroup_chunking_weight_i 
     212 
     213    FUNCTION cxios_is_defined_domaingroup_chunking_weight_i(domaingroup_hdl) BIND(C) 
     214      USE ISO_C_BINDING 
     215      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_chunking_weight_i 
     216      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     217    END FUNCTION cxios_is_defined_domaingroup_chunking_weight_i 
     218 
     219 
     220    SUBROUTINE cxios_set_domaingroup_chunking_weight_j(domaingroup_hdl, chunking_weight_j) BIND(C) 
     221      USE ISO_C_BINDING 
     222      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     223      REAL (KIND=C_DOUBLE)      , VALUE :: chunking_weight_j 
     224    END SUBROUTINE cxios_set_domaingroup_chunking_weight_j 
     225 
     226    SUBROUTINE cxios_get_domaingroup_chunking_weight_j(domaingroup_hdl, chunking_weight_j) BIND(C) 
     227      USE ISO_C_BINDING 
     228      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     229      REAL (KIND=C_DOUBLE)             :: chunking_weight_j 
     230    END SUBROUTINE cxios_get_domaingroup_chunking_weight_j 
     231 
     232    FUNCTION cxios_is_defined_domaingroup_chunking_weight_j(domaingroup_hdl) BIND(C) 
     233      USE ISO_C_BINDING 
     234      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_chunking_weight_j 
     235      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     236    END FUNCTION cxios_is_defined_domaingroup_chunking_weight_j 
     237 
     238 
    159239    SUBROUTINE cxios_set_domaingroup_comment(domaingroup_hdl, comment, comment_size) BIND(C) 
    160240      USE ISO_C_BINDING 
     
    784864 
    785865 
     866    SUBROUTINE cxios_set_domaingroup_nvertex_name(domaingroup_hdl, nvertex_name, nvertex_name_size) BIND(C) 
     867      USE ISO_C_BINDING 
     868      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     869      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: nvertex_name 
     870      INTEGER  (kind = C_INT)     , VALUE        :: nvertex_name_size 
     871    END SUBROUTINE cxios_set_domaingroup_nvertex_name 
     872 
     873    SUBROUTINE cxios_get_domaingroup_nvertex_name(domaingroup_hdl, nvertex_name, nvertex_name_size) BIND(C) 
     874      USE ISO_C_BINDING 
     875      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     876      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: nvertex_name 
     877      INTEGER  (kind = C_INT)     , VALUE        :: nvertex_name_size 
     878    END SUBROUTINE cxios_get_domaingroup_nvertex_name 
     879 
     880    FUNCTION cxios_is_defined_domaingroup_nvertex_name(domaingroup_hdl) BIND(C) 
     881      USE ISO_C_BINDING 
     882      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_nvertex_name 
     883      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     884    END FUNCTION cxios_is_defined_domaingroup_nvertex_name 
     885 
     886 
    786887    SUBROUTINE cxios_set_domaingroup_prec(domaingroup_hdl, prec) BIND(C) 
    787888      USE ISO_C_BINDING 
Note: See TracChangeset for help on using the changeset viewer.