Containers
[Utilities]
Classes | |
class | csArray< T, ElementHandler, MemoryAllocator > |
A templated array class. More... | |
class | csArrayCmp< T, K > |
A functor template which encapsulates a key and a comparison function for use with key-related csArray<> searching methods, such as FindKey() and FindSortedKey(). More... | |
class | csArrayElementHandler< T > |
The default element handler for csArray. More... | |
class | csArrayMemoryAllocator< T > |
The default allocator for csArray. More... | |
class | csComparator< T1, T2 > |
A template providing various comparison and ordering functions. More... | |
class | csComparator< const char *, const char * > |
csComparator<> specialization for strings that uses strcmp(). More... | |
class | csComparator< csString, csString > |
csComparator<> specialization for csString that uses strcmp(). More... | |
class | csComparator< csString, csString > |
csComparator<> specialization for csString that uses strcmp(). More... | |
class | csComparator< csStringBase, csStringBase > |
class | csComparator< csStrKey, csStrKey > |
csComparator<> specialization for csStrKey that uses strcmp(). More... | |
class | csComparatorString< T > |
Template that can be used as a base class for comparators for string types. More... | |
class | csComparatorStruct< T > |
Template that can be used as a base class for comparators for POD (plain old data) types. More... | |
class | csHash< T, K > |
A generic hash table class, which grows dynamically and whose buckets are unsorted arrays. More... | |
class | csHashComputer< T > |
Template for hash value computing. More... | |
class | csHashComputer< const char * > |
csHashComputer<> specialization for strings that uses csHashCompute(). More... | |
class | csHashComputer< double > |
class | csHashComputer< float > |
class | csHashComputer< int > |
class | csHashComputer< long > |
class | csHashComputer< longlong > |
class | csHashComputer< ulonglong > |
class | csHashComputer< unsigned int > |
class | csHashComputer< unsigned long > |
class | csHashComputer< void * > |
csHashComputer<> specialization for an integral type. More... | |
class | csHashComputer< void * > |
csHashComputer<> specialization for an integral type. More... | |
class | csHashComputerIntegral< T > |
Template for hash value computing, suitable for integral types and types that can be casted to such. More... | |
class | csHashComputerString< T > |
Template that can be used as a base class for hash computers for string types (must support cast to const char*). More... | |
class | csHashComputerStruct< T > |
Template that can be used as a base class for hash computers for POD structs. More... | |
class | csHashReversible< T, K > |
A csHash<> that maintains a reverse hash for indexing keys by values. More... | |
class | csMemoryPool |
A quick-allocation pool for storage of arbitrary data. More... | |
class | csPtrKey< T > |
A helper template to use pointers as keys for hashes. More... | |
class | csRedBlackTree< K > |
A red-black-tree. More... | |
class | csRedBlackTreeMap< K, T > |
Key-value-map, backed by csRedBlackTree. More... | |
class | csRedBlackTreePayload< K, T > |
Helper template to allow storage of a payload together with a key in a csRedBlackTree. More... | |
class | csSafeCopyArray< T > |
Convenience class to make a version of csArray<> that does a safe-copy in case of reallocation of the array. More... | |
class | csSafeCopyArrayMemoryAllocator< T, ElementHandler > |
Special allocator for csArray that makes sure that when the array is reallocated that the objects are properly constructed and destructed at their new position. More... | |
class | csSet< T > |
This class implements a basic set for objects. More... | |
class | csStrKey |
This is a simple helper class to make a copy of a const char*. More... | |
Defines | |
#define | csArrayCmpDecl(T1, T2) csArrayCmp<T1,T2> |
#define | csArrayCmpInvoke(C, R) C(R) |
#define | csArrayTemplate(K) template <class K> |
Functions | |
unsigned int | csHashCompute (char const *, size_t length) |
Compute a hash key for a string of a given length. | |
unsigned int | csHashCompute (char const *) |
Compute a hash key for a null-terminated string. | |
void * | operator new (size_t n, csMemoryPool *p) |
void * | operator new (size_t n, csMemoryPool &p) |
Convenience new operator which makes the allocation from a csMemoryPool rather than from the system heap. | |
Variables | |
const size_t | csArrayItemNotFound = (size_t)-1 |
This value is returned whenever an array item could not be located or does not exist. |
Function Documentation
|
Compute a hash key for a string of a given length. Note that these keys are non-unique; some dissimilar strings may generate the same key. For unique keys, see csStringSet. |
|
Compute a hash key for a null-terminated string. Note that these keys are non-unique; some dissimilar strings may generate the same key. For unique keys, see csStringSet. Referenced by csHashComputerStruct< T >::ComputeHash(), csHashComputerString< const char * >::ComputeHash(), and csStrKey::GetHash(). |
|
Convenience
For instance, if FooBar* foobar = new (pool) FooBar;
pool , you should invoke foobar's destructor as follows: foobar->~FooBar();
// ... it is now safe to destroy `pool' ...
Definition at line 136 of file mempool.h. References csMemoryPool::Alloc(). |
Variable Documentation
|
Generated for Crystal Space by doxygen 1.4.6