![]() |
Plasma Engine
2.0
|
A stream writer that hashes the data written to it. More...
#include <HashStream.h>
Public Member Functions | |
plHashStreamWriter64 (plUInt64 uiSeed=0) | |
Pass an initial seed for the hash calculation. | |
virtual plResult | WriteBytes (const void *pWriteBuffer, plUInt64 uiBytesToWrite) override |
Writes bytes directly to the stream. | |
plUInt64 | 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. | |
![]() | |
plStreamWriter () | |
Constructor. | |
virtual | ~plStreamWriter () |
Virtual destructor to ensure correct cleanup. | |
virtual plResult | 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 > | |
plResult | WriteWordValue (const T *pWordValue) |
Helper method to write a word value correctly (copes with potentially different endianess) | |
template<typename T > | |
plResult | WriteDWordValue (const T *pDWordValue) |
Helper method to write a dword value correctly (copes with potentially different endianess) | |
template<typename T > | |
plResult | WriteQWordValue (const T *pQWordValue) |
Helper method to write a qword value correctly (copes with potentially different endianess) | |
PL_ALWAYS_INLINE void | WriteVersion (plTypeVersion version) |
Writes a type version to the stream. | |
template<typename ArrayType , typename ValueType > | |
plResult | WriteArray (const plArrayBase< ValueType, ArrayType > &array) |
Writes an array of elements to the stream. | |
template<typename ValueType , plUInt16 uiSize> | |
plResult | WriteArray (const plSmallArrayBase< ValueType, uiSize > &array) |
Writes a small array of elements to the stream. | |
template<typename ValueType , plUInt32 uiSize> | |
plResult | WriteArray (const ValueType(&array)[uiSize]) |
Writes a C style fixed array. | |
template<typename KeyType , typename Comparer > | |
plResult | WriteSet (const plSetBase< KeyType, Comparer > &set) |
Writes a set. | |
template<typename KeyType , typename ValueType , typename Comparer > | |
plResult | WriteMap (const plMapBase< KeyType, ValueType, Comparer > &map) |
Writes a map. | |
template<typename KeyType , typename ValueType , typename Hasher > | |
plResult | WriteHashTable (const plHashTableBase< KeyType, ValueType, Hasher > &hashTable) |
Writes a hash table (note that the entry order might change on read) | |
plResult | WriteString (const plStringView sStringView) |
Writes a string. | |
A stream writer that hashes the data written to it.
This stream writer allows to conveniently generate a 64 bit hash value for any kind of data.
|
overridevirtual |
Writes bytes directly to the stream.
Implements plStreamWriter.