Skip to main content

Crate rust_openzl_sys

Crate rust_openzl_sys 

Source

Re-exports§

pub use libc;

Structs§

ZL_CCtx_s
ZL_CodecInfo_s
ZL_CodecStateManager
ZL_CompressIntrospectionHooks_s
ZL_CompressorDeserializer_Dependencies
Doesn’t own any memory.
ZL_CompressorDeserializer_s
ZL_CompressorSerializer_s
ZL_Compressor_s
ZL_CopyParam
ZL_CustomTokenizeState_s
ZL_DCtx_s
ZL_DataID
ZL_DataInfo_s
ZL_Data_s
ZL_Decoder_s
ZL_DispatchInstructions
ZL_DispatchState_s
ZL_DynamicErrorInfo_s
ZL_EdgeList
ZL_Edge_s
ZL_Encoder_s
ZL_ErrorContext
ZL_Error_Array
ZL_Error_Array: a const view into an array of errors, returned by some public APIs.
ZL_Error_s
ZL_Error:
ZL_FrameInfo
ZL_FunctionGraphDesc
ZL_GraphContext
ZL_GraphID
ZL_GraphIDList
ZL_GraphParameters_s
@defgroup Group_Compressor_GraphCustomization Graph Customization
ZL_GraphPerformance
A measurement of graph performance. Currently this is compressed size, but it is expected to be expanded to include speed.
ZL_GraphReport
ZL_Graph_s
ZL_Input_s
ZL_IntMetadata
ZL_IntParam
ZL_LocalCopyParams
ZL_LocalIntParams
ZL_LocalParams
ZL_LocalRefParams
ZL_MIDecoderDesc
ZL_MIEncoderDesc
ZL_MIGraphDesc
ZL_NodeID
ZL_NodeIDList
ZL_NodeParameters
@defgroup Group_Compressor_NodeCustomization Node Customization
ZL_OpaquePtr
ZL_OperationContext_s
ZL_OutputInfo
@brief Information about a decompressed typed output.
ZL_Output_s
ZL_ParameterizedGraphDesc
This creates a new Graphs, based on an existing Graph, but modifying all or parts of its exposed parameters.
ZL_ParameterizedNodeDesc
ZL_PipeDecoderDesc
ZL_PipeEncoderDesc
ZL_RBuffer
ZL_RefParam
ZL_ReflectionCtx_s
ZL_Result_ZL_CompressorDeserializer_Dependencies_inner
ZL_Result_ZL_EdgeList_inner
ZL_Result_ZL_GraphID_inner
ZL_Result_ZL_GraphPerformance_inner
ZL_Result_ZL_NodeID_inner
ZL_Result_size_t_inner
ZL_SelectorDesc
ZL_Selector_s
ZL_SerialSelectorDesc
ZL_SetStringLensInstructions
ZL_SetStringLensState_s
ZL_SplitDecoderDesc
ZL_SplitEncoderDesc
ZL_SplitInstructions
ZL_SplitState_s
ZL_StaticErrorInfo_s
ZL_StaticErrorInfo *
ZL_StaticGraphDesc
ZL_StaticGraphParameters
@defgroup Group_Compressor_StaticGraphCreation Static Graph Creation
ZL_TypedDecoderDesc
ZL_TypedEncoderDesc
ZL_TypedGraphDesc
ZL_VODecoderDesc
ZL_VOEncoderDesc
ZL_VOGraphDesc
ZL_WBuffer
ZL_WCursor

Enums§

ZL_CParam
The list of global compression parameters
ZL_DParam
@brief Global decompression parameters.
ZL_DataArenaType
ZL_ErrorCode
ZL_ErrorCode *
ZL_GraphType
ZL_StandardGraphID
ZL_StandardNodeID
ZL_TernaryParam
ZL_Type
Any Data object has necessary a Type. The least specific Type is ZL_Type_serial, which means it’s just a blob of bytes. Codecs can only accept and produce specified data Types. In contrast, Selectors & Graphs may optionally accept multiple data Types, using bitmap masking (example: ZL_Type_struct | ZL_Type_numeric).
_bindgen_ty_1
_bindgen_ty_2

Constants§

ZL_ALLOW_INTROSPECTION
ZL_Bitunpack_numBits
ZL_CHUNK_VERSION_MIN
ZL_COMPRESSIONLEVEL_DEFAULT
ZL_CONVERT_SERIAL_TO_STRUCT_SIZE_PID
ZL_DECOMPRESSIONLEVEL_DEFAULT
ZL_DISPATCH_CHANNEL_ID
ZL_DISPATCH_INSTRUCTIONS_PID
ZL_DISPATCH_PARSINGFN_PID
ZL_DISPATCH_STRING_INDICES_PID
ZL_DISPATCH_STRING_NUM_OUTPUTS_PID
ZL_DIVIDE_BY_PID
ZL_ENABLE_ERR_IF_ARG_PRINTING
ZL_ENABLE_RET_IF_ARG_PRINTING
ZL_ERROR_ENABLE_STATIC_ERROR_INFO
ZL_ErrorCode_GENERIC__desc_str
ZL_ErrorCode_allocation__desc_str
ZL_ErrorCode_compressedChecksumWrong__desc_str
ZL_ErrorCode_compressionParameter_invalid__desc_str
ZL_ErrorCode_contentChecksumWrong__desc_str
ZL_ErrorCode_corruption__desc_str
ZL_ErrorCode_customNode_definitionInvalid__desc_str
ZL_ErrorCode_decompression_incorrectAPI__desc_str
ZL_ErrorCode_dstCapacity_tooSmall__desc_str
ZL_ErrorCode_formatVersion_notSet__desc_str
ZL_ErrorCode_formatVersion_unsupported__desc_str
ZL_ErrorCode_frameParameter_unsupported__desc_str
ZL_ErrorCode_graphParameter_invalid__desc_str
ZL_ErrorCode_graph_invalidNumInputs__desc_str
ZL_ErrorCode_graph_invalid__desc_str
ZL_ErrorCode_graph_nonserializable__desc_str
ZL_ErrorCode_header_unknown__desc_str
ZL_ErrorCode_inputType_unsupported__desc_str
ZL_ErrorCode_integerOverflow__desc_str
ZL_ErrorCode_internalBuffer_tooSmall__desc_str
ZL_ErrorCode_invalidName__desc_str
ZL_ErrorCode_invalidRequest_singleOutputFrameOnly__desc_str
ZL_ErrorCode_invalidTransform__desc_str
ZL_ErrorCode_logicError__desc_str
ZL_ErrorCode_no_error__desc_str
ZL_ErrorCode_nodeExecution_invalidOutputs__desc_str
ZL_ErrorCode_nodeParameter_invalidValue__desc_str
ZL_ErrorCode_nodeParameter_invalid__desc_str
ZL_ErrorCode_nodeRegen_countIncorrect__desc_str
ZL_ErrorCode_node_invalid__desc_str
ZL_ErrorCode_node_invalid_input__desc_str
ZL_ErrorCode_node_unexpected_input_type__desc_str
ZL_ErrorCode_node_versionMismatch__desc_str
ZL_ErrorCode_outputID_invalid__desc_str
ZL_ErrorCode_outputNotCommitted__desc_str
ZL_ErrorCode_outputNotReserved__desc_str
ZL_ErrorCode_outputs_tooNumerous__desc_str
ZL_ErrorCode_parameter_invalid__desc_str
ZL_ErrorCode_segmenter_inputNotConsumed__desc_str
ZL_ErrorCode_srcSize_tooLarge__desc_str
ZL_ErrorCode_srcSize_tooSmall__desc_str
ZL_ErrorCode_streamCapacity_tooSmall__desc_str
ZL_ErrorCode_streamParameter_invalid__desc_str
ZL_ErrorCode_streamType_incorrect__desc_str
ZL_ErrorCode_stream_wrongInit__desc_str
ZL_ErrorCode_successor_alreadySet__desc_str
ZL_ErrorCode_successor_invalidNumInputs__desc_str
ZL_ErrorCode_successor_invalid__desc_str
ZL_ErrorCode_temporaryLibraryLimitation__desc_str
ZL_ErrorCode_transform_executionFailure__desc_str
ZL_ErrorCode_userBuffer_alignmentIncorrect__desc_str
ZL_ErrorCode_userBuffers_invalidNum__desc_str
ZL_FBCODE_IS_RELEASE
ZL_FIELD_LZ_COMPRESSION_LEVEL_OVERRIDE_PID
ZL_FIELD_LZ_EXTRA_LITERAL_LENGTHS_GRAPH_OVERRIDE_INDEX_PID
ZL_FIELD_LZ_EXTRA_MATCH_LENGTHS_GRAPH_OVERRIDE_INDEX_PID
ZL_FIELD_LZ_LITERALS_GRAPH_OVERRIDE_INDEX_PID
ZL_FIELD_LZ_OFFSETS_GRAPH_OVERRIDE_INDEX_PID
ZL_FIELD_LZ_TOKENS_GRAPH_OVERRIDE_INDEX_PID
ZL_HAVE_FBCODE
ZL_HAVE_X86_64_ASM
ZL_LIBRARY_VERSION_MAJOR
ZL_LIBRARY_VERSION_MINOR
ZL_LIBRARY_VERSION_NUMBER
ZL_LIBRARY_VERSION_PATCH
ZL_LP_INVALID_PARAMID
ZL_MAX_FORMAT_VERSION
ZL_MINSTREAMSIZE_DEFAULT
ZL_MIN_FORMAT_VERSION
ZL_SDDL_DESCRIPTION_PID
ZL_SPLIT_CHANNEL_ID
ZL_TOKENIZE_SORT_PID
ZL_TYPED_INPUT_VERSION_MIN
ZL_trlip_tokenSize

Functions§

ZL_CCtx_attachIntrospectionHooks⚠
@brief Attach introspection hooks to the CCtx.
ZL_CCtx_compress⚠
@brief A one-shot (blocking) compression function.
ZL_CCtx_compressMultiTypedRef⚠
Compresses multiple typed inputs , presented as an array of ZL_TypedRef. See below for TypedRef* object creation.
ZL_CCtx_compressTypedRef⚠
Compresses a single typed input presented as a ZL_TypedRef. See below for TypedRef* object creation.
ZL_CCtx_create⚠
ZL_CCtx_detachAllIntrospectionHooks⚠
Detach any introspection hooks currently attached to the CCtx.
ZL_CCtx_free⚠
ZL_CCtx_getErrorContextString⚠
Gets the error context for a given ZL_Report. This context is useful for debugging and for submitting bug reports to Zstrong developers.
ZL_CCtx_getErrorContextString_fromError⚠
See ZL_CCtx_getErrorContextString()
ZL_CCtx_getOperationContext⚠
ZL_CCtx_getParameter⚠
@brief Reads a compression parameter’s configured value from the CCtx.
ZL_CCtx_getWarnings⚠
Gets the warnings that were encountered during the lifetime of the most recent compression operation.
ZL_CCtx_refCompressor⚠
@brief Pass @p compressor as a ZL_Compressor* object to the compression state. Compression will start with the default Starting GraphID of @p compressor, using its default parameters provided at registration time. @note Only one compressor can be referenced at a time. Referencing a new compressor deletes previous reference. @note If a custom GraphID and parameters were previously set, invoking this method will reset them to default. @pre @p compressor must remain valid for the duration of its usage. @pre @p compressor must be already validated.
ZL_CCtx_resetParameters⚠
@brief Resets the parameters in the cctx to a blank state.
ZL_CCtx_selectStartingGraphID⚠
@brief Set the starting Graph of next compression, as @p graphID referenced in the provided @p compressor, optionally providing it with some runtime parameters. @pre @p compressor must remain valid for the duration of its usage. @pre @p compressor must be already validated.
ZL_CCtx_setDataArena⚠
Sets the Arena for Data* objects in the CCtx. This frees the previous Data Arena and creates a new one. This choice remains sticky, until set again. The default Data Arena is HeapArena.
ZL_CCtx_setParameter⚠
@brief Sets a global compression parameter via the CCtx.
ZL_CodecInfo_getCodecID⚠
@returns The transform ID
ZL_CodecInfo_getHeaderPtr⚠
@returns The header pointer for the transform.
ZL_CodecInfo_getHeaderSize⚠
@returns The header size of the transform.
ZL_CodecInfo_getIndex⚠
@returns The index for which ZL_ReflectionCtx_getCodec_lastChunk() returns this transform.
ZL_CodecInfo_getInput⚠
@returns The input stream of the transform at index @p index @pre index is valid
ZL_CodecInfo_getName⚠
@returns The name of the transform
ZL_CodecInfo_getNumInputs⚠
@returns The number of input streams to the transform. Input streams are streams that are consumed by the encoder and produced by the decoder.
ZL_CodecInfo_getNumOutputs⚠
@returns The number of output streams to the transform. Output streams are streams that are produced by the encoder and consumed by the decoder.
ZL_CodecInfo_getNumVariableOutputs⚠
@returns The number of output streams of the transform that are variable outputs. Necessarily no greater than ZL_CodecInfo_getOutput().
ZL_CodecInfo_getOutput⚠
@returns The output stream of the transform at index @p index @pre index is valid
ZL_CodecInfo_isCustomCodec⚠
@returns true iff the transform is a custom transform.
ZL_CodecInfo_isStandardCodec⚠
@returns true iff the transform is a standard transform.
ZL_CompressorDeserializer_create⚠
Creates and initializes an opaque ZL_CompressorDeserializer object.
ZL_CompressorDeserializer_deserialize⚠
Reads the serialized compressor represented by @p serialized and pushes the graph structure and configuration it describes into @p compressor.
ZL_CompressorDeserializer_free⚠
Frees all the resources owned by the @p deserializer, including the @p deserializer itself.
ZL_CompressorDeserializer_getDependencies⚠
Read the serialized compressor from @p serialized and find all of the nodes and graphs that the serialized compressor refers to but that aren’t present in the serialized compressor. I.e., lists all the components that must be present on a destination compressor in order for this serialized compressor to correctly materialize onto that destination compressor.
ZL_CompressorDeserializer_getErrorContextString⚠
Safely retrieve the full error message associated with an error.
ZL_CompressorDeserializer_getErrorContextString_fromError⚠
Like @ref ZL_CompressorDeserializer_getErrorContextString(), but generic across result types. Use like:
ZL_CompressorDeserializer_getOperationContext⚠
ZL_CompressorSerializer_convertToJson⚠
Converts an already-serialized compressor to human-readable JSON.
ZL_CompressorSerializer_create⚠
Creates and initializes an opaque ZL_CompressorSerializer object.
ZL_CompressorSerializer_free⚠
Frees all the resources owned by the @p serializer, including the @p serializer itself.
ZL_CompressorSerializer_getErrorContextString⚠
Safely retrieve the full error message associated with an error.
ZL_CompressorSerializer_getErrorContextString_fromError⚠
Like @ref ZL_CompressorSerializer_getErrorContextString(), but generic across result types. Use like:
ZL_CompressorSerializer_getOperationContext⚠
ZL_CompressorSerializer_serialize⚠
Returns a serialized representation of the given @p compressor.
ZL_CompressorSerializer_serializeToJson⚠
Equivalent @ref ZL_CompressorSerializer_serialize, but produces a human- readable output for debugging. This output format cannot currently be consumed by OpenZL.
ZL_Compressor_Graph_getBaseGraphID⚠
@returns If the provided @p graphid was created by modifying another existing graph, i.e., its type is ZL_GraphType_parameterized, the ZL_GraphID of that other graph. Otherwise, it returns ZL_GRAPH_ILLEGAL.
ZL_Compressor_Graph_getCustomGraphs⚠
@returns The custom graphs of @p graphid, which is only non-empty for selector, dynamic, and multi-input graphs. @note The array is valid for the lifetime of the @p compressor.
ZL_Compressor_Graph_getCustomNodes⚠
@returns The custom nodes of @p graphid, which is only non-empty for dynamic and multi-input graphs. @note The array is valid for the lifetime of the @p compressor.
ZL_Compressor_Graph_getHeadNode⚠
@returns The head node of the graph if @p graphid is a static graph, otherwise returns ZL_NODE_ILLEGAL.
ZL_Compressor_Graph_getInput0Mask⚠
@returns The input stream types that @p graphid is compatible with. @pre @p graph must be valid, and must have a single input stream
ZL_Compressor_Graph_getInputMask⚠
@returns The input stream types that @p graphid input @p inputIdx is compatible with.
ZL_Compressor_Graph_getLocalParams⚠
@returns The local params of @p graphid. @note The params for the lifetime of the @p compressor.
ZL_Compressor_Graph_getName⚠
@returns the (optional) @p name given to this graphid. When none provided, returns “”. When graphid is illegal (invalid), returns NULL.
ZL_Compressor_Graph_getNumInputs⚠
@returns The number of input streams that @p graphid expects.
ZL_Compressor_Graph_getSuccessors⚠
@returns The successor of the head node in the graph if @p graphid is a static graph, otherwise returns an empty list. @note The array is valid for the lifetime of the @p compressor.
ZL_Compressor_Graph_isVariableInput⚠
@returns True if @p graphid is a multi input graph whose last input may show up zero or more times.
ZL_Compressor_Node_getBaseNodeID⚠
@returns If the provided @p node was created by modifying another existing node, the ZL_NodeID of that other node. Otherwise, ZL_NODE_ILLEGAL.
ZL_Compressor_Node_getCodecID⚠
@returns The transform ID for the node, which is the ID that is written into the frame header, and how we determine which decoder to use.
ZL_Compressor_Node_getInput0Type⚠
@returns The input stream type that @p node expects @pre @p node must be valid, and must have a single input stream
ZL_Compressor_Node_getInputType⚠
@returns The input stream type that @p node has at index @p inputIndex in the context of the @p cgraph
ZL_Compressor_Node_getLocalParams⚠
@returns The local params of @p nodeid. @note The params for the lifetime of the @p compressor.
ZL_Compressor_Node_getMaxVersion⚠
@returns the max format version that @p node supports in the context of the @p cgraph.
ZL_Compressor_Node_getMinVersion⚠
@returns the min format version that @p node supports in the context of the @p cgraph.
ZL_Compressor_Node_getName⚠
@returns The name of the node if available, else “”, and returns NULL if @p node is invalid.
ZL_Compressor_Node_getNumInputs⚠
@returns The number of input streams that @p node expects in the context of the @p cgraph.
ZL_Compressor_Node_getNumOutcomes⚠
@returns The number of output outcomes that @p node has in the context of the @p cgraph.
ZL_Compressor_Node_getNumVariableOutcomes⚠
@returns The number of variable output that @p node has in the context of the @p cgraph.
ZL_Compressor_Node_getOutputType⚠
@returns The output stream type that @p node has at index @p outputIndex in the context of the @p cgraph
ZL_Compressor_Node_isStandard⚠
@returns a boolean value indicating whether the node is standard or not.
ZL_Compressor_Node_isVariableInput⚠
@returns True if @p nodeid is a multi input codec whose last input may show up zero or more times.
ZL_Compressor_buildACEGraph⚠
Inserts a placeholder for the Automated Compressor Explorer (ACE) to replace with an automatically generated graph. It accepts a single input of any type.
ZL_Compressor_buildACEGraph2⚠
@see ZL_Compressor_buildACEGraph
ZL_Compressor_buildACEGraphWithDefault⚠
The same as ZL_Compressor_buildACEGraph, but uses defaultGraph to compress until it is trained.
ZL_Compressor_buildACEGraphWithDefault2⚠
@see ZL_Compressor_buildACEGraphWithDefault
ZL_Compressor_buildSDDLGraph⚠
Builds a Simple Data Description Language graph with the provided (pre-compiled) @p description and @p successor graph.
ZL_Compressor_buildStaticGraph⚠
Build a new graph out of pre-existing components. The new graph passes its data to @p headNode, and then each output of @p headNode is set to the corresponding @p successorGraph.
ZL_Compressor_buildTokenizeGraph⚠
Builds a tokenize graph for the given parameters & successors.
ZL_Compressor_cloneNode⚠
@brief Simplified variant of @ref ZL_Compressor_registerParameterizedNode(). Clone an existing @ref ZL_NodeID from an already registered @p nodeid but employs new parameters, set via @p localParams.
ZL_Compressor_create⚠
@brief Create a new @ref ZL_Compressor.
ZL_Compressor_forEachGraph⚠
Calls @p callback on every graph registered in the @p compressor. If @p callback returns an error, short-circuit and return that error. @returns Success if all callbacks succeed, or the first error. @note The callback will not be called on standard graphs, since they aren’t registered in the @p compressor.
ZL_Compressor_forEachNode⚠
Calls @p callback on every node registered in the @p compressor. If @p callback returns an error, short-circuit and return that error. @returns Success if all callbacks succeed, or the first error. @note The callback will not be called on standard nodes, since they aren’t registered in the @p compressor.
ZL_Compressor_forEachParam⚠
Calls @p callback on every param set in the @p compressor. If @p callback returns an error, short-circuit and return that error. @returns Success if all callbacks succeed, or the first error. @note The callback will not be called on params that are equal to the default value (0).
ZL_Compressor_free⚠
@brief Frees a @ref ZL_Compressor.
ZL_Compressor_getErrorContextString⚠
@returns A verbose error string containing context about the error that occurred. This is useful for debugging, and for submitting bug reports to OpenZL developers. @note This string is stored within the @p compressor and is only valid for the lifetime of the @p compressor.
ZL_Compressor_getErrorContextString_fromError⚠
See @ref ZL_Compressor_getErrorContextString()
ZL_Compressor_getGraph⚠
@brief Lookup a graph by name.
ZL_Compressor_getGraphType⚠
@returns The @ref ZL_GraphType of the given graph. @note This is the original type the graph was registered with.
ZL_Compressor_getNode⚠
@brief Lookup a node by name.
ZL_Compressor_getOperationContext⚠
ZL_Compressor_getParameter⚠
@brief Read a parameter’s configured value in the Compressor and returns it.
ZL_Compressor_getStartingGraphID⚠
@param[out] graphID If the function returns true, filled with the starting GraphID, otherwise filled with ZL_GRAPH_ILLEGAL. @returns True iff the compressor has the starting GraphID set.
ZL_Compressor_getWarnings⚠
@returns The array of warnings that were encountered during the creation of the compressor. @note The array’s and the errors’ lifetimes are valid until the next non- const call on the compressor.
ZL_Compressor_initUsingGraphFn⚠
@brief Initialize a @p compressor object with a ZL_GraphFn Graph function @p f. It will register a few custom graphs and custom nodes, and set the starting Graph ID. This is a convenience function, which is equivalent to calling the Graph function, then ZL_Compressor_selectStartingGraphID() followed by ZL_Compressor_validate() @returns Success or an error which can be checked with ZL_isError(). @param f The function used to build the ZL_GraphID.
ZL_Compressor_parameterizeConvertSerialToStructNode⚠
Helper function to parameterize the ZL_NODE_CONVERT_SERIAL_TO_STRUCT node with the struct size.
ZL_Compressor_parameterizeGraph⚠
Parameterizes an existing graph by overriding its name, customGraphs, customNodes, and/or localParams.
ZL_Compressor_parameterizeNode⚠
Parameterize an existing node by overriding its name and/or local parameters.
ZL_Compressor_parameterizeTokenizeNode⚠
Builds a tokenize node for the given parameters.
ZL_Compressor_parameterizeTryParseIntGraph⚠
Returns a parameterized version of the try parse int graph with the required successors of the graph.
ZL_Compressor_registerBitunpackNode⚠
ZL_Compressor_registerBruteForceSelectorGraph⚠
Parameterized brute force selector that selects the best successor from a user-provided list of candidates. @param successors the list of successors to select from. Each successor must be equipped to handle the input stream type.
ZL_Compressor_registerConvertSerialToStringNode⚠
ZL_Compressor_registerCustomTokenizeGraph⚠
Tokenize with a custom tokenization function. This is useful if you want to define a custom order for your alphabet that is neither insertion nor sorted order.
ZL_Compressor_registerDispatchNode⚠
ZL_Compressor_registerDispatchStringNode⚠
@param nbOutputs - the number of output streams to be generated. Passed as a local param to the transform. @param dispatchIndices - the array of indices to be used for dispatching. Will be passed as a local param to the transform. The lifetime of the array is to be managed by the caller and should outlive the transform execution.
ZL_Compressor_registerDivideByNode⚠
Creates the divide by node with its divisor set to @p divisor.
ZL_Compressor_registerFieldLZGraph⚠
DEPRECATED: Use ZL_GRAPH_FIELD_LZ instead. @returns ZL_GRAPH_FIELD_LZ
ZL_Compressor_registerFieldLZGraph_withLevel⚠
@returns ZL_GRAPH_FIELD_LZ with overridden compression level
ZL_Compressor_registerFieldLZGraph_withLiteralsGraph⚠
Creates a Field LZ graph with a custom literals compressor.
ZL_Compressor_registerFunctionGraph⚠
ZL_Compressor_registerFunctionGraph2⚠
Registers a function graph given the @p desc.
ZL_Compressor_registerMIEncoder⚠
ZL_Compressor_registerMIEncoder2⚠
Register a custom encoder that can be used to compress.
ZL_Compressor_registerMergeSortedGraph⚠
Creates a graph for ZL_NODE_MERGE_SORTED that first detects whether the input has <= 64 sorted runs. If it does it selects the node. Otherwise it selects the backupGraph.
ZL_Compressor_registerParameterizedGraph⚠
@brief Create a new GraphID by the one from @p gid, just replacing the @p localParams by the provided ones. Used to create custom variants of Standard Graphs for example.
ZL_Compressor_registerParameterizedNode⚠
@brief Clone an existing @ref ZL_NodeID from an existing node, but optionally with a new name & new parameters.
ZL_Compressor_registerPipeEncoder⚠
Register a custom pipe encoder, to be employed in upcoming Graph. This registration is specialized for simple pipe transforms. Counterpart: ZL_DCtx_registerPipeDecoder(). This action creates a NodeID, provided as @return value. Graphs using custom encoders are only decodable if, at decompression time, a custom decoder of same CTid is registered.
ZL_Compressor_registerSelectorGraph⚠
ZL_Compressor_registerSelectorGraph2⚠
Register a selector graph given the @p desc.
ZL_Compressor_registerSerialSelectorGraph⚠
ZL_Compressor_registerSplitByStructGraph⚠
Split-by-struct This operation splits a serialized input defined as an array of structures of fixed size, by grouping same fields into their own stream. All fields are considered concatenated back-to-back (no alignment). For this transform to work, input must be an exact multiple of struct_size, with struct_size = sum(field_sizes). Each output stream is then assigned a successor Graph.
ZL_Compressor_registerSplitEncoder⚠
Register a custom Split Transform
ZL_Compressor_registerSplitGraph⚠
Split-by-param This operation splits a serialized input into segments, defined by array @segmentSizes[]. The nb of segments and their size is static, except for the last segment size, which can receive a size value 0, meaning “whatever is left in the stream”. Each segment is then into its own output, and then sent to the next processing stage defined by @successors[].
ZL_Compressor_registerSplitNode_withParams⚠
ZL_Compressor_registerSplitNode_withParser⚠
ZL_Compressor_registerStaticGraph⚠
This is the more complete declaration variant, offering more control and capabilities. In order to be valid, a Static Graph Description must :
ZL_Compressor_registerStaticGraph_fromNode⚠
@brief Create a graph from a head node.
ZL_Compressor_registerStaticGraph_fromNode1o⚠
@brief Create a graph from a single input & output node.
ZL_Compressor_registerStaticGraph_fromPipelineNodes1o⚠
@brief Creates a graph consisting of a series of nodes executed in succession in the order provided and then sent to @p dstGraph.
ZL_Compressor_registerTokenizeGraph⚠
@see ZL_Compressor_buildTokenizeGraph @returns The tokenize graph, or ZL_GRAPH_ILLEGAL on error.
ZL_Compressor_registerTransposeSplitGraph⚠
Helper function to create a graph for ZL_NODE_TRANSPOSE_SPLIT.
ZL_Compressor_registerTypedEncoder⚠
Register a custom Typed Transform, to be employed in upcoming graph.
ZL_Compressor_registerTypedEncoder2⚠
Register a custom encoder that can be used to compress.
ZL_Compressor_registerVOEncoder⚠
ZL_Compressor_registerVOEncoder2⚠
Register a custom encoder that can be used to compress.
ZL_Compressor_registerZstdGraph_withLevel⚠
@return zstd graph with a compression level overridden
ZL_Compressor_selectStartingGraphID⚠
@brief Selects a graph as the default entry point for the compressor.
ZL_Compressor_setParameter⚠
@brief Set global parameters via @p compressor. In this construction, global parameters are attached to a Compressor object. Global Parameters set at Compressor level can be overridden later at CCtx level.
ZL_Compressor_validate⚠
@brief Validates a graph maintains basic invariants to reduce the chance of errors being triggered when compressing.
ZL_CustomTokenizeState_createAlphabetOutput⚠
Creates the alphabet stream to store the tokenized alphabet. The width of each element in the alphabet must be the same width as the input stream.
ZL_CustomTokenizeState_createIndexOutput⚠
Creates the index stream with the given width. The index stream must contain exactly the same number of elements as the input.
ZL_CustomTokenizeState_getOpaquePtr⚠
@returns The opaque pointer passed into @fn ZS2_createGraph_customTokenize().
ZL_DCtx_create⚠
@brief Creates a new decompression context.
ZL_DCtx_decompress⚠
@brief Decompresses data with explicit state management.
ZL_DCtx_decompressMultiTBuffer⚠
@brief Decompresses a frame into multiple TypedBuffers.
ZL_DCtx_decompressTBuffer⚠
@brief Decompresses a frame with a single typed output into a TypedBuffer.
ZL_DCtx_decompressTyped⚠
@brief Decompresses typed content from frames with a single typed output into a pre-allocated buffer @p dst . Information about output type is written into @p outputInfo .
ZL_DCtx_free⚠
@brief Frees a decompression context.
ZL_DCtx_getErrorContextString⚠
@brief Gets a verbose error string containing context about the error.
ZL_DCtx_getErrorContextString_fromError⚠
@brief Gets error context string from error code.
ZL_DCtx_getOperationContext⚠
ZL_DCtx_getParameter⚠
@brief Reads a parameter’s configured value in the decompression context.
ZL_DCtx_getWarnings⚠
@brief Gets the array of warnings from the previous operation.
ZL_DCtx_registerMIDecoder⚠
Register an MI decoder transform. Counterpart to ZS2_registerMITransform().
ZL_DCtx_registerPipeDecoder⚠
Register a custom decoder transform, should it be needed during decompression of a zstrong frame. A decoder transform is expected to reverse the encoding transform of same @CTid. This function is specialized for the registration of simple pipe decoder transforms. Counterpart to ZL_Compressor_registerPipeEncoder().
ZL_DCtx_registerSplitDecoder⚠
Register a custom split decoder transform. This is supposed to be the reverse of the encoding transform of same @CTid. Counterpart to ZS2_registerSplitTransform().
ZL_DCtx_registerTypedDecoder⚠
Register a custom typed decoder transform. Counterpart to ZS2_registerTypedTransform().
ZL_DCtx_registerVODecoder⚠
Register a variable output decoder transform. Counterpart to ZS2_registerVOTransform().
ZL_DCtx_resetParameters⚠
@brief Resets parameters selection from a blank slate.
ZL_DCtx_setParameter⚠
@brief Sets global parameters via the decompression context.
ZL_DCtx_setStreamArena⚠
ZL_DataInfo_getConsumerCodec⚠
@returns The transform that consumes this stream or NULL if the stream is an input stream to the frame.
ZL_DataInfo_getContentSize⚠
@returns The content size of the stream. For non-string streams equal to nbElts * eltWidth. For string streams equal to the sum of the lengths.
ZL_DataInfo_getDataPtr⚠
@returns The data pointer for the stream.
ZL_DataInfo_getEltWidth⚠
@returns The element width of the stream.
ZL_DataInfo_getIndex⚠
@returns The index for which ZL_ReflectionCtx_getStream_lastChunk() returns this stream.
ZL_DataInfo_getLengthsPtr⚠
@returns The length pointer for the stream if the type is ZL_Type_string. @pre The type is ZL_Type_string.
ZL_DataInfo_getNumElts⚠
@returns The number of elements in the stream.
ZL_DataInfo_getProducerCodec⚠
@returns The transform that produced this stream or NULL if the stream is stored in the frame.
ZL_DataInfo_getType⚠
@returns The type of the stream.
ZL_Data_commit⚠
@brief Commit the number of elements written into @p data.
ZL_Data_contentSize⚠
@return the nb of bytes committed into data’s buffer (generally == data->eltWidth * data->nbElts).
ZL_Data_eltWidth⚠
@return element width in nb of bytes This is only valid for fixed size elements, such as ZL_Type_struct or ZL_Type_numeric. If Type is ZL_Type_string, it returns 0 instead.
ZL_Data_getIntMetadata⚠
ZL_Data_id⚠
ZL_Data_numElts⚠
@note invoking ZL_Data_numElts() is only valid for committed Data. If the Data object was received as an input, it’s necessarily valid. So the issue can only happen for outputs, between allocation and commit. Querying ZL_Data_numElts() is not expected to be useful for output Data. @note ZL_Type_serial doesn’t really have a concept of “elt”. In this case, it returns Data size in bytes.
ZL_Data_rPtr⚠
These methods provide direct access to internal buffer. Warning : users must pay attention to buffer boundaries. @return pointer to the beginning of buffer. @note for ZL_Type_string, returns a pointer to the buffer containing the concatenated strings.
ZL_Data_rStringLens⚠
This method is only valid for ZL_Type_string Data. @return a pointer to the array of string lengths. The size of this array is == ZL_Data_numElts(data). @return NULL if incorrect data type, or StringLens not allocated yet.
ZL_Data_reserveStringLens⚠
This method is only valid for ZL_Type_string Data. It reserves memory space for StringLens array, and returns a pointer to it. The buffer is owned by @p data and has the same lifetime. The returned pointer can be used to write into the array. After writing into the array, the nb of String Lengths provided must be signaled using @ref ZL_Data_commit(). This method will fail if StringLens is already allocated. @return NULL if incorrect data type, or allocation error.
ZL_Data_setIntMetadata⚠
@brief Sets integer metadata with the key @p mId and value @p mvalue on the stream.
ZL_Data_type⚠
ZL_Data_wPtr⚠
ZL_Data_wStringLens⚠
This method is only valid for ZL_Type_string Data. It requires write access into StringLens array. Only valid if StringLens array has already been allocated and not yet written into. @return NULL when any of the above conditions is violated.
ZL_Decoder_create1OutStream⚠
ZL_Decoder_create1StringStream⚠
ZL_Decoder_createStringStream⚠
ZL_Decoder_createTypedStream⚠
ZL_Decoder_getCodecHeader⚠
ZL_Decoder_getOpaquePtr⚠
@returns The opaque pointer provided in the transform description. @warning Usage of the opaque pointer must be thread-safe, and must not not modify the state in any way that impacts decoding!
ZL_Decoder_getOperationContext⚠
ZL_Decoder_getScratchSpace⚠
ZL_Decoder_getState⚠
@returns Returns a state, as generated by the Transform’s State Manager.
ZL_DispatchState_getOpaquePtr⚠
Provides an opaque pointer that can be useful to provide state to the parser. For example, it can be used by language bindings to allow parsers written in languages other than C.
ZL_DispatchState_malloc⚠
ZL_DispatchState_returnError⚠
@returns An error from the parser function and places the @p message into Zstrong’s error context.
ZL_DispatchString_maxDispatches⚠
Convenience function to get the maximum number of dispatches supported by the current encoder version.
ZL_E_addFrame_public⚠
Attempts to add more information to the error represented by @p error. Narrowly, this means trying to append a stack frame to the stacktrace that rich errors accumulate. In service of that, it also tries to up-convert the error to a rich error if it isn’t already. @p fmt and optional additional following args can also be used to append an arbitrary formatted string of information into the error.
ZL_E_appendToMessage⚠
Append a formatted string to the error’s message. May be a no-op if the error doesn’t have a rich error info set up internally.
ZL_E_create⚠
Actual implementation function which accepts all of the explicit arguments that are set up for you by the macros elsewhere. Prefer to use those macros rather than this function directly.
ZL_Edge_getData⚠
ZL_Edge_getOperationContext⚠
ZL_Edge_runConvertSerialToStringNode⚠
ZL_Edge_runDispatchNode⚠
Run the DispatchN node in the context of a dynamic graph, following runtime-defined @p instructions.
ZL_Edge_runDispatchStringNode⚠
Run the ZL_NODE_DISPATCH_STRING Node in the context of a Dynamic Graph, applying runtime defined parameters.
ZL_Edge_runMultiInputNode⚠
ZL_Edge_runMultiInputNode_withParams⚠
ZL_Edge_runNode⚠
ZL_Edge_runNode_withParams⚠
ZL_Edge_runSplitNode⚠
Run the SplitN node within the context of a dynamic graph, applying runtime-defined @p segmentSizes parameters.
ZL_Edge_runTransposeSplit⚠
ZL_Edge_setDestination⚠
ZL_Edge_setIntMetadata⚠
@brief Sets the int metadata for the edge to @p mValue
ZL_Edge_setParameterizedDestination⚠
@brief Sets the destination of the provided edges to the provided graph ID, overriding its behavior with the provided parameters.
ZL_Encoder_createAllOutBuffers⚠
ZL_Encoder_createStringStream⚠
ZL_Encoder_createTypedStream⚠
ZL_Encoder_getCParam⚠
ZL_Encoder_getLocalCopyParam⚠
ZL_Encoder_getLocalIntParam⚠
ZL_Encoder_getLocalIntParams⚠
ZL_Encoder_getLocalParam⚠
ZL_Encoder_getLocalParams⚠
ZL_Encoder_getOpaquePtr⚠
@returns The opaque pointer provided in the transform description. @warning Usage of the opaque pointer must be thread-safe, and must not not modify the state in any way that impacts encoding!
ZL_Encoder_getOperationContext⚠
ZL_Encoder_getScratchSpace⚠
ZL_Encoder_getState⚠
@returns Returns a state, as generated by the Transform’s State Manager. The state’s lifetime is managed by the host CCtx, it will be free automatically at end of CCtx lifetime (and can’t be forcefully free manually). The state may be cached from a previous run with a compatible transform (same state signature).
ZL_Encoder_sendCodecHeader⚠
ZL_ErrorCode_toString⚠
ZL_ErrorContext_getOperationContext⚠
ZL_FrameInfo_create⚠
@brief Creates a frame information object from compressed data.
ZL_FrameInfo_free⚠
@brief Frees a frame information object.
ZL_FrameInfo_getDecompressedSize⚠
@brief Gets the decompressed size of a specific output.
ZL_FrameInfo_getFormatVersion⚠
@brief Gets the format version of the frame.
ZL_FrameInfo_getNumElts⚠
@brief Gets the number of elements in a specific output.
ZL_FrameInfo_getNumOutputs⚠
@brief Gets the number of regenerated outputs on decompression.
ZL_FrameInfo_getOutputType⚠
@brief Gets the output type for a specific output ID.
ZL_GraphID_isValid⚠
Registration might fail if the Descriptor is incorrectly filled, Any further operation attempted with such a Graph will also fail. Such an outcome can be tested with ZL_GraphID_isValid(). Note: this is mostly for debugging purposes, once a Descriptor is valid, registration can be assumed to be successful.
ZL_Graph_getCParam⚠
ZL_Graph_getCustomGraphs⚠
ZL_Graph_getCustomNodes⚠
ZL_Graph_getLocalIntParam⚠
ZL_Graph_getLocalRefParam⚠
ZL_Graph_getOpaquePtr⚠
ZL_Graph_getOperationContext⚠
ZL_Graph_getScratchSpace⚠
ZL_Graph_getTransposeSplitNode⚠
@returns a NodeID that implements transpose split for the given @p eltWidth that will work with any Zstrong format version. If no node exists, then returns ZL_NODE_ILLEGAL. This can happen for format version <= 10 when @p eltWidth != 2,4,8.
ZL_Graph_isNodeSupported⚠
Determines whether @nodeid is supported given the applied global parameters for the compression. Notably the ZL_CParam_formatVersion parameter can determine if a node is valid for the given encoding version.
ZL_Graph_tryGraph⚠
@brief Attempt compression using a graph and return the performance.
ZL_Graph_tryMultiInputGraph⚠
@brief Attempt compression using a graph and return the performance.
ZL_NULL_getOperationContext⚠
ZL_NodeID_isValid⚠
Registration might fail, for example if the Descriptor is incorrectly filled. In which case, the returned nodeid is ZL_NODE_ILLEGAL. Any further operation attempted with such a Node will also fail. Such an outcome can be tested with ZL_NodeID_isValid(). Note: this is mostly for debugging, once a Descriptor is valid, registration can be assumed to remain successful.
ZL_Node_convertSerialToNumBE⚠
Convert from serial to bitWidth-bit big-endian numeric data.
ZL_Node_convertSerialToNumLE⚠
Convert from serial to bitWidth-bit little-endian numeric data.
ZL_OperationContext_getDefaultErrorContext⚠
ZL_Output_contentCapacity⚠
@returns The capacity of the buffer reserved for @p output in bytes. If @p output has not been reserved, it returns an error. For string types, this is the sum of the lengths of each string that can be written into the buffer.
ZL_Output_contentSize⚠
@returns The content size in bytes that has been committed to @p output. For non-string types, this is the eltWidth * numElts. For string types, this is the sum of the lengths of each stream. If @p output has not been commited, it returns an error.
ZL_Output_eltWidth⚠
@returns The element width of the @p output if it has a buffer reserved, otherwise it returns NULL. Within a custom codec, this function always succeeds, because the output always has a buffer reserved. If the type of the output is String, it returns 0 instead.
ZL_Output_eltsCapacity⚠
@returns The capacity of the buffer reserved for @p output in number of elements. If @p output has not been reserved, it returns an error. For string types, this is the number of strings that can be written into the buffer.
ZL_Output_numElts⚠
@returns The number of elements committed in @p output if it has been committed. Otherwise, returns an error if the write to @p output has not been committed.
ZL_ReflectionCtx_create⚠
ZL_ReflectionCtx_free⚠
ZL_ReflectionCtx_getCodec_lastChunk⚠
@returns The transform at @p index @pre ZL_ReflectionCtx_setCompressedFrame() returned success. @pre @p index is valid.
ZL_ReflectionCtx_getDCtx⚠
@returns The dctx that will be used for decompression so the user can set parameters and register custom transforms if the helpers provided aren’t sufficient.
ZL_ReflectionCtx_getFrameFooterSize⚠
@returns The size of the frame footer. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getFrameFormatVersion⚠
@returns The frame format version. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getFrameHeaderSize⚠
@returns The size of the frame header. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getInput⚠
@returns The input stream at @p index @pre ZL_ReflectionCtx_setCompressedFrame() returned success. @pre @p index is valid.
ZL_ReflectionCtx_getNumCodecs_lastChunk⚠
@returns the number of transforms that are run during the decoding process. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getNumInputs⚠
@returns The number of input streams to the compressed frame. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getNumStoredOutputs_lastChunk⚠
@returns The number of streams stored in the compressed frame. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getNumStreams_lastChunk⚠
@returns The total number of streams in the decoder graph. This includes streams stored in the frame, input streams to the frame, and intermediate streams. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_getStoredOutput_lastChunk⚠
@returns The stored stream at @p index @pre ZL_ReflectionCtx_setCompressedFrame() returned success. @pre @p index is valid.
ZL_ReflectionCtx_getStream_lastChunk⚠
@returns The stream at @p index @pre ZL_ReflectionCtx_setCompressedFrame() returned success. @pre @p index is valid.
ZL_ReflectionCtx_getTotalTransformHeaderSize_lastChunk⚠
@returns The total size of all the transform headers. @pre ZL_ReflectionCtx_setCompressedFrame() returned success.
ZL_ReflectionCtx_registerMIDecoder⚠
Registers a custom transform to be used when decoding the frame. @pre Must be called before ZL_ReflectionCtx_setCompressedFrame().
ZL_ReflectionCtx_registerTypedDecoder⚠
Registers a custom transform to be used when decoding the frame. @pre Must be called before ZL_ReflectionCtx_setCompressedFrame().
ZL_ReflectionCtx_registerVODecoder⚠
Registers a custom transform to be used when decoding the frame. @pre Must be called before ZL_ReflectionCtx_setCompressedFrame().
ZL_ReflectionCtx_setCompressedFrame⚠
Decompresses the frame in @p src and build all the information needed to introspect the frame.
ZL_Selector_getCParam⚠
ZL_Selector_getInput0MaskForGraph⚠
Utility function to get the input types supported by @gid as an input mask. Throws an error if @gid is not valid or does not have exactly one input. See ZL_Compressor_Graph_getInput0Mask() for more details.
ZL_Selector_getLocalCopyParam⚠
ZL_Selector_getLocalIntParam⚠
ZL_Selector_getLocalIntParams⚠
ZL_Selector_getLocalParam⚠
ZL_Selector_getOpaquePtr⚠
ZL_Selector_getScratchSpace⚠
ZL_Selector_setSuccessorParams⚠
ZL_Selector_tryGraph⚠
ZL_SetStringLensState_getOpaquePtr⚠
ZL_SetStringLensState_malloc⚠
ZL_SplitState_getOpaquePtr⚠
Provides an opaque pointer that can be useful to provide state to the parser. For example, it can be used by language bindings to allow parsers written in languages other than C.
ZL_SplitState_malloc⚠
ZL_TypedBuffer_byteSize⚠
@brief Gets the number of bytes written into the internal buffer.
ZL_TypedBuffer_create⚠
@brief Creates an empty typed buffer object.
ZL_TypedBuffer_createWrapNumeric⚠
@brief Creates a pre-allocated typed buffer for numeric data.
ZL_TypedBuffer_createWrapSerial⚠
@brief Creates a pre-allocated typed buffer for serial data.
ZL_TypedBuffer_createWrapString⚠
@brief Creates a pre-allocated ZL_TypedBuffer for String data.
ZL_TypedBuffer_createWrapStruct⚠
@brief Creates a pre-allocated typed buffer for struct data.
ZL_TypedBuffer_eltWidth⚠
@brief Gets the size of each element for fixed-size types.
ZL_TypedBuffer_free⚠
@brief Frees a typed buffer object.
ZL_TypedBuffer_numElts⚠
@brief Gets the number of elements in the typed buffer.
ZL_TypedBuffer_rPtr⚠
@brief Gets direct access to the internal buffer for reading operation.
ZL_TypedBuffer_rStringLens⚠
@brief Gets pointer to the array of string lengths.
ZL_TypedBuffer_type⚠
@brief Gets the type of the typed buffer.
ZL_TypedRef_createNumeric⚠
Creates a ZL_TypedRef that references an array of numeric values, employing the local host’s endianness. Supported widths are 1, 2, 4, and 8 and the input array must be properly aligned (in local ABI).
ZL_TypedRef_createSerial⚠
Creates a ZL_TypedRef that represents a regular buffer of bytes.
ZL_TypedRef_createString⚠
Creates a ZL_TypedRef referencing a “flat-strings” representation. All “strings” are concatenated into @p strBuffer and their lengths are stored in a @p strLens array.
ZL_TypedRef_createStruct⚠
Creates a ZL_TypedRef that represents a concatenated list of fields of a fixed size of @p structWidth.
ZL_TypedRef_free⚠
Frees the given ZL_TypedRef.
ZL_compress_usingCompressor⚠
ZL_compress_usingGraphFn⚠
@brief compresses using @param graphFunction that both defines a custom graph and sets global parameters.
ZL_decompress⚠
@brief Decompresses a frame hosting a single serialized output.
ZL_getCompressedSize⚠
@brief Gets the size of the compressed frame. This method could be useful when the compressed frame only represents a first portion of a larger buffer.
ZL_getDecompressedSize⚠
@brief Gets the decompressed size of content from a single-output frame.
ZL_getDefaultEncodingVersion⚠
@returns The current encoding version number. This version number is used when the version number is unset.
ZL_getFormatVersionFromFrame⚠
Reads the magic number from the frame and returns the format version.
ZL_getHeaderSize⚠
@brief Gets the size of the OpenZL header.
ZL_getNumOutputs⚠
@brief Gets the number of outputs stored in a compressed frame.
ZL_getOutputType⚠
@brief Gets the output type for single-output frames.
ZL_reportError⚠
ZL_returnError⚠
@returns a specific ZL_ErrorCode as a ZL_Report return type.
openzl_cctx_error_context⚠
openzl_cctx_get_warnings⚠
openzl_compress_bound⚠
openzl_dctx_error_context⚠
openzl_dctx_get_warnings⚠
openzl_error_code_to_string⚠
openzl_error_get_code⚠
openzl_error_get_name⚠
openzl_report_code⚠
openzl_report_is_error⚠
openzl_report_value⚠
report_code
report_is_error
report_value

Type Aliases§

ZL_CCtx
ZL_CodecInfo
ZL_CodecStateAlloc
ZL_CodecStateFree
ZL_CompressIntrospectionHooks
ZL_Compressor
@defgroup Group_Compressor_LifetimeManagement Lifetime Management
ZL_CompressorDeserializer
ZL_CompressorSerializer
ZL_Compressor_ForEachGraphCallback
ZL_Compressor_ForEachNodeCallback
ZL_Compressor_ForEachParamCallback
ZL_CustomTokenizeFn
A custom tokenization function to tokenize the input. The output of this function is not checked in production builds, and it is UB to tokenize incorrectly.
ZL_CustomTokenizeState
ZL_DCtx
@brief Decompression context for state management (incomplete type).
ZL_Data
ZL_DataInfo
ZL_Decoder
ZL_DispatchParserFn
ZL_DispatchState
ZL_DynamicErrorInfo
Forward Declarations *
ZL_Edge
ZL_Encoder
ZL_Error
ZL_Error:
ZL_ErrorInfo
Internally, there are two kinds of error info objects: dynamic and static, which are, like they sound, respectively dynamically allocated (and which must be freed) or statically allocated, but which therefore can’t contain any runtime information.
ZL_FunctionGraphFn
The function signature for function graphs.
ZL_FunctionGraphValidateFn
ZL_Graph
ZL_GraphFn
@brief While it’s possible to add elements (graphs, selectors or nodes) to a Compressor one by one, and then finalize it by selecting a starting graph ID, it’s generally common for all these steps to be regrouped into a single initialization function. The following signature corresponds such a function. It returns a GraphID which, by convention, is the starting GraphID.
ZL_GraphParameters
@defgroup Group_Compressor_GraphCustomization Graph Customization
ZL_IDType
ZL_Input
ZL_MIDecoderFn
ZL_MIEncoderFn
ZL_OperationContext
ZL_Output
ZL_PipeDecoderFn
ZL_PipeDstCapacityFn
ZL_PipeEncoderFn
ZL_ReflectionCtx
Reflection API for introspecting a compressed frame.
ZL_Report
ZL_Result_ZL_CompressorDeserializer_Dependencies
ZL_Result_ZL_CompressorDeserializer_Dependencies_fake_type_needs_semicolon
ZL_Result_ZL_EdgeList
ZL_Result_ZL_EdgeList_fake_type_needs_semicolon
ZL_Result_ZL_GraphID
ZL_Result_ZL_GraphID_fake_type_needs_semicolon
ZL_Result_ZL_GraphPerformance
ZL_Result_ZL_GraphPerformance_fake_type_needs_semicolon
ZL_Result_ZL_NodeID
ZL_Result_ZL_NodeID_fake_type_needs_semicolon
ZL_Result_size_t
ZL_Result_size_t_fake_type_needs_semicolon
ZL_RuntimeGraphParameters
@defgroup Group_Compressor_GraphCustomization Graph Customization
ZL_Selector
ZL_SelectorFn
ZL_SerialSelectorFn
ZL_SetStringLensParserFn
ZL_SetStringLensState
ZL_SplitDecoderFn
ZL_SplitDstCapacityFn
ZL_SplitEncoderFn
ZL_SplitParserFn
ZL_SplitState
ZL_StaticErrorInfo
ZL_StaticErrorInfo *
ZL_TypedBuffer
@brief Typed buffer object that can own and auto-size their buffers.
ZL_TypedDecoderFn
ZL_TypedEncoderFn
ZL_TypedRef
ZL_VODecoderFn
ZL_VOEncoderFn

Unions§

ZL_EdgeList__bindgen_ty_1
ZL_EdgeList__bindgen_ty_2
ZL_ErrorInfo_u
Internally, there are two kinds of error info objects: dynamic and static, which are, like they sound, respectively dynamically allocated (and which must be freed) or statically allocated, but which therefore can’t contain any runtime information.
ZL_Result_ZL_CompressorDeserializer_Dependencies_u
ZL_Result_ZL_EdgeList_u
ZL_Result_ZL_GraphID_u
ZL_Result_ZL_GraphPerformance_u
ZL_Result_ZL_NodeID_u
ZL_Result_size_t_u