Electroneum
Namespaces | Functions | Variables
hash.h File Reference
#include <stddef.h>
#include <iostream>
#include <boost/utility/value_init.hpp>
#include "common/pod-class.h"
#include "generic-ops.h"
#include "hex.h"
#include "span.h"
#include "hash-ops.h"
Include dependency graph for hash.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 crypto
 crypto namespace.
 

Functions

void crypto::cn_fast_hash (const void *data, std::size_t length, hash &hash)
 
hash crypto::cn_fast_hash (const void *data, std::size_t length)
 
void crypto::cn_slow_hash (const void *data, std::size_t length, hash &hash, int variant=0, uint64_t height=0)
 
void crypto::cn_slow_hash_prehashed (const void *data, std::size_t length, hash &hash, int variant=0, uint64_t height=0)
 
void crypto::tree_hash (const hash *hashes, std::size_t count, hash &root_hash)
 
std::ostream & crypto::operator<< (std::ostream &o, const crypto::hash &v)
 
std::ostream & crypto::operator<< (std::ostream &o, const crypto::hash8 &v)
 
std::ostream & crypto::operator<< (std::ostream &o, const crypto::hash64 &v)
 

Variables

POD_CLASS crypto::hash
 
POD_CLASS crypto::hash8
 
POD_CLASS crypto::hash64
 
static const crypto::hash crypto::null_hash = boost::value_initialized<crypto::hash>()
 
static const crypto::hash8 crypto::null_hash8 = boost::value_initialized<crypto::hash8>()
 
static const crypto::hash64 crypto::null_hash64 = boost::value_initialized<crypto::hash64>()