![]() |
XII Release 0.1.0
|
A stream writer that hashes the data written to it. More...
#include <HashStream.h>
Public Member Functions | |
| xiiHashStreamWriter32 (xiiUInt32 uiSeed=0) | |
| Pass an initial seed for the hash calculation. | |
| virtual xiiResult | WriteBytes (const void *pWriteBuffer, xiiUInt64 uiBytesToWrite) override |
| Writes bytes directly to the stream. | |
| xiiUInt32 | GetHashValue () const |
| Returns the current hash value. You can read this at any time between write operations, or after writing is done to get the final hash value. | |
Public Member Functions inherited from xiiStreamWriter | |
| xiiStreamWriter () | |
| Constructor. | |
| virtual | ~xiiStreamWriter () |
| Virtual destructor to ensure correct cleanup. | |
| virtual xiiResult | Flush () |
| Flushes the stream, may be implemented (not necessary to implement the interface correctly) so that user code can ensure that content is written. | |
| template<typename T> | |
| xiiResult | WriteWordValue (const T *pWordValue) |
| Helper method to write a word value correctly (copes with potentially different endianess). | |
| template<typename T> | |
| xiiResult | WriteDWordValue (const T *pDWordValue) |
| Helper method to write a dword value correctly (copes with potentially different endianess). | |
| template<typename T> | |
| xiiResult | WriteQWordValue (const T *pQWordValue) |
| Helper method to write a qword value correctly (copes with potentially different endianess). | |
| XII_ALWAYS_INLINE void | WriteVersion (xiiTypeVersion version) |
| Writes a type version to the stream. | |
| template<typename ArrayType, typename ValueType> | |
| xiiResult | WriteArray (const xiiArrayBase< ValueType, ArrayType > &array) |
| Writes an array of elements to the stream. | |
| template<typename ValueType, xiiUInt16 uiSize> | |
| xiiResult | WriteArray (const xiiSmallArrayBase< ValueType, uiSize > &array) |
| Writes a small array of elements to the stream. | |
| template<typename ValueType, xiiUInt32 uiSize> | |
| xiiResult | WriteArray (const ValueType(&array)[uiSize]) |
| Writes a C style fixed array. | |
| template<typename KeyType, typename Comparer> | |
| xiiResult | WriteSet (const xiiSetBase< KeyType, Comparer > &set) |
| Writes a set. | |
| template<typename KeyType, typename ValueType, typename Comparer> | |
| xiiResult | WriteMap (const xiiMapBase< KeyType, ValueType, Comparer > &map) |
| Writes a map. | |
| template<typename KeyType, typename ValueType, typename Hasher> | |
| xiiResult | WriteHashTable (const xiiHashTableBase< KeyType, ValueType, Hasher > &hashTable) |
| Writes a hash table (note that the entry order might change on read) | |
| xiiResult | WriteString (const xiiStringView sStringView) |
| Writes a string. | |
A stream writer that hashes the data written to it.
This stream writer allows to conveniently generate a 32 bit hash value for any kind of data.
|
overridevirtual |
Writes bytes directly to the stream.
Implements xiiStreamWriter.