|
jaffarCommon
|
#include <differential.hpp>


Public Member Functions | |
| Differential (const void *__restrict inputDataBuffer=nullptr, const size_t inputDataBufferSize=std::numeric_limits< uint32_t >::max(), const void *__restrict referenceDataBuffer=nullptr, const size_t referenceDataBufferSize=std::numeric_limits< uint32_t >::max(), const bool useZlib=false) | |
| __JAFFAR_COMMON__INLINE__ void | popContiguous (void *const __restrict outputDataBuffer, const size_t outputDataSize) override |
| __JAFFAR_COMMON__INLINE__ void | pop (void *const __restrict outputDataBuffer, const size_t outputDataSize) override |
| size_t | getReferenceDataBufferPos () const |
| size_t | getDifferentialBytesCount () const |
Public Member Functions inherited from jaffarCommon::deserializer::Base | |
| Base (const void *__restrict inputDataBuffer, const size_t inputDataBufferSize) | |
| __JAFFAR_COMMON__INLINE__ size_t | getInputSize () const |
| __JAFFAR_COMMON__INLINE__ const uint8_t * | getInputDataBuffer () const |
Additional Inherited Members | |
Protected Attributes inherited from jaffarCommon::deserializer::Base | |
| const uint8_t *__restrict const | _inputDataBuffer |
| const size_t | _inputDataBufferSize |
| size_t | _inputDataBufferPos = 0 |
The differential deserialization class enables the decompression of a differential input buffer that, when applied to a reference data buffer, produces the original source data. The decompression can be applied to different elements at different times. It also enables the use of contiguous storage for elements that are not meant to be compressed.
|
inline |
Default constructor for the differntial deserializer class
| [in] | inputDataBuffer | The input buffer from whence to read the input data |
| [in] | inputDataBufferSize | The size of the input buffer |
| [in] | referenceDataBuffer | The buffer from whence to read the reference data |
| [in] | referenceDataBufferSize | The size of the reference buffer |
| [in] | useZlib | Specifies whether to apply Zlib decompression before the differential decompression |
|
inline |
Gets the number of differential bytes included in the serialized output
This is useful to make sure the differential part of the deserialization is not exceeded
|
inline |
Get the position of the reference buffer header.
|
inlineoverridevirtual |
Deserializes the specified number of bytes onto the output data buffer, popping the information from the input buffer
| [out] | outputDataBuffer | The contiguous output buffer onto which to deserialize. |
| [in] | outputDataBufferSize | The number of bytes to save onto the output buffer |
Implements jaffarCommon::deserializer::Base.
|
inlineoverridevirtual |
Deserializes the specified number of contiguous bytes onto the output data buffer, popping the information from the input buffer
| [out] | outputDataBuffer | The contiguous output buffer onto which to deserialize |
| [in] | outputDataBufferSize | The number of bytes to save onto the output buffer |
Implements jaffarCommon::deserializer::Base.