Gecode::Support Namespace Reference
Detailed Description
Support algorithms and datastructures
Classes | |
| class | BlockAllocator |
| Manage memory organized into block lists (allocator). More... | |
| class | BlockClient |
| Client for block allocator of type T. More... | |
| class | DynamicArray |
| Array with arbitrary number of elements. More... | |
| class | DynamicStack |
| Stack with arbitrary number of elements. More... | |
| class | Map |
| Hash map. More... | |
| class | SymbolMap |
| Hash table for strings. More... | |
| class | Pointer |
| Pointer wrapper class to make pointers hashable. More... | |
| class | PtrMap |
| Hash table for pointers. More... | |
| class | LinearCongruentialGenerator |
| Template for linear congruential generators. More... | |
| class | SentinelStack |
| A simple stack that uses a sentinel element. More... | |
| class | QuickSortStack |
| Static stack for quicksort. More... | |
| class | PQueue |
| Simple fixed-size priority queue. More... | |
| class | StaticStack |
| Stack with fixed number of elements. More... | |
| class | Symbol |
| Immutable Symbols. More... | |
Typedefs | |
| typedef LinearCongruentialGenerator< 2147483647, 48271, 44488, 3399 > | RandomGenerator |
| Default values for linear congruential generator. | |
Functions | |
| template<class T> | |
| T | ptr_cast (void *p) |
| Cast p into pointer of type T. | |
| void * | mark (void *p) |
| Return marked pointer for p. | |
| bool | marked (void *p) |
| Check whether p is marked. | |
| void * | unmark (void *p) |
| Return the unmarked pointer for a marked pointer p. | |
| template<class Type, class LessThan> | |
| void | exchange (Type &a, Type &b, LessThan <) |
| Exchange elements according to order. | |
| template<class Type, class LessThan> | |
| void | insertion (Type *l, Type *r, LessThan <) |
| Standard insertion sort. | |
| template<class Type, class LessThan> | |
| Type * | partition (Type *l, Type *r, LessThan <) |
| Standard partioning. | |
| template<class Type, class LessThan> | |
| void | quicksort (Type *l, Type *r, LessThan <) |
| Standard quick sort. | |
| template<class Type, class LessThan> | |
| void | insertion (Type *x, int n, LessThan <) |
| Insertion sort. | |
| template<class Type, class LessThan> | |
| void | quicksort (Type *x, int n, LessThan <) |
| Quicksort. | |
Variables | |
| int const | QuickSortCutoff = 20 |
| Perform quicksort only for more elements. | |
Function Documentation
template<class T>
| T Gecode::Support::ptr_cast | ( | void * | p | ) | [inline] |
| void * Gecode::Support::mark | ( | void * | p | ) | [inline] |
| bool Gecode::Support::marked | ( | void * | p | ) | [inline] |
| void * Gecode::Support::unmark | ( | void * | p | ) | [inline] |
Return the unmarked pointer for a marked pointer p.
Definition at line 59 of file marked-pointer.icc.
template<class Type, class LessThan>
| void Gecode::Support::exchange | ( | Type & | a, | |
| Type & | b, | |||
| LessThan & | lt | |||
| ) | [inline] |
template<class Type, class LessThan>
| void Gecode::Support::insertion | ( | Type * | l, | |
| Type * | r, | |||
| LessThan & | lt | |||
| ) | [inline] |
template<class Type, class LessThan>
| Type* Gecode::Support::partition | ( | Type * | l, | |
| Type * | r, | |||
| LessThan & | lt | |||
| ) | [inline] |
template<class Type, class LessThan>
| void Gecode::Support::quicksort | ( | Type * | l, | |
| Type * | r, | |||
| LessThan & | lt | |||
| ) | [inline] |
Variable Documentation
| int const Gecode::Support::QuickSortCutoff = 20 |
