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/file_interface_attr.F90

    r1492 r2616  
    191191 
    192192 
     193    SUBROUTINE cxios_set_file_gatherer(file_hdl, gatherer, gatherer_size) BIND(C) 
     194      USE ISO_C_BINDING 
     195      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     196      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: gatherer 
     197      INTEGER  (kind = C_INT)     , VALUE        :: gatherer_size 
     198    END SUBROUTINE cxios_set_file_gatherer 
     199 
     200    SUBROUTINE cxios_get_file_gatherer(file_hdl, gatherer, gatherer_size) BIND(C) 
     201      USE ISO_C_BINDING 
     202      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     203      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: gatherer 
     204      INTEGER  (kind = C_INT)     , VALUE        :: gatherer_size 
     205    END SUBROUTINE cxios_get_file_gatherer 
     206 
     207    FUNCTION cxios_is_defined_file_gatherer(file_hdl) BIND(C) 
     208      USE ISO_C_BINDING 
     209      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_gatherer 
     210      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     211    END FUNCTION cxios_is_defined_file_gatherer 
     212 
     213 
    193214    SUBROUTINE cxios_set_file_min_digits(file_hdl, min_digits) BIND(C) 
    194215      USE ISO_C_BINDING 
     
    334355 
    335356 
     357    SUBROUTINE cxios_set_file_pool_gatherer(file_hdl, pool_gatherer, pool_gatherer_size) BIND(C) 
     358      USE ISO_C_BINDING 
     359      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     360      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: pool_gatherer 
     361      INTEGER  (kind = C_INT)     , VALUE        :: pool_gatherer_size 
     362    END SUBROUTINE cxios_set_file_pool_gatherer 
     363 
     364    SUBROUTINE cxios_get_file_pool_gatherer(file_hdl, pool_gatherer, pool_gatherer_size) BIND(C) 
     365      USE ISO_C_BINDING 
     366      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     367      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: pool_gatherer 
     368      INTEGER  (kind = C_INT)     , VALUE        :: pool_gatherer_size 
     369    END SUBROUTINE cxios_get_file_pool_gatherer 
     370 
     371    FUNCTION cxios_is_defined_file_pool_gatherer(file_hdl) BIND(C) 
     372      USE ISO_C_BINDING 
     373      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_pool_gatherer 
     374      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     375    END FUNCTION cxios_is_defined_file_pool_gatherer 
     376 
     377 
     378    SUBROUTINE cxios_set_file_pool_reader(file_hdl, pool_reader, pool_reader_size) BIND(C) 
     379      USE ISO_C_BINDING 
     380      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     381      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: pool_reader 
     382      INTEGER  (kind = C_INT)     , VALUE        :: pool_reader_size 
     383    END SUBROUTINE cxios_set_file_pool_reader 
     384 
     385    SUBROUTINE cxios_get_file_pool_reader(file_hdl, pool_reader, pool_reader_size) BIND(C) 
     386      USE ISO_C_BINDING 
     387      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     388      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: pool_reader 
     389      INTEGER  (kind = C_INT)     , VALUE        :: pool_reader_size 
     390    END SUBROUTINE cxios_get_file_pool_reader 
     391 
     392    FUNCTION cxios_is_defined_file_pool_reader(file_hdl) BIND(C) 
     393      USE ISO_C_BINDING 
     394      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_pool_reader 
     395      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     396    END FUNCTION cxios_is_defined_file_pool_reader 
     397 
     398 
     399    SUBROUTINE cxios_set_file_pool_writer(file_hdl, pool_writer, pool_writer_size) BIND(C) 
     400      USE ISO_C_BINDING 
     401      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     402      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: pool_writer 
     403      INTEGER  (kind = C_INT)     , VALUE        :: pool_writer_size 
     404    END SUBROUTINE cxios_set_file_pool_writer 
     405 
     406    SUBROUTINE cxios_get_file_pool_writer(file_hdl, pool_writer, pool_writer_size) BIND(C) 
     407      USE ISO_C_BINDING 
     408      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     409      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: pool_writer 
     410      INTEGER  (kind = C_INT)     , VALUE        :: pool_writer_size 
     411    END SUBROUTINE cxios_get_file_pool_writer 
     412 
     413    FUNCTION cxios_is_defined_file_pool_writer(file_hdl) BIND(C) 
     414      USE ISO_C_BINDING 
     415      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_pool_writer 
     416      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     417    END FUNCTION cxios_is_defined_file_pool_writer 
     418 
     419 
    336420    SUBROUTINE cxios_set_file_read_metadata_par(file_hdl, read_metadata_par) BIND(C) 
    337421      USE ISO_C_BINDING 
     
    351435      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
    352436    END FUNCTION cxios_is_defined_file_read_metadata_par 
     437 
     438 
     439    SUBROUTINE cxios_set_file_reader(file_hdl, reader, reader_size) BIND(C) 
     440      USE ISO_C_BINDING 
     441      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     442      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: reader 
     443      INTEGER  (kind = C_INT)     , VALUE        :: reader_size 
     444    END SUBROUTINE cxios_set_file_reader 
     445 
     446    SUBROUTINE cxios_get_file_reader(file_hdl, reader, reader_size) BIND(C) 
     447      USE ISO_C_BINDING 
     448      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     449      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: reader 
     450      INTEGER  (kind = C_INT)     , VALUE        :: reader_size 
     451    END SUBROUTINE cxios_get_file_reader 
     452 
     453    FUNCTION cxios_is_defined_file_reader(file_hdl) BIND(C) 
     454      USE ISO_C_BINDING 
     455      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_reader 
     456      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     457    END FUNCTION cxios_is_defined_file_reader 
    353458 
    354459 
     
    666771 
    667772 
     773    SUBROUTINE cxios_set_file_using_server2(file_hdl, using_server2) BIND(C) 
     774      USE ISO_C_BINDING 
     775      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     776      LOGICAL (KIND=C_BOOL)      , VALUE :: using_server2 
     777    END SUBROUTINE cxios_set_file_using_server2 
     778 
     779    SUBROUTINE cxios_get_file_using_server2(file_hdl, using_server2) BIND(C) 
     780      USE ISO_C_BINDING 
     781      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     782      LOGICAL (KIND=C_BOOL)             :: using_server2 
     783    END SUBROUTINE cxios_get_file_using_server2 
     784 
     785    FUNCTION cxios_is_defined_file_using_server2(file_hdl) BIND(C) 
     786      USE ISO_C_BINDING 
     787      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_using_server2 
     788      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     789    END FUNCTION cxios_is_defined_file_using_server2 
     790 
     791 
    668792    SUBROUTINE cxios_set_file_uuid_format(file_hdl, uuid_format, uuid_format_size) BIND(C) 
    669793      USE ISO_C_BINDING 
     
    707831    END FUNCTION cxios_is_defined_file_uuid_name 
    708832 
     833 
     834    SUBROUTINE cxios_set_file_writer(file_hdl, writer, writer_size) BIND(C) 
     835      USE ISO_C_BINDING 
     836      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     837      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: writer 
     838      INTEGER  (kind = C_INT)     , VALUE        :: writer_size 
     839    END SUBROUTINE cxios_set_file_writer 
     840 
     841    SUBROUTINE cxios_get_file_writer(file_hdl, writer, writer_size) BIND(C) 
     842      USE ISO_C_BINDING 
     843      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     844      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: writer 
     845      INTEGER  (kind = C_INT)     , VALUE        :: writer_size 
     846    END SUBROUTINE cxios_get_file_writer 
     847 
     848    FUNCTION cxios_is_defined_file_writer(file_hdl) BIND(C) 
     849      USE ISO_C_BINDING 
     850      LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_writer 
     851      INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 
     852    END FUNCTION cxios_is_defined_file_writer 
     853 
    709854  END INTERFACE 
    710855 
Note: See TracChangeset for help on using the changeset viewer.