Template for creating a Hash::Implementation from a 64-bit hash function. More...
#include "hash-function.h"
Public Member Functions | |
Hash64 (Hash64Function_ptr hp) | |
Constructor from a 64-bit hash function pointer. More... | |
void | clear () |
Restore initial state. More... | |
uint32_t | GetHash32 (const char *buffer, const std::size_t size) |
Compute 32-bit hash of a byte buffer. More... | |
uint64_t | GetHash64 (const char *buffer, const std::size_t size) |
Compute 64-bit hash of a byte buffer. More... | |
Public Member Functions inherited from ns3::Hash::Implementation | |
Implementation () | |
Constructor. More... | |
virtual | ~Implementation () |
Destructor. More... | |
Public Member Functions inherited from ns3::SimpleRefCount< Implementation > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o[[maybe_unused]]) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= ([[maybe_unused]] const SimpleRefCount &o) |
Assignment operator. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
Private Attributes | |
Hash64Function_ptr | m_fp |
The hash function. More... | |
Template for creating a Hash::Implementation from a 64-bit hash function.
Definition at line 156 of file hash-function.h.
|
inline |
Constructor from a 64-bit hash function pointer.
[in] | hp | Function pointer to a 64-bit hash function. |
Definition at line 164 of file hash-function.h.
|
inlinevirtual |
Restore initial state.
Implements ns3::Hash::Implementation.
Definition at line 178 of file hash-function.h.
|
inlinevirtual |
Compute 32-bit hash of a byte buffer.
Call clear() between calls to GetHash32() to reset the internal state and hash each buffer separately.
If you don't call clear() between calls to GetHash32, you can hash successive buffers. The final return value will be the cumulative hash across all calls.
[in] | buffer | Pointer to the beginning of the buffer. |
[in] | size | Length of the buffer, in bytes. |
Implements ns3::Hash::Implementation.
Definition at line 170 of file hash-function.h.
References GetHash64().
|
inlinevirtual |
Compute 64-bit hash of a byte buffer.
Default implementation returns 32-bit hash, with a warning.
Call clear() between calls to GetHash64() to reset the internal state and hash each buffer separately.
If you don't call clear() between calls to GetHash64, you can hash successive buffers. The final return value will be the cumulative hash across all calls.
[in] | buffer | Pointer to the beginning of the buffer. |
[in] | size | Length of the buffer, in bytes. |
Reimplemented from ns3::Hash::Implementation.
Definition at line 166 of file hash-function.h.
References m_fp.
Referenced by GetHash32().
|
private |