Thrill  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HyperLogLogRegisters< p > Class Template Reference

Detailed Description

template<size_t p>
class thrill::core::HyperLogLogRegisters< p >

Definition at line 34 of file hyperloglog.hpp.

#include <hyperloglog.hpp>

Public Member Functions

 HyperLogLogRegisters ()
 
template<typename ValueType >
void insert (const ValueType &value)
 
void insert_hash (const uint64_t &hash_value)
 
void mergeDense (const HyperLogLogRegisters< p > &b)
 
void mergeSparse ()
 
HyperLogLogRegisters operator+ (const HyperLogLogRegisters< p > &registers2) const
 
double result ()
 calculate count estimation result adjusted for bias More...
 
bool shouldConvertToDense ()
 
bool shouldMerge ()
 
size_t size () const
 
void toDense ()
 

Private Attributes

std::vector
< HyperLogLogSparseRegister
deltaSet_
 
std::vector< uint8_t > entries_
 
HyperLogLogRegisterFormat format_
 
unsigned sparse_size_ = 0
 
std::vector< uint8_t > sparseListBuffer_
 

Constructor & Destructor Documentation

Definition at line 37 of file hyperloglog.hpp.

Member Function Documentation

void insert ( const ValueType &  value)
inline

Definition at line 47 of file hyperloglog.hpp.

References HyperLogLogRegisters< p >::insert_hash(), and tlx::siphash().

void insert_hash ( const uint64_t &  hash_value)
void mergeSparse ( )
double result ( )

calculate count estimation result adjusted for bias

Definition at line 1772 of file hyperloglog.cpp.

References thrill::core::SPARSE.

bool shouldConvertToDense ( )

Definition at line 1702 of file hyperloglog.cpp.

Referenced by HyperLogLogRegisters< p >::operator+().

bool shouldMerge ( )

Definition at line 1710 of file hyperloglog.cpp.

Member Data Documentation

unsigned sparse_size_ = 0
private

Definition at line 70 of file hyperloglog.hpp.


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