
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 | |
| BaseView (Space &home, bool share, BaseView &p) | |
| Constructor for cloning p. | |
| BaseView (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)
| Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::BaseView | ( | Space & | home, |
| bool | share, | ||
| BaseView< VX, VY, VZ, shr > & | p | ||
| ) | [inline, protected] |
| Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::BaseView | ( | Home | home, |
| ViewArray< VX > & | x, | ||
| VY | y, | ||
| VZ | z, | ||
| int | c | ||
| ) | [inline, protected] |
| size_t Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::dispose | ( | Space & | home | ) | [inline, virtual] |
Delete propagator and return its size.
Reimplemented from Gecode::Actor.
| PropCost Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::cost | ( | const Space & | home, |
| const ModEventDelta & | med | ||
| ) | const [virtual] |
Cost function (defined as low linear)
Implements Gecode::Propagator.
| void Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::count | ( | Space & | home | ) | [inline, protected] |
| int Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::atleast | ( | void | ) | const [inline, protected] |
| int Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::atmost | ( | void | ) | const [inline, protected] |
| bool Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::sharing | ( | const ViewArray< VX > & | x, |
| const VY & | y, | ||
| const VZ & | z | ||
| ) | [inline, static, protected] |
ViewArray<VX> Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::x [protected] |
VY Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::y [protected] |
VZ Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::z [protected] |
int Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::c [protected] |