ezEngine  Milestone 7
ezSet< KeyType, Comparer, AllocatorWrapper > Class Template Reference

#include <Set.h>

Inheritance diagram for ezSet< KeyType, Comparer, AllocatorWrapper >:

Public Member Functions

 ezSet (const Comparer &comparer, ezAllocatorBase *pAllocator)
 
 ezSet (const ezSet< KeyType, Comparer, AllocatorWrapper > &other)
 
 ezSet (const ezSetBase< KeyType, Comparer > &other)
 
void operator= (const ezSet< KeyType, Comparer, AllocatorWrapper > &rhs)
 
void operator= (const ezSetBase< KeyType, Comparer > &rhs)
 
- Public Member Functions inherited from ezSetBase< KeyType, Comparer >
bool IsEmpty () const
 Returns whether there are no elements in the set. O(1) operation.
 
ezUInt32 GetCount () const
 Returns the number of elements currently stored in the set. O(1) operation.
 
void Clear ()
 Destroys all elements in the set and resets its size to zero.
 
Iterator GetIterator () const
 Returns a constant Iterator to the very first element.
 
Iterator GetLastIterator () const
 Returns a constant Iterator to the very last element. For reverse traversal.
 
Iterator Insert (const KeyType &key)
 Inserts the key into the tree and returns an Iterator to it. O(log n) operation.
 
bool Remove (const KeyType &key)
 Erases the element with the given key, if it exists. O(log n) operation.
 
Iterator Remove (const Iterator &pos)
 Erases the element at the given Iterator. O(log n) operation.
 
Iterator Find (const KeyType &key) const
 Searches for key, returns an Iterator to it or an invalid iterator, if no such key is found. O(log n) operation.
 
bool Contains (const KeyType &key) const
 Checks whether the given key is in the container.
 
bool Contains (const ezSetBase< KeyType, Comparer > &operand) const
 Checks whether the given key is in the container.
 
Iterator LowerBound (const KeyType &key) const
 Returns an Iterator to the element with a key equal or larger than the given key. Returns an invalid iterator, if there is no such element.
 
Iterator UpperBound (const KeyType &key) const
 Returns an Iterator to the element with a key that is LARGER than the given key. Returns an invalid iterator, if there is no such element.
 
void Union (const ezSetBase< KeyType, Comparer > &operand)
 Makes this set the union of itself and the operand.
 
void Difference (const ezSetBase< KeyType, Comparer > &operand)
 Makes this set the difference of itself and the operand, i.e. subtracts operand.
 
void Intersection (const ezSetBase< KeyType, Comparer > &operand)
 Makes this set the intersection of itself and the operand.
 
ezAllocatorBaseGetAllocator () const
 Returns the allocator that is used by this instance.
 
bool operator== (const ezSetBase< KeyType, Comparer > &rhs) const
 Comparison operator.
 
bool operator!= (const ezSetBase< KeyType, Comparer > &rhs) const
 Comparison operator.
 
ezUInt64 GetHeapMemoryUsage () const
 Returns the amount of bytes that are currently allocated on the heap.
 

Additional Inherited Members

- Protected Member Functions inherited from ezSetBase< KeyType, Comparer >
 ezSetBase (const Comparer &comparer, ezAllocatorBase *pAllocator)
 Initializes the set to be empty.
 
 ezSetBase (const ezSetBase< KeyType, Comparer > &cc, ezAllocatorBase *pAllocator)
 Copies all keys from the given set into this one.
 
 ~ezSetBase ()
 Destroys all elements in the set.
 
void operator= (const ezSetBase< KeyType, Comparer > &rhs)
 Copies all keys from the given set into this one.
 

Detailed Description

template<typename KeyType, typename Comparer = ezCompareHelper<KeyType>, typename AllocatorWrapper = ezDefaultAllocatorWrapper>
class ezSet< KeyType, Comparer, AllocatorWrapper >

See Also
ezSetBase

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