HashSetBase Class Reference

#include <hash.h>

Inheritance diagram for HashSetBase:

Inheritance graph
[legend]
List of all members.

Detailed Description

Abstract base class representing a Hash Set.

Provides pure virtual functions which derived classes must override to create concrete HashSet types.

Definition at line 299 of file hash.h.


Public Member Functions

 HashSetBase ()
virtual ~HashSetBase ()
bool compare (const HashSetBase &ref) const
bool operator!= (const HashSetBase &ref) const
 Inequality operator.
bool operator== (const HashSetBase &ref) const
 Equality operator.
const HashBaseoperator[] (uint32_t c) const
Pure virtual accessors
virtual const HashBasegetFileHash () const =0
virtual uint32_t getChunkCnt () const =0
virtual const HashBasegetChunkHash (uint32_t num) const =0
virtual uint32_t getChunkSize () const =0
virtual std::string getFileHashType () const =0
virtual CGComm::HashTypeId getFileHashTypeId () const =0
virtual std::string getChunkHashType () const =0
virtual CGComm::HashTypeId getChunkHashTypeId () const =0

Friends

std::ostream & operator<< (std::ostream &o, const HashSetBase &h)
 Output operator for streams.

Constructor & Destructor Documentation

HashSetBase::HashSetBase  )  [inline]
 

Definition at line 301 of file hash.h.

virtual HashSetBase::~HashSetBase  )  [inline, virtual]
 

Definition at line 302 of file hash.h.


Member Function Documentation

bool HashSetBase::compare const HashSetBase ref  )  const
 

Definition at line 194 of file hash.cpp.

References HashBase::decode(), Utils::decode(), getChunkCnt(), getChunkHash(), getChunkHashTypeId(), getFileHash(), getFileHashTypeId(), logTrace(), and TRACE_HASH.

Here is the call graph for this function:

virtual uint32_t HashSetBase::getChunkCnt  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by compare(), PartData::PartData(), PartData::setMetaData(), and PartData::verifyHashSet().

virtual const HashBase& HashSetBase::getChunkHash uint32_t  num  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by compare().

virtual std::string HashSetBase::getChunkHashType  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by PartData::onHashEvent().

virtual CGComm::HashTypeId HashSetBase::getChunkHashTypeId  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by compare(), and PartData::verifyHashSet().

virtual uint32_t HashSetBase::getChunkSize  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by PartData::onHashEvent(), PartData::PartData(), and PartData::setMetaData().

virtual const HashBase& HashSetBase::getFileHash  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by compare(), HashWork::finish(), SharedFile::isDuplicate(), PartData::onHashEvent(), MetaDb::onSharedFileEvent(), operator<<(), and PartData::verifyHashSet().

virtual std::string HashSetBase::getFileHashType  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by HashWork::finish(), and PartData::onHashEvent().

virtual CGComm::HashTypeId HashSetBase::getFileHashTypeId  )  const [pure virtual]
 

Implemented in HashSet< HashType, FileHashType, ChunkSize >.

Referenced by compare(), MetaDb::onSharedFileEvent(), and PartData::verifyHashSet().

bool HashSetBase::operator!= const HashSetBase ref  )  const [inline]
 

Inequality operator.

Definition at line 325 of file hash.h.

bool HashSetBase::operator== const HashSetBase ref  )  const [inline]
 

Equality operator.

Definition at line 330 of file hash.h.

const HashBase& HashSetBase::operator[] uint32_t  c  )  const [inline]
 

Definition at line 333 of file hash.h.


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &  o,
const HashSetBase h
[friend]
 

Output operator for streams.

<uint8>OP_HASHSET<uint16>objlength<uint8>filehashtype<uint8>parthashtype <uint16>tagcount[<tagcount>*Tag]

Definition at line 158 of file hash.cpp.


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