173#define SC_SCDA_HEADER_BYTES 128
174#define SC_SCDA_USER_STRING_BYTES 58
290 const char *filename,
291 const char *user_string,
size_t *len,
337 const char *user_string,
339 int root,
int *errcode);
395 const char *user_string,
397 size_t block_size,
int root,
398 int encode,
int *errcode);
475 const char *user_string,
479 int indirect,
int encode,
596 const char *user_string,
size_t *len,
601 int indirect,
int encode,
643 const char *filename,
644 char *user_string,
size_t *len,
714 size_t *len,
char *type,
717 int *decode,
int *errcode);
790 size_t block_size,
int root,
853 int indirect,
int *errcode);
980 int indirect,
int *errcode);
Dynamic containers such as lists, arrays, and hash tables.
#define sc_MPI_ERR_LASTCODE
Emulate SC_MPI_ERR_LASTCODE.
Definition: sc_mpi.h:321
sc3_MPI_Comm_t sc_MPI_Comm
Emulate an MPI communicator.
Definition: sc_mpi.h:391
sc3_MPI_Info_t sc_MPI_Info
Emulate an MPI Info object.
Definition: sc_mpi.h:392
sc_scda_fcontext_t * sc_scda_fread_inline_data(sc_scda_fcontext_t *fc, sc_array_t *data, int root, int *errcode)
Read the data of an inline data section.
sc_scda_fcontext_t * sc_scda_fread_section_header(sc_scda_fcontext_t *fc, char *user_string, size_t *len, char *type, size_t *elem_count, size_t *elem_size, int *decode, int *errcode)
Read the next file section header.
sc_scda_ferror
Error values for scdafile functions.
Definition: sc_scda.h:187
@ SC_SCDA_FERR_LASTCODE
to define own error codes for a higher level application that is using sc_scda functions
Definition: sc_scda.h:226
@ SC_SCDA_FERR_FILE_EXIST
file exists already
Definition: sc_scda.h:193
@ SC_SCDA_FERR_COUNT
A byte count error that may occur transiently on writing or the file is short on reading.
Definition: sc_scda.h:223
@ SC_SCDA_FERR_FORMAT
File not conforming to the scda format.
Definition: sc_scda.h:202
@ SC_SCDA_FERR_IN_USE
file currently open by other process
Definition: sc_scda.h:199
@ SC_SCDA_FERR_ACCESS
permission denied
Definition: sc_scda.h:195
@ SC_SCDA_FERR_BAD_FILE
invalid file name
Definition: sc_scda.h:194
@ SC_SCDA_FERR_USAGE
Incorrect workflow of an scda reading function.
Definition: sc_scda.h:203
@ SC_SCDA_FERR_SUCCESS
successful function call
Definition: sc_scda.h:188
@ SC_SCDA_FERR_QUOTA
quota exceeded
Definition: sc_scda.h:197
@ SC_SCDA_FERR_FILE
invalid file handle
Definition: sc_scda.h:189
@ SC_SCDA_FERR_INPUT
An argument to a scda file function is invalid.
Definition: sc_scda.h:219
@ SC_SCDA_FERR_IO
other I/O error
Definition: sc_scda.h:200
@ SC_SCDA_FERR_NOT_SAME
collective argument not identical
Definition: sc_scda.h:190
@ SC_SCDA_FERR_AMODE
access mode error
Definition: sc_scda.h:191
@ SC_SCDA_FERR_NO_SUCH_FILE
file does not exist
Definition: sc_scda.h:192
@ SC_SCDA_FERR_DECODE
The decode parameter to sc_scda_fread_section_header is true but the file section header(s) encounter...
Definition: sc_scda.h:214
@ SC_SCDA_FERR_READ_ONLY
read only file (system)
Definition: sc_scda.h:198
@ SC_SCDA_FERR_UNKNOWN
unknown I/O error
Definition: sc_scda.h:201
@ SC_SCDA_FERR_NO_SPACE
not enough space
Definition: sc_scda.h:196
sc_scda_fcontext_t * sc_scda_fread_array_data(sc_scda_fcontext_t *fc, sc_array_t *array_data, sc_array_t *elem_counts, size_t elem_size, int indirect, int *errcode)
Read the data of a fixed-size array.
uint64_t sc_scda_ulong
Type for element counts and sizes.
Definition: sc_scda.h:180
sc_scda_fcontext_t * sc_scda_fread_varray_sizes(sc_scda_fcontext_t *fc, sc_array_t *elem_sizes, sc_array_t *elem_counts, int *errcode)
Read the element sizes of a variable-size array.
sc_scda_fcontext_t * sc_scda_fread_block_data(sc_scda_fcontext_t *fc, sc_array_t *block_data, size_t block_size, int root, int *errcode)
Read the data of a block of given size.
sc_scda_fcontext_t * sc_scda_fopen_read(sc_MPI_Comm mpicomm, const char *filename, char *user_string, size_t *len, sc_scda_fopen_options_t *opt, int *errcode)
Open a file for reading and read the file header from the file.
struct sc_scda_fopen_options sc_scda_fopen_options_t
An options struct for the functions sc_scda_fopen_write and sc_scda_fopen_read.
sc_scda_fcontext_t * sc_scda_fwrite_block(sc_scda_fcontext_t *fc, const char *user_string, size_t *len, sc_array_t *block_data, size_t block_size, int root, int encode, int *errcode)
Write a fixed-size block file section.
sc_scda_fcontext_t * sc_scda_fwrite_inline(sc_scda_fcontext_t *fc, const char *user_string, size_t *len, sc_array_t *inline_data, int root, int *errcode)
Write an inline data section.
enum sc_scda_ferror sc_scda_ferror_t
Error values for scdafile functions.
int sc_scda_proc_sizes(sc_array_t *elem_sizes, sc_array_t *elem_counts, sc_array_t *proc_sizes, int *errcode)
This is a collective function to determine the processor sizes.
sc_scda_fcontext_t * sc_scda_fopen_write(sc_MPI_Comm mpicomm, const char *filename, const char *user_string, size_t *len, sc_scda_fopen_options_t *opt, int *errcode)
Open a file for writing and write the file header to the file.
struct sc_scda_fcontext sc_scda_fcontext_t
Opaque context used for writing a libsc data file.
Definition: sc_scda.h:177
int sc_scda_fclose(sc_scda_fcontext_t *fc, int *errcode)
Close a file opened for parallel write/read and the free the file context.
int sc_scda_ferror_string(int errcode, char *str, int *len)
Translate a sc_scda error code to an error string.
sc_scda_fcontext_t * sc_scda_fread_varray_data(sc_scda_fcontext_t *fc, sc_array_t *array_data, sc_array_t *elem_counts, sc_array_t *elem_sizes, sc_array_t *proc_sizes, int indirect, int *errcode)
Read the data of a variable-size array.
sc_scda_fcontext_t * sc_scda_fwrite_varray(sc_scda_fcontext_t *fc, const char *user_string, size_t *len, sc_array_t *array_data, sc_array_t *elem_counts, sc_array_t *elem_sizes, sc_array_t *proc_sizes, int indirect, int encode, int *errcode)
Write a variable-size array file section.
sc_scda_fcontext_t * sc_scda_fwrite_array(sc_scda_fcontext_t *fc, const char *user_string, size_t *len, sc_array_t *array_data, sc_array_t *elem_counts, size_t elem_size, int indirect, int encode, int *errcode)
Write a fixed-size array file section.
The sc_array object provides a dynamic array of equal-size elements.
Definition: sc_containers.h:91
An options struct for the functions sc_scda_fopen_write and sc_scda_fopen_read.
Definition: sc_scda.h:237
sc_MPI_Info info
info that is passed to MPI_File_open
Definition: sc_scda.h:238