ROSE  0.11.96.11
Public Member Functions | List of all members
Rose::Combinatorics::HasherFnv Class Reference

Description

Fowler-Noll-Vo hashing using the Hasher interface.

Definition at line 393 of file Combinatorics.h.

#include <Combinatorics.h>

Inheritance diagram for Rose::Combinatorics::HasherFnv:
Inheritance graph
[legend]
Collaboration diagram for Rose::Combinatorics::HasherFnv:
Collaboration graph
[legend]

Public Member Functions

const Digestdigest () override
 Return the digest. More...
 
void append (const uint8_t *message, size_t messageSize) override
 Insert data into the digest. More...
 
uint64_t partial () const
 
- Public Member Functions inherited from Rose::Combinatorics::Hasher
virtual void clear ()
 Reset the hasher to its initial state.
 
std::string toString ()
 String representation of the digest. More...
 
void print (std::ostream &)
 Print a hash to a stream. More...
 
void insert (const std::string &x)
 Insert data into the digest. More...
 
void insert (uint64_t x)
 Insert data into the digest. More...
 
void insert (const uint8_t *x, size_t size)
 Insert data into the digest. More...
 
void insert (const std::vector< uint8_t > &v)
 Insert data into the digest. More...
 
void insert (std::istream &stream)
 Insert data into the digest. More...
 

Additional Inherited Members

- Public Types inherited from Rose::Combinatorics::Hasher
typedef std::vector< uint8_t > Digest
 The digest of the input message. More...
 
- Static Public Member Functions inherited from Rose::Combinatorics::Hasher
static std::string toString (const Digest &)
 Convert a digest to a hexadecimal string.
 
- Protected Attributes inherited from Rose::Combinatorics::Hasher
Digest digest_
 

Member Function Documentation

◆ digest()

const Digest& Rose::Combinatorics::HasherFnv::digest ( )
overridevirtual

Return the digest.

Finalizes the hash function and returns the digest for all the input. Additional input should not be inserted after this function is called since some hash functions don't support this.

Reimplemented from Rose::Combinatorics::Hasher.

◆ append()

void Rose::Combinatorics::HasherFnv::append ( const uint8_t *  message,
size_t  messageSize 
)
overridevirtual

Insert data into the digest.

This is the lowest level method of inserting new message content into the digest. This can be called as often as desired, building a digest incrementally.

Implements Rose::Combinatorics::Hasher.


The documentation for this class was generated from the following file: