64 #if defined(SIZEOF_LONG_LONG) 367 const char *
const format,
int ecs_file_close_stream(ecs_file_t *f)
Close a ecs_file_t file descriptor's associated file.
Definition: ecs_file.c:790
typedefBEGIN_C_DECLS struct _ecs_file_t ecs_file_t
Pointer to opaque file descriptor.
Definition: ecs_file.h:40
char * ecs_file_gets(char *s, const int size, const ecs_file_t *f, int *line)
Formatted input from a text file (as fgets()).
Definition: ecs_file.c:1333
Definition: ecs_file.h:74
ecs_file_type_t
Definition: ecs_file.h:44
void ecs_file_set_big_endian(ecs_file_t *f)
Ensure that data is read or written in big-endian (network standard) format.
Definition: ecs_file.c:1194
#define BEGIN_C_DECLS
Definition: ecs_def.h:234
Definition: ecs_file.h:46
ecs_file_seek_t
Definition: ecs_file.h:72
int ecs_file_read_check_error(const ecs_file_t *f, const int line)
Test a file's error or EOF condition.
Definition: ecs_file.c:1263
char * ecs_file_gets_try(char *s, const int size, const ecs_file_t *f, int *line)
Formatted input from a text file if possible (as fgets()).
Definition: ecs_file.c:1359
void ecs_file_set_type(ecs_file_t *f, const ecs_file_type_t type)
Change a file's type.
Definition: ecs_file.c:1175
void ecs_file_rewind(ecs_file_t *f)
Sets the file position indicator to the beginning of the file.
Definition: ecs_file.c:971
int ecs_file_flush(ecs_file_t *f)
Force write of all user-space buffered data for a given file.
Definition: ecs_file.c:863
int ecs_file_isdir(const char *name)
Check if a directory exists.
Definition: ecs_file.c:1733
ecs_file_t * ecs_file_free(ecs_file_t *f)
Destroy a `ecs_file_t' descriptor and close the associated file.
Definition: ecs_file.c:628
int ecs_file_seek(ecs_file_t *f, const ecs_file_off_t offset, const ecs_file_seek_t whence)
Sets a file's position indicator.
Definition: ecs_file.c:1035
Definition: ecs_file.h:76
int ecs_file_get_swap_endian(const ecs_file_t *f)
Return a file's byte-swapping behavior.
Definition: ecs_file.c:1227
ecs_file_t * ecs_file_open(const char *name, const ecs_file_mode_t mode, const ecs_file_type_t type)
Create a `ecs_file_t' file descriptor and open the associated file.
Definition: ecs_file.c:576
Definition: ecs_file.h:57
void ecs_file_swap_endian(void *dest, const void *src, const size_t size, const size_t ni)
Convert data from "little-endian" to "big-endian" or the reverse.
Definition: ecs_file.c:1560
int ecs_file_eof(const ecs_file_t *f)
Test the end-of-file indicator for a given file.
Definition: ecs_file.c:835
ecs_file_t * ecs_file_free_descriptor(ecs_file_t *f)
Definition: ecs_file.c:650
Definition: ecs_file.h:48
Definition: ecs_file.h:47
int ecs_file_mkdir_default(const char *pathname)
Create a new directory using default permissions.
Definition: ecs_file.c:1615
int ecs_file_printf(const ecs_file_t *const f, const char *const format,...)
Formatted output to a text file (as fprintf()).
Definition: ecs_file.c:259
void ecs_file_set_swap_endian(ecs_file_t *f, const int swap)
Set a file's byte-swapping behavior.
Definition: ecs_file.c:1245
int ecs_file_isreg(const char *name)
Check if a file exists and is a regular file.
Definition: ecs_file.c:1688
Definition: ecs_file.h:58
const char * ecs_file_version_zlib(void)
Indicate Zlib version available at run time.
Definition: ecs_file.c:1775
Definition: ecs_file.h:56
#define END_C_DECLS
Definition: ecs_def.h:235
size_t ecs_file_write(const void *rec, const size_t size, const size_t ni, const ecs_file_t *f)
Write a binary C or Fortran type record.
Definition: ecs_file.c:1450
long long ecs_file_off_t
Definition: ecs_file.h:65
const char * ecs_file_version_build_zlib(void)
Indicate Zlib version available at compilation time.
Definition: ecs_file.c:1795
size_t ecs_file_read(void *rec, const size_t size, const size_t ni, const ecs_file_t *f)
Read a binary C or Fortran type record.
Definition: ecs_file.c:1388
ecs_file_type_t ecs_file_get_type(const ecs_file_t *f)
Return a file's type.
Definition: ecs_file.c:1157
const char * ecs_file_get_name(const ecs_file_t *f)
Return a file's name.
Definition: ecs_file.c:1141
int ecs_file_open_stream(ecs_file_t *f, ecs_file_mode_t mode)
Open `ecs_file_t' descriptor's associated file.
Definition: ecs_file.c:673
ecs_file_mode_t
Definition: ecs_file.h:54
ecs_file_off_t ecs_file_tell(ecs_file_t *f)
Obtain the current value of a file's position indicator.
Definition: ecs_file.c:910
size_t ecs_file_read_try(void *rec, const size_t size, const size_t ni, const ecs_file_t *f)
Read a binary C or Fortran type record.
Definition: ecs_file.c:1422
Definition: ecs_file.h:75