PxHashBase

Defined in include/foundation/PxHashInternals.h

Inheritance Relationships

Base Type

template<class Entry, class Key, class HashFn, class GetKey, class PxAllocator, bool compacting>
class PxHashBase : private PxAllocator

Public Types

typedef Entry EntryType

Public Functions

inline PxHashBase(uint32_t initialTableSize = 64, float loadFactor = 0.75f)
inline PxHashBase(uint32_t initialTableSize, float loadFactor, const PxAllocator &alloc)
inline PxHashBase(const PxAllocator &alloc)
inline ~PxHashBase()
inline Entry *create(const Key &k, bool &exists)
inline const Entry *find(const Key &k) const
inline bool erase(const Key &k, Entry &e)
inline bool erase(const Key &k)
inline uint32_t size() const
inline uint32_t capacity() const
inline void clear()
inline void reserve(uint32_t size)
inline const Entry *getEntries() const
inline Entry *insertUnique(const Key &k)

Public Static Attributes

static const uint32_t EOL = 0xffffffff
class Iter

Public Functions

inline Iter(PxHashBase &b)
inline void check() const
inline const Entry &operator*() const
inline Entry &operator*()
inline const Entry *operator->() const
inline Entry *operator->()
inline Iter operator++()
inline Iter operator++(int)
inline bool done() const
class PxEraseIterator

Iterate over entries in a hash base and allow entry erase while iterating

Public Functions

inline PxEraseIterator(PxHashBase &b)
inline Entry *eraseCurrentGetNext(bool eraseCurrent)
inline void reset()