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 |