Gecode::Int::Element::Int< V0, V1, Idx, Val > Class Template Reference
[Integer propagators]
Element propagator for array of integers More...
#include <element.hh>
Classes | |
class | ByVal |
Sorting pointers to (index,value) pairs in value order. More... | |
class | IdxVal |
Linked index-value pairs. More... | |
class | IterIdxUnmark |
Value iterator for indices in index-value map. More... | |
class | IterVal |
Value iterator for values in index-value map. More... | |
class | IterValUnmark |
Value iterator for values in index-value map. More... | |
Public Member Functions | |
virtual Actor * | copy (Space &home, bool share) |
Perform copying during cloning. | |
virtual PropCost | cost (const Space &home, const ModEventDelta &med) const |
Cost function (defined as high binary). | |
virtual void | reschedule (Space &home) |
Schedule function. | |
virtual ExecStatus | propagate (Space &home, const ModEventDelta &med) |
Perform propagation. | |
virtual size_t | dispose (Space &home) |
Delete propagator and return its size. | |
Static Public Member Functions | |
static ExecStatus | post (Home home, IntSharedArray &i, V0 x0, V1 x1) |
Post propagator for . | |
Protected Types | |
typedef Gecode::Support::IntTypeTraits < Idx >::utype | IdxSize |
Type for index size. | |
typedef Gecode::Support::IntTypeTraits < Val >::utype | ValSize |
Type for value size. | |
Protected Member Functions | |
void | prune_idx (void) |
Prune index according to x0. | |
void | prune_val (void) |
Prune values according to x1. | |
Int (Space &home, bool shared, Int &p) | |
Constructor for cloning p. | |
Int (Home home, IntSharedArray &i, V0 x0, V1 x1) | |
Constructor for creation. | |
Static Protected Member Functions | |
static ExecStatus | assigned_val (Space &home, IntSharedArray &c, V0 x0, V1 x1) |
Prune when x1 is assigned. | |
Protected Attributes | |
V0 | x0 |
View for index. | |
IdxSize | s0 |
Size of x0 at last execution. | |
V1 | x1 |
View for result. | |
ValSize | s1 |
Size of x1 at last execution. | |
IntSharedArray | c |
Shared array of integer values. | |
IdxVal * | iv |
The index-value data structure. |
Detailed Description
template<class V0, class V1, class Idx, class Val>
class Gecode::Int::Element::Int< V0, V1, Idx, Val >
Element propagator for array of integers
Requires
#include <gecode/int/element.hh>
Definition at line 61 of file element.hh.
Member Typedef Documentation
typedef Gecode::Support::IntTypeTraits<Idx>::utype Gecode::Int::Element::Int< V0, V1, Idx, Val >::IdxSize [protected] |
Type for index size.
Definition at line 158 of file element.hh.
typedef Gecode::Support::IntTypeTraits<Val>::utype Gecode::Int::Element::Int< V0, V1, Idx, Val >::ValSize [protected] |
Type for value size.
Definition at line 164 of file element.hh.
Constructor & Destructor Documentation
Gecode::Int::Element::Int< V0, V1, Idx, Val >::Int | ( | Space & | home, | |
bool | shared, | |||
Int< V0, V1, Idx, Val > & | p | |||
) | [inline, protected] |
Gecode::Int::Element::Int< V0, V1, Idx, Val >::Int | ( | Home | home, | |
IntSharedArray & | i, | |||
V0 | x0, | |||
V1 | x1 | |||
) | [inline, protected] |
Member Function Documentation
void Gecode::Int::Element::Int< V0, V1, Idx, Val >::prune_idx | ( | void | ) | [inline, protected] |
void Gecode::Int::Element::Int< V0, V1, Idx, Val >::prune_val | ( | void | ) | [inline, protected] |
ExecStatus Gecode::Int::Element::Int< V0, V1, Idx, Val >::assigned_val | ( | Space & | home, | |
IntSharedArray & | c, | |||
V0 | x0, | |||
V1 | x1 | |||
) | [inline, static, protected] |
Actor * Gecode::Int::Element::Int< V0, V1, Idx, Val >::copy | ( | Space & | home, | |
bool | share | |||
) | [inline, virtual] |
PropCost Gecode::Int::Element::Int< V0, V1, Idx, Val >::cost | ( | const Space & | home, | |
const ModEventDelta & | med | |||
) | const [inline, virtual] |
Cost function (defined as high binary).
Implements Gecode::Propagator.
void Gecode::Int::Element::Int< V0, V1, Idx, Val >::reschedule | ( | Space & | home | ) | [inline, virtual] |
ExecStatus Gecode::Int::Element::Int< V0, V1, Idx, Val >::propagate | ( | Space & | home, | |
const ModEventDelta & | med | |||
) | [inline, virtual] |
ExecStatus Gecode::Int::Element::Int< V0, V1, Idx, Val >::post | ( | Home | home, | |
IntSharedArray & | i, | |||
V0 | x0, | |||
V1 | x1 | |||
) | [inline, static] |
size_t Gecode::Int::Element::Int< V0, V1, Idx, Val >::dispose | ( | Space & | home | ) | [inline, virtual] |
Delete propagator and return its size.
Reimplemented from Gecode::Actor.
Member Data Documentation
V0 Gecode::Int::Element::Int< V0, V1, Idx, Val >::x0 [protected] |
View for index.
Definition at line 156 of file element.hh.
IdxSize Gecode::Int::Element::Int< V0, V1, Idx, Val >::s0 [protected] |
Size of x0 at last execution.
Definition at line 160 of file element.hh.
V1 Gecode::Int::Element::Int< V0, V1, Idx, Val >::x1 [protected] |
View for result.
Definition at line 162 of file element.hh.
ValSize Gecode::Int::Element::Int< V0, V1, Idx, Val >::s1 [protected] |
Size of x1 at last execution.
Definition at line 166 of file element.hh.
IntSharedArray Gecode::Int::Element::Int< V0, V1, Idx, Val >::c [protected] |
Shared array of integer values.
Definition at line 168 of file element.hh.
IdxVal* Gecode::Int::Element::Int< V0, V1, Idx, Val >::iv [protected] |
The index-value data structure.
Definition at line 170 of file element.hh.
The documentation for this class was generated from the following files:
- gecode/int/element.hh (Revision: 15137)
- gecode/int/element/int.hpp (Revision: 15137)