Bike-X  0.8
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry > Class Template Reference

#include "OVR_Hash.h"

Inheritance diagram for OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >:
Inheritance graph
Collaboration diagram for OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >:
Collaboration graph

Data Structures

struct  ConstIterator
 
struct  Iterator
 
struct  TableType
 

Public Types

typedef HashSetBase< C, HashF,
AltHashF, Allocator, Entry > 
SelfType
 

Public Member Functions

 HashSetBase ()
 
 HashSetBase (int sizeHint)
 
 HashSetBase (const SelfType &src)
 
 ~HashSetBase ()
 
void Assign (const SelfType &src)
 
void Clear ()
 
bool IsEmpty () const
 
template<class CRef >
void Set (const CRef &key)
 
template<class CRef >
void Add (const CRef &key)
 
template<class K >
void RemoveAlt (const K &key)
 
template<class CRef >
void Remove (const CRef &key)
 
template<class K >
C * Get (const K &key)
 
template<class K >
const C * Get (const K &key) const
 
template<class K >
const C * GetAlt (const K &key) const
 
template<class K >
C * GetAlt (const K &key)
 
template<class K >
bool GetAlt (const K &key, C *pval) const
 
UPInt GetSize () const
 
void CheckExpand ()
 
void Resize (UPInt n)
 
void SetCapacity (UPInt newSize)
 
Iterator Begin ()
 
Iterator End ()
 
ConstIterator Begin () const
 
ConstIterator End () const
 
template<class K >
Iterator Find (const K &key)
 
template<class K >
Iterator FindAlt (const K &key)
 
template<class K >
ConstIterator Find (const K &key) const
 
template<class K >
ConstIterator FindAlt (const K &key) const
 

Private Types

enum  { HashMinSize = 8 }
 

Private Member Functions

template<class K >
SPInt findIndex (const K &key) const
 
template<class K >
SPInt findIndexAlt (const K &key) const
 
template<class K >
SPInt findIndexCore (const K &key, UPInt hashValue) const
 
template<class CRef >
void add (const CRef &key, UPInt hashValue)
 
Entry & E (UPInt index)
 
const Entry & E (UPInt index) const
 
void setRawCapacity (UPInt newSize)
 

Private Attributes

TableTypepTable
 

Friends

struct ConstIterator
 
struct Iterator
 

Detailed Description

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
class OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >

Definition at line 195 of file OVR_Hash.h.


Data Structure Documentation

struct OVR::HashSetBase::TableType

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
struct OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::TableType

Definition at line 896 of file OVR_Hash.h.

Collaboration diagram for OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::TableType:
Collaboration graph
Data Fields
UPInt EntryCount
UPInt SizeMask

Member Typedef Documentation

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
typedef HashSetBase<C, HashF, AltHashF, Allocator, Entry> OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::SelfType

Definition at line 202 of file OVR_Hash.h.

Member Enumeration Documentation

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
anonymous enum
private
Enumerator
HashMinSize 

Definition at line 197 of file OVR_Hash.h.

Constructor & Destructor Documentation

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::HashSetBase ( )
inline

Definition at line 204 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::HashSetBase ( int  sizeHint)
inline

Definition at line 205 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::HashSetBase ( const SelfType src)
inline

Definition at line 206 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::~HashSetBase ( )
inline

Definition at line 208 of file OVR_Hash.h.

Member Function Documentation

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class CRef >
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Add ( const CRef &  key)
inline

Definition at line 290 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class CRef >
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::add ( const CRef &  key,
UPInt  hashValue 
)
inlineprivate

Definition at line 748 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Assign ( const SelfType src)
inline

Definition at line 226 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
Iterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Begin ( )
inline

Definition at line 643 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
ConstIterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Begin ( ) const
inline

Definition at line 658 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::CheckExpand ( )
inline

Definition at line 420 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Clear ( void  )
inline

Definition at line 242 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
Entry& OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::E ( UPInt  index)
inlineprivate

Definition at line 818 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
const Entry& OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::E ( UPInt  index) const
inlineprivate

Definition at line 824 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
Iterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::End ( )
inline

Definition at line 656 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
ConstIterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::End ( ) const
inline

Definition at line 659 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
Iterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Find ( const K &  key)
inline

Definition at line 662 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
ConstIterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Find ( const K &  key) const
inline

Definition at line 680 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
Iterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::FindAlt ( const K &  key)
inline

Definition at line 671 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
ConstIterator OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::FindAlt ( const K &  key) const
inline

Definition at line 683 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
SPInt OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::findIndex ( const K &  key) const
inlineprivate

Definition at line 688 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
SPInt OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::findIndexAlt ( const K &  key) const
inlineprivate

Definition at line 697 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
SPInt OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::findIndexCore ( const K &  key,
UPInt  hashValue 
) const
inlineprivate

Definition at line 707 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
C* OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Get ( const K &  key)
inline

Definition at line 362 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
const C* OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Get ( const K &  key) const
inline

Definition at line 371 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
const C* OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::GetAlt ( const K &  key) const
inline

Definition at line 381 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
C* OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::GetAlt ( const K &  key)
inline

Definition at line 390 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
bool OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::GetAlt ( const K &  key,
C *  pval 
) const
inline

Definition at line 399 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
UPInt OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::GetSize ( void  ) const
inline

Definition at line 412 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
bool OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::IsEmpty ( void  ) const
inline

Definition at line 260 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class CRef >
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Remove ( const CRef &  key)
inline

Definition at line 353 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class K >
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::RemoveAlt ( const K &  key)
inline

Definition at line 298 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Resize ( UPInt  n)
inline

Definition at line 435 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
template<class CRef >
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::Set ( const CRef &  key)
inline

Definition at line 270 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::SetCapacity ( UPInt  newSize)
inline

Definition at line 449 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
void OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::setRawCapacity ( UPInt  newSize)
inlineprivate

Definition at line 835 of file OVR_Hash.h.

Friends And Related Function Documentation

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
friend struct ConstIterator
friend

Definition at line 545 of file OVR_Hash.h.

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
friend struct Iterator
friend

Definition at line 641 of file OVR_Hash.h.

Field Documentation

template<class C, class HashF = FixedSizeHash<C>, class AltHashF = HashF, class Allocator = ContainerAllocator<C>, class Entry = HashsetCachedEntry<C, HashF>>
TableType* OVR::HashSetBase< C, HashF, AltHashF, Allocator, Entry >::pTable
private

Definition at line 903 of file OVR_Hash.h.


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