Skip to main content

Crate om_file_format_sys

Crate om_file_format_sys 

Source

Structs§

OmDecoder_indexRead_t
OmDecoder_t
OmEncoder_t
OmHeaderV1_t
Legacy files only contain one 2D array with attributes in the header File content: Header, look-up-table, compressed data
OmHeaderV3_t
Newer version only contain magic number “OM” and the version 3
OmRange_t
OmTrailer_t
Trailer only present in version 3 files
OmVariableArrayV3_t
OmVariableV3_t
=========== Structures describing the data layout ===============
_G_fpos64_t
_G_fpos_t
_IO_FILE
_IO_codecvt
_IO_cookie_io_functions_t
_IO_marker
_IO_wide_data
__BindgenBitfieldUnit
__BindgenComplex
__fsid_t
__mbstate_t
__va_list_tag
max_align_t

Enums§

OmCompression_t
Compression types
OmDataType_t
Data types
OmError_t
OmHeaderType_t
OmMemoryLayout_t
Memory layout types

Constants§

BUFSIZ
EOF
FILENAME_MAX
FOPEN_MAX
INT8_MAX
INT8_MIN
INT16_MAX
INT16_MIN
INT32_MAX
INT32_MIN
INTPTR_MAX
INTPTR_MIN
INT_FAST8_MAX
INT_FAST8_MIN
INT_FAST16_MAX
INT_FAST16_MIN
INT_FAST32_MAX
INT_FAST32_MIN
INT_LEAST8_MAX
INT_LEAST8_MIN
INT_LEAST16_MAX
INT_LEAST16_MIN
INT_LEAST32_MAX
INT_LEAST32_MIN
LUT_CHUNK_COUNT
L_ctermid
L_tmpnam
P4D_MAX
PTRDIFF_MAX
PTRDIFF_MIN
P_tmpdir
SEEK_CUR
SEEK_END
SEEK_SET
SIG_ATOMIC_MAX
SIG_ATOMIC_MIN
SIZE_MAX
TMP_MAX
UINT8_MAX
UINT16_MAX
UINT32_MAX
UINTPTR_MAX
UINT_FAST8_MAX
UINT_FAST16_MAX
UINT_FAST32_MAX
UINT_LEAST8_MAX
UINT_LEAST16_MAX
UINT_LEAST32_MAX
WINT_MAX
WINT_MIN
_ATFILE_SOURCE
_BITS_STDINT_INTN_H
_BITS_STDINT_LEAST_H
_BITS_STDINT_UINTN_H
_BITS_STDIO_LIM_H
_BITS_TIME64_H
_BITS_TYPESIZES_H
_BITS_TYPES_H
_BITS_WCHAR_H
_DEFAULT_SOURCE
_FEATURES_H
_IOFBF
_IOLBF
_IONBF
_IO_EOF_SEEN
_IO_ERR_SEEN
_IO_USER_LOCK
_POSIX_C_SOURCE
_POSIX_SOURCE
_STDC_PREDEF_H
_STDINT_H
_STDIO_H
_SYS_CDEFS_H
__FD_SETSIZE
__FILE_defined
__GLIBC_MINOR__
__GLIBC_USE_C23_STRTOL
__GLIBC_USE_DEPRECATED_GETS
__GLIBC_USE_DEPRECATED_SCANF
__GLIBC_USE_IEC_60559_BFP_EXT
__GLIBC_USE_IEC_60559_BFP_EXT_C23
__GLIBC_USE_IEC_60559_EXT
__GLIBC_USE_IEC_60559_FUNCS_EXT
__GLIBC_USE_IEC_60559_FUNCS_EXT_C23
__GLIBC_USE_IEC_60559_TYPES_EXT
__GLIBC_USE_ISOC2Y
__GLIBC_USE_ISOC23
__GLIBC_USE_LIB_EXT2
__GLIBC__
__GNU_LIBRARY__
__HAVE_DISTINCT_FLOAT16
__HAVE_DISTINCT_FLOAT32
__HAVE_DISTINCT_FLOAT64
__HAVE_DISTINCT_FLOAT32X
__HAVE_DISTINCT_FLOAT64X
__HAVE_DISTINCT_FLOAT128
__HAVE_DISTINCT_FLOAT128X
__HAVE_FLOAT16
__HAVE_FLOAT32
__HAVE_FLOAT64
__HAVE_FLOAT32X
__HAVE_FLOAT64X
__HAVE_FLOAT64X_LONG_DOUBLE
__HAVE_FLOAT128
__HAVE_FLOAT128X
__HAVE_FLOATN_NOT_TYPEDEF
__HAVE_GENERIC_SELECTION
__INO_T_MATCHES_INO64_T
__KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64
__LDOUBLE_REDIRECTS_TO_FLOAT128_ABI
__OFF_T_MATCHES_OFF64_T
__RLIM_T_MATCHES_RLIM64_T
__STATFS_MATCHES_STATFS64
__STDC_IEC_559_COMPLEX__
__STDC_IEC_559__
__STDC_IEC_60559_BFP__
__STDC_IEC_60559_COMPLEX__
__STDC_ISO_10646__
__SYSCALL_WORDSIZE
__TIMESIZE
__USE_ATFILE
__USE_FORTIFY_LEVEL
__USE_ISOC11
__USE_ISOC95
__USE_ISOC99
__USE_MISC
__USE_POSIX
__USE_POSIX2
__USE_POSIX199309
__USE_POSIX199506
__USE_POSIX_IMPLICITLY
__USE_TIME_BITS64
__USE_XOPEN2K
__USE_XOPEN2K8
__USE_XOPEN2K24
__WORDSIZE
__WORDSIZE_TIME64_COMPAT32
____FILE_defined
_____fpos64_t_defined
_____fpos_t_defined
____mbstate_t_defined
__bool_true_false_are_defined
__cookie_io_functions_t_defined
__glibc_c99_flexarr_available
__struct_FILE_defined
false_
true_

Statics§

stderr⚠
stdin⚠
stdout⚠

Functions§

__asprintf⚠
__getdelim⚠
__overflow⚠
__uflow⚠
_om_variable_memory_layout⚠
Check if a variable is legacy or version 3 array of scalar. Legacy files are the entire header containing magic number and version.
_p4bits8⚠
_p4bits16⚠
_p4bits32⚠
_p4bits64⚠
_p4bitsx8⚠
_p4bitsx16⚠
_p4bitsx32⚠
_p4bitsx64⚠
_p4d1dec8⚠
_p4d1dec16⚠
_p4d1dec32⚠
_p4d1dec64⚠
_p4d1dec128v16⚠
_p4d1dec128v32⚠
_p4d1dec256v32⚠
_p4ddec8⚠
_p4ddec16⚠
_p4ddec32⚠
_p4ddec64⚠
_p4ddec128v16⚠
_p4ddec128v32⚠
_p4ddec256v32⚠
_p4dec8⚠
_p4dec16⚠
_p4dec32⚠
_p4dec64⚠
_p4dec128v16⚠
_p4dec128v32⚠
_p4dec128v64⚠
_p4enc8⚠
_p4enc16⚠
_p4enc32⚠
_p4enc64⚠
_p4enc128v16⚠
_p4enc128v32⚠
_p4enc128v64⚠
_p4enc256v32⚠
_p4zdec8⚠
_p4zdec16⚠
_p4zdec32⚠
_p4zdec64⚠
_p4zdec128v16⚠
_p4zdec128v32⚠
_p4zdec256v32⚠
asprintf⚠
bvzdec8⚠
bvzdec16⚠
bvzdec32⚠
bvzdec64⚠
bvzenc8⚠
bvzenc16⚠
bvzenc32⚠
bvzenc64⚠
bvzzdec8⚠
bvzzdec16⚠
bvzzdec32⚠
bvzzdec64⚠
bvzzenc8⚠
bvzzenc16⚠
bvzzenc32⚠
bvzzenc64⚠
clearerr⚠
clearerr_unlocked⚠
ctermid⚠
delta2d_decode8⚠
delta2d_decode16⚠
delta2d_decode32⚠
delta2d_decode64⚠
delta2d_decode_xor⚠
delta2d_decode_xor_double⚠
delta2d_encode8⚠
delta2d_encode16⚠
delta2d_encode32⚠
delta2d_encode64⚠
delta2d_encode_xor⚠
delta2d_encode_xor_double⚠
dprintf⚠
fclose⚠
fdopen⚠
feof⚠
feof_unlocked⚠
ferror⚠
ferror_unlocked⚠
fflush⚠
fflush_unlocked⚠
fgetc⚠
fgetc_unlocked⚠
fgetpos⚠
fgets⚠
fileno⚠
fileno_unlocked⚠
flockfile⚠
fmemopen⚠
fopen⚠
fopencookie⚠
fp2dfcmdec8⚠
fp2dfcmdec16⚠
fp2dfcmdec32⚠
fp2dfcmdec64⚠
fp2dfcmenc8⚠
fp2dfcmenc16⚠
fp2dfcmenc32⚠
fp2dfcmenc64⚠
fpdfcmdec8⚠
fpdfcmdec16⚠
fpdfcmdec32⚠
fpdfcmdec64⚠
fpdfcmenc8⚠
fpdfcmenc16⚠
fpdfcmenc32⚠
fpdfcmenc64⚠
fpfcmdec8⚠
fpfcmdec16⚠
fpfcmdec32⚠
fpfcmdec64⚠
fpfcmenc8⚠
fpfcmenc16⚠
fpfcmenc32⚠
fpfcmenc64⚠
fpgdec8⚠
fpgdec16⚠
fpgdec32⚠
fpgdec64⚠
fpgenc8⚠
fpgenc16⚠
fpgenc32⚠
fpgenc64⚠
fprintf⚠
fputc⚠
fputc_unlocked⚠
fputs⚠
fpxdec8⚠
fpxdec16⚠
fpxdec32⚠
fpxdec64⚠
fpxenc8⚠
fpxenc16⚠
fpxenc32⚠
fpxenc64⚠
fread⚠
fread_unlocked⚠
freopen⚠
fscanf⚠
fscanf1⚠
fseek⚠
fseeko⚠
fsetpos⚠
ftell⚠
ftello⚠
ftrylockfile⚠
funlockfile⚠
fwrite⚠
fwrite_unlocked⚠
getc⚠
getc_unlocked⚠
getchar⚠
getchar_unlocked⚠
getdelim⚠
getline⚠
getw⚠
om_common_compress_fpxenc32⚠
om_common_compress_fpxenc64⚠
om_common_copy8⚠
om_common_copy16⚠
om_common_copy32⚠
om_common_copy64⚠
om_common_copy_double_to_int64⚠
om_common_copy_float_to_int16⚠
Copy 16 bit integer array and convert to float
om_common_copy_float_to_int32⚠
om_common_copy_float_to_int16_log10⚠
Copy 16 bit integer array and convert to float and scale log10
om_common_copy_int16_to_float⚠
Convert int16 and scale to float
om_common_copy_int16_to_float_log10⚠
Convert int16 and scale to float with log10
om_common_copy_int32_to_float⚠
om_common_copy_int64_to_double⚠
om_common_decompress_fpxdec32⚠
om_common_decompress_fpxdec64⚠
om_decoder_decode_chunks⚠
@brief Decodes multiple data chunks from compressed input into a target buffer.
om_decoder_init⚠
@brief Initializes the om_decoder_t structure with the specified parameters.
om_decoder_init_data_read⚠
@brief Initializes an om_decoder_data_read_t structure for data reading.
om_decoder_init_index_read⚠
@brief Initializes an om_decoder_index_read_t structure for reading chunk indices.
om_decoder_next_data_read⚠
@brief Prepares the next data read operation for a given chunk of compressed data.
om_decoder_next_index_read⚠
@brief Determines the next range of chunks to be read and updates the om_decoder_index_read_t structure.
om_decoder_read_buffer_size⚠
@brief Calculates the size of the buffer required to read a single data chunk.
om_encoder_chunk_buffer_size⚠
The buffer size required to collect a single chunk of data
om_encoder_compress_chunk⚠
Compress a single chunk. Chunk buffer must be of size OmEncoder_chunkBufferSize
om_encoder_compress_lut⚠
Compress the LUT and return the size of compressed LUT in bytes
om_encoder_compressed_chunk_buffer_size⚠
The buffer size required to compress a single chunk.
om_encoder_count_chunks⚠
Get the number of chunks that is calculated from dimensions and chunks
om_encoder_count_chunks_in_array⚠
Calculate how many chunks can be filled from a given input
om_encoder_init⚠
Initialise the OmEncoder structure with information about the shape of data May return an error on invalid compression or data types
om_encoder_lut_buffer_size⚠
Calculate the required buffer size for the entire compressed LUT
om_error_string⚠
om_get_bytes_per_element⚠
Get the number of bytes per element. This function will set an error if called for an invalid data type. It only supports array types.
om_get_bytes_per_element_compressed⚠
Get the number of bytes per element after compression. This function will set an error if called for an invalid data type. It only supports array types.
om_header_size⚠
Return the size in byte of the header that should be read. Always 40 byte to support legacy 2D files.
om_header_type⚠
Check if the header is a OM file header and return if its a legacy version or a new version file
om_header_write⚠
Write an header for newer OM files
om_header_write_size⚠
The size of a OM header for newer files. Always 3 bytes.
om_trailer_read⚠
Read the trailer of an OM file to get the root variable. Size is set to 0 if this is not an OM file.
om_trailer_size⚠
Size in bytes of the trailer that contains the root variable offset in newer files
om_trailer_write⚠
Write an trailer for newer OM files including the root variable
om_variable_get_add_offset⚠
om_variable_get_children⚠
Get the file offset where a specified child or children can be read
om_variable_get_children_count⚠
Return how many children are available for a given variable
om_variable_get_chunks⚠
Get a pointer to the chunk dimensions of an OM Variable
om_variable_get_compression⚠
Get the compression type of the current variable
om_variable_get_dimensions⚠
Get a pointer to the dimensions of a OM variable
om_variable_get_dimensions_count⚠
Get number of dimensions
om_variable_get_name⚠
Get the name of of a given variable. No guarantee for zero termination! The length in bytes of the string is placed into length.
om_variable_get_scalar⚠
Read a variable as a scalar. Returns the size and value into the value and size field. value needs to be a pointer that then points to the value
om_variable_get_scale_factor⚠
om_variable_get_type⚠
Get the type of the current variable
om_variable_init⚠
After reading data for the variable, initialize it. This is literally a simple cast to an opaque pointer. Source memory must remain accessible!
om_variable_write_numeric_array⚠
Write meta data for a numeric array to file
om_variable_write_numeric_array_size⚠
Get the size of meta attributes of a numeric array if written to a file. Does not contain any data. Only offsets for the actual data.
om_variable_write_scalar⚠
Write a scalar variable with name and children variables to a destination buffer
om_variable_write_scalar_size⚠
Get the length of a scalar variable if written to a file. If the scalar is a string, we need to know the length of the string.
open_memstream⚠
p4d1dec8⚠
p4d1dec16⚠
p4d1dec32⚠
p4d1dec64⚠
p4d1dec128v16⚠
p4d1dec128v32⚠
p4d1dec256v32⚠
p4d1enc8⚠
p4d1enc16⚠
p4d1enc32⚠
p4d1enc64⚠
p4d1enc128v16⚠
p4d1enc128v32⚠
p4d1enc256v32⚠
p4d1encx8⚠
p4d1encx16⚠
p4d1encx32⚠
p4ddec8⚠
p4ddec16⚠
p4ddec32⚠
p4ddec64⚠
p4ddec128v16⚠
p4ddec128v32⚠
p4ddec256v32⚠
p4dec8⚠
p4dec16⚠
p4dec32⚠
p4dec64⚠
p4dec128v16⚠
p4dec128v32⚠
p4dec128v64⚠
p4dec256v32⚠
p4denc8⚠
p4denc16⚠
p4denc32⚠
p4denc64⚠
p4denc128v16⚠
p4denc128v32⚠
p4denc256v32⚠
p4denc256w32⚠
p4dencx8⚠
p4dencx16⚠
p4dencx32⚠
p4enc8⚠
p4enc16⚠
p4enc32⚠
p4enc64⚠
p4enc128v16⚠
p4enc128v32⚠
p4enc128v64⚠
p4enc256v32⚠
p4enc256w32⚠
p4encx8⚠
p4encx16⚠
p4encx32⚠
p4encx64⚠
p4nd1dec8⚠
p4nd1dec16⚠
p4nd1dec32⚠
p4nd1dec64⚠
p4nd1dec128v16⚠
p4nd1dec128v32⚠
p4nd1dec256v32⚠
p4nd1enc8⚠
p4nd1enc16⚠
p4nd1enc32⚠
p4nd1enc64⚠
p4nd1enc128v16⚠
p4nd1enc128v32⚠
p4nd1enc256v32⚠
p4nddec8⚠
p4nddec16⚠
p4nddec32⚠
p4nddec64⚠
p4nddec128v16⚠
p4nddec128v32⚠
p4nddec256v32⚠
p4nddec256w32⚠
p4ndec8⚠
p4ndec16⚠
p4ndec32⚠
p4ndec64⚠
p4ndec128v16⚠
p4ndec128v32⚠
p4ndec128v64⚠
p4ndec256v32⚠
p4ndenc8⚠
p4ndenc16⚠
p4ndenc32⚠
p4ndenc64⚠
p4ndenc128v16⚠
p4ndenc128v32⚠
p4ndenc256v32⚠
p4nenc8⚠
p4nenc16⚠
p4nenc32⚠
p4nenc64⚠
p4nenc128v16⚠
p4nenc128v32⚠
p4nenc128v64⚠
p4nenc256v32⚠
p4nenc256w32⚠
p4nsdec16⚠
p4nsdec32⚠
p4nsdec64⚠
p4nsenc16⚠
p4nsenc32⚠
p4nsenc64⚠
p4nzdec8⚠
p4nzdec16⚠
p4nzdec32⚠
p4nzdec64⚠
p4nzdec128v16⚠
p4nzdec128v32⚠
p4nzdec256v32⚠
p4nzenc8⚠
p4nzenc16⚠
p4nzenc32⚠
p4nzenc64⚠
p4nzenc128v16⚠
p4nzenc128v32⚠
p4nzenc256v32⚠
p4nzzdec128v8⚠
p4nzzdec128v16⚠
p4nzzdec128v32⚠
p4nzzdec128v64⚠
p4nzzenc128v8⚠
p4nzzenc128v16⚠
p4nzzenc128v32⚠
p4nzzenc128v64⚠
p4sdec16⚠
p4sdec32⚠
p4sdec64⚠
p4senc16⚠
p4senc32⚠
p4senc64⚠
p4zdec8⚠
p4zdec16⚠
p4zdec32⚠
p4zdec64⚠
p4zdec128v16⚠
p4zdec128v32⚠
p4zdec256v32⚠
p4zenc8⚠
p4zenc16⚠
p4zenc32⚠
p4zenc64⚠
p4zenc128v16⚠
p4zenc128v32⚠
p4zenc256v32⚠
pclose⚠
perror⚠
popen⚠
printf⚠
putc⚠
putc_unlocked⚠
putchar⚠
putchar_unlocked⚠
puts⚠
putw⚠
remove⚠
rename⚠
renameat⚠
rewind⚠
scanf⚠
scanf1⚠
setbuf⚠
setbuffer⚠
setlinebuf⚠
setvbuf⚠
snprintf⚠
sprintf⚠
sscanf⚠
sscanf1⚠
tempnam⚠
tmpfile⚠
tmpnam⚠
tmpnam_r⚠
ungetc⚠
vasprintf⚠
vdprintf⚠
vfprintf⚠
vfscanf⚠
vfscanf1⚠
vprintf⚠
vscanf⚠
vscanf1⚠
vsnprintf⚠
vsprintf⚠
vsscanf⚠
vsscanf1⚠

Type Aliases§

FILE
OmDecoder_dataRead_t
OmVariable_t
only expose an opaque pointer
_Float32
_Float64
_Float32x
_Float64x
_Float128
_IO_lock_t
__FILE
__blkcnt64_t
__blkcnt_t
__blksize_t
__builtin_va_list
__caddr_t
__cfloat128
__clock_t
__clockid_t
__daddr_t
__dev_t
__fpos64_t
__fpos_t
__fsblkcnt64_t
__fsblkcnt_t
__fsfilcnt64_t
__fsfilcnt_t
__fsword_t
__gid_t
__gnuc_va_list
__id_t
__ino64_t
__ino_t
__int8_t
__int16_t
__int32_t
__int64_t
__int_least8_t
__int_least16_t
__int_least32_t
__int_least64_t
__intmax_t
__intptr_t
__key_t
__loff_t
__mode_t
__nlink_t
__off64_t
__off_t
__pid_t
__quad_t
__rlim64_t
__rlim_t
__sig_atomic_t
__socklen_t
__ssize_t
__suseconds64_t
__suseconds_t
__syscall_slong_t
__syscall_ulong_t
__time_t
__timer_t
__u_char
__u_int
__u_long
__u_quad_t
__u_short
__uid_t
__uint8_t
__uint16_t
__uint32_t
__uint64_t
__uint_least8_t
__uint_least16_t
__uint_least32_t
__uint_least64_t
__uintmax_t
__useconds_t
cookie_close_function_t
cookie_io_functions_t
cookie_read_function_t
cookie_seek_function_t
cookie_write_function_t
fpos_t
int_fast8_t
int_fast16_t
int_fast32_t
int_fast64_t
int_least8_t
int_least16_t
int_least32_t
int_least64_t
intmax_t
off_t
uint_fast8_t
uint_fast16_t
uint_fast32_t
uint_fast64_t
uint_least8_t
uint_least16_t
uint_least32_t
uint_least64_t
uintmax_t
va_list
wchar_t

Unions§

__mbstate_t__bindgen_ty_1