Base-class for count propagators (view) More...
#include <count.hh>
Public Member Functions | |
virtual size_t | dispose (Space &home) |
Delete propagator and return its size. | |
virtual PropCost | cost (const Space &home, const ModEventDelta &med) const |
Cost function (defined as low linear) | |
Protected Member Functions | |
ViewBase (Space &home, bool share, ViewBase &p) | |
Constructor for cloning p. | |
ViewBase (Home home, ViewArray< VX > &x, VY y, VZ z, int c) | |
Constructor for creation. | |
void | count (Space &home) |
Count how many views are equal now. | |
int | atleast (void) const |
How many views are at least equal. | |
int | atmost (void) const |
How many views are at most equal. | |
Static Protected Member Functions | |
static bool | sharing (const ViewArray< VX > &x, const VY &y, const VZ &z) |
Test whether there is sharing of z with x or y. | |
Protected Attributes | |
ViewArray< VX > | x |
Views still to count. | |
VY | y |
View to compare to. | |
VZ | z |
View which yields result of counting. | |
int | c |
Number of views which are equal and have been eliminated. |
Base-class for count propagators (view)
Constructor for cloning p.
Gecode::Int::Count::ViewBase::ViewBase | ( | Home | home, |
ViewArray< VX > & | x, | ||
VY | y, | ||
VZ | z, | ||
int | c | ||
) | [inline, protected] |
Constructor for creation.
Definition at line 42 of file view-base.hpp.
size_t Gecode::Int::Count::ViewBase::dispose | ( | Space & | home | ) | [inline, virtual] |
Delete propagator and return its size.
Reimplemented from Gecode::Actor.
Definition at line 69 of file view-base.hpp.
PropCost Gecode::Int::Count::ViewBase::cost | ( | const Space & | home, |
const ModEventDelta & | med | ||
) | const [virtual] |
Cost function (defined as low linear)
Implements Gecode::Propagator.
Definition at line 63 of file view-base.hpp.
void Gecode::Int::Count::ViewBase::count | ( | Space & | home | ) | [inline, protected] |
Count how many views are equal now.
Definition at line 81 of file view-base.hpp.
int Gecode::Int::Count::ViewBase::atleast | ( | void | ) | const [inline, protected] |
How many views are at least equal.
Definition at line 102 of file view-base.hpp.
int Gecode::Int::Count::ViewBase::atmost | ( | void | ) | const [inline, protected] |
How many views are at most equal.
Definition at line 108 of file view-base.hpp.
bool Gecode::Int::Count::ViewBase::sharing | ( | const ViewArray< VX > & | x, |
const VY & | y, | ||
const VZ & | z | ||
) | [inline, static, protected] |
Test whether there is sharing of z with x or y.
Definition at line 119 of file view-base.hpp.
ViewArray<VX> Gecode::Int::Count::ViewBase::x [protected] |
VY Gecode::Int::Count::ViewBase::y [protected] |
VZ Gecode::Int::Count::ViewBase::z [protected] |
int Gecode::Int::Count::ViewBase::c [protected] |