Loading...
Searching...
No Matches
stdex::basic_hash< T > Class Template Referenceabstract

Basic hashing operations. More...

`#include <stdex/hash.hpp>`

Inheritance diagram for stdex::basic_hash< T >:

## Public Member Functions

virtual void | clear ()=0
| Initializes hash value and internal state.
virtual void | hash (_In_reads_bytes_opt_(length) const void *data, size_t length)=0
| Hashes block of data.
virtual void | finalize ()=0
| Finalizes hash value.
const T & | data ()
| Returns hash value.
| operator const T & () const
| Returns hash value.

## Static Public Member Functions

static size_t | size ()
| Returns size of the hash value in bytes.

## Protected Attributes

T | m_value

## Detailed Description

template<class T>
class stdex::basic_hash< T >

Basic hashing operations.

## Member Function Documentation

## clear()

template<class T >

virtual void stdex::basic_hash< T >::clear | ( |  | ) |

pure virtual

Initializes hash value and internal state.

Implemented in stdex::block_hash< T >, stdex::block_hash< md5_t >, stdex::block_hash< sha1_t >, stdex::crc32_hash, stdex::md5_hash, and stdex::sha1_hash.

## finalize()

template<class T >

virtual void stdex::basic_hash< T >::finalize | ( |  | ) |

pure virtual

Finalizes hash value.

Implemented in stdex::crc32_hash, stdex::md5_hash, and stdex::sha1_hash.

## hash()

template<class T >

virtual void stdex::basic_hash< T >::hash | ( | _In_reads_bytes_opt_(length) const void * | data,
|  | size_t | length
| ) |  |

pure virtual

Hashes block of data.

Parameters

  [in] | data | Pointer to data
  [in] | length | Amount of data in bytes

Implemented in stdex::block_hash< T >, stdex::block_hash< md5_t >, stdex::block_hash< sha1_t >, and stdex::crc32_hash.

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

- include/stdex/hash.hpp