106#if defined(SIZEOF_LONG_LONG)
347 cs_gnum_t global_num_start,
348 cs_gnum_t global_num_end);
385 cs_gnum_t global_num_start,
386 cs_gnum_t global_num_end);
423 cs_gnum_t global_num_start,
424 cs_gnum_t global_num_end);
561 MPI_Comm *block_comm,
683 cs_gnum_t global_num_start,
684 cs_gnum_t global_num_end,
685 size_t buf_block_size,
725 cs_gnum_t cur_range[2]);
#define BEGIN_C_DECLS
Definition cs_defs.h:467
#define END_C_DECLS
Definition cs_defs.h:468
cs_file_mpi_positionning_t cs_file_get_mpi_io_positionning(void)
Get the positionning method for MPI-IO.
Definition cs_file.c:3236
void cs_file_dump(const cs_file_t *f)
Dump the metadata of a file structure in human readable form.
Definition cs_file.c:2789
cs_file_off_t cs_file_tell(cs_file_t *f)
Return the position of the file pointer.
Definition cs_file.c:2748
void cs_file_set_mpi_io_positionning(cs_file_mpi_positionning_t positionning)
Set the positionning method for MPI-IO.
Definition cs_file.c:3260
int cs_file_get_swap_endian(const cs_file_t *f)
Return a file's byte-swapping behavior.
Definition cs_file.c:2071
void cs_file_get_default_access(cs_file_mode_t mode, cs_file_access_t *method, MPI_Info *hints)
Get the default options for file access.
Definition cs_file.c:2887
void cs_file_serializer_destroy(cs_file_serializer_t **s)
Destroy a cs_file_serializer_t structure.
Definition cs_file.c:3410
const char * cs_file_get_name(const cs_file_t *f)
Return a file's name.
Definition cs_file.c:2020
struct _cs_file_serializer_t cs_file_serializer_t
Definition cs_file.h:59
cs_file_t * cs_file_open(const char *name, cs_file_mode_t mode, cs_file_access_t method, MPI_Info hints, MPI_Comm block_comm, MPI_Comm comm)
Create a file descriptor and open the associated file.
Definition cs_file.c:1789
cs_file_serializer_t * cs_file_serializer_create(size_t size, size_t stride, cs_gnum_t global_num_start, cs_gnum_t global_num_end, size_t buf_block_size, void *buf, MPI_Comm comm)
Create a cs_file_serializer_t structure.
Definition cs_file.c:3378
int cs_file_isdir(const char *path)
Check if a directory exists.
Definition cs_file.c:3696
void cs_file_set_default_comm(int block_rank_step, int block_min_size, MPI_Comm comm)
Set default MPI communicator values for file access.
Definition cs_file.c:3112
long long cs_file_off_t
Definition cs_file.h:107
size_t cs_file_write_global(cs_file_t *f, const void *buf, size_t size, size_t ni)
Write global data to a file.
Definition cs_file.c:2210
cs_file_t * cs_file_free(cs_file_t *f)
Destroy a file descriptor and close the associated file.
Definition cs_file.c:1991
cs_file_t * cs_file_open_default(const char *name, cs_file_mode_t mode)
Create a file descriptor and open the associated file, using the default file communicator and access...
Definition cs_file.c:1907
cs_file_access_t
Definition cs_file.h:84
@ CS_FILE_MPI_INDEPENDENT
Definition cs_file.h:89
@ CS_FILE_MPI_COLLECTIVE
Definition cs_file.h:91
@ CS_FILE_MPI_NON_COLLECTIVE
Definition cs_file.h:90
@ CS_FILE_STDIO_SERIAL
Definition cs_file.h:87
@ CS_FILE_STDIO_PARALLEL
Definition cs_file.h:88
@ CS_FILE_DEFAULT
Definition cs_file.h:86
size_t cs_file_read_block(cs_file_t *f, void *buf, size_t size, size_t stride, cs_gnum_t global_num_start, cs_gnum_t global_num_end)
Read data to a buffer, distributing a contiguous part of it to each process associated with a file.
Definition cs_file.c:2340
void cs_file_free_defaults(void)
Free the default options for file access.
Definition cs_file.c:2841
void cs_file_set_big_endian(cs_file_t *f)
Ensure that data is read or written in big-endian (network standard) format.
Definition cs_file.c:2037
struct _cs_file_t cs_file_t
Definition cs_file.h:54
size_t cs_file_write_block_buffer(cs_file_t *f, void *buf, size_t size, size_t stride, cs_gnum_t global_num_start, cs_gnum_t global_num_end)
Write data to a file, each associated process providing a contiguous part of this data.
Definition cs_file.c:2556
cs_file_off_t cs_file_size(const char *path)
Return the size of a file.
Definition cs_file.c:3802
int cs_file_remove(const char *path)
Remove a file if it exists and is a regular file.
Definition cs_file.c:3854
int cs_file_seek(cs_file_t *f, cs_file_off_t offset, cs_file_seek_t whence)
Update the file pointer according to whence.
Definition cs_file.c:2659
int cs_file_isreg(const char *path)
Check if a file exists and is a regular file.
Definition cs_file.c:3650
void cs_file_defaults_info(void)
Print information on default options for file access.
Definition cs_file.c:3272
cs_file_mode_t
Definition cs_file.h:64
@ CS_FILE_MODE_APPEND
Definition cs_file.h:68
@ CS_FILE_MODE_WRITE
Definition cs_file.h:67
@ CS_FILE_MODE_READ
Definition cs_file.h:66
size_t cs_file_read_global(cs_file_t *f, void *buf, size_t size, size_t ni)
Read global data from a file, distributing it to all processes associated with that file.
Definition cs_file.c:2112
void cs_file_get_default_comm(int *block_rank_step, int *block_min_size, MPI_Comm *block_comm, MPI_Comm *comm)
Get default MPI communicator values for file access.
Definition cs_file.c:3049
MPI_Comm cs_file_block_comm(int block_rank_step, MPI_Comm comm)
Create an MPI communicator for distributed block parallel IO.
Definition cs_file.c:3170
char ** cs_file_listdir(const char *path)
List files inside a directory.
Definition cs_file.c:3743
void cs_file_set_default_access(cs_file_mode_t mode, cs_file_access_t method, MPI_Info hints)
Set the default options for file access.
Definition cs_file.c:2953
int cs_file_mkdir_default(const char *path)
Create a new directory using default permissions.
Definition cs_file.c:3575
cs_file_seek_t
Definition cs_file.h:74
@ CS_FILE_SEEK_SET
Definition cs_file.h:76
@ CS_FILE_SEEK_END
Definition cs_file.h:78
@ CS_FILE_SEEK_CUR
Definition cs_file.h:77
cs_file_t * cs_file_open_serial(const char *name, cs_file_mode_t mode)
Create a file descriptor and open the associated file, using the serial IO on the root rank.
Definition cs_file.c:1961
size_t cs_file_write_block(cs_file_t *f, const void *buf, size_t size, size_t stride, cs_gnum_t global_num_start, cs_gnum_t global_num_end)
Write data to a file, each associated process providing a contiguous part of this data.
Definition cs_file.c:2456
const char * cs_file_access_name[]
Definition cs_file.c:280
const char * cs_file_mpi_positionning_name[]
Definition cs_file.c:290
void * cs_file_serializer_advance(cs_file_serializer_t *s, cs_gnum_t cur_range[2])
Advance a cs_file_serializer_t structure.
Definition cs_file.c:3443
void cs_file_set_swap_endian(cs_file_t *f, int swap)
Set a file's byte-swapping behavior.
Definition cs_file.c:2088
cs_file_mpi_positionning_t
Definition cs_file.h:97
@ CS_FILE_MPI_INDIVIDUAL_POINTERS
Definition cs_file.h:100
@ CS_FILE_MPI_EXPLICIT_OFFSETS
Definition cs_file.h:99