Generated on Thu Apr 5 2018 19:44:19 for Gecode by doxygen 1.8.13
Gecode::Int::Count Namespace Reference

Counting propagators. More...

Classes

class  EqInt
 Propagator for counting views (equal integer to number of equal views) More...
 
class  EqView
 Propagator for counting views (equal to number of equal views) More...
 
class  GqInt
 Propagator for counting views (greater or equal integer to number of equal views) More...
 
class  GqView
 Propagator for counting views (greater or equal to number of equal views) More...
 
class  IntBase
 Baseclass for count propagators (integer) More...
 
class  LqInt
 Propagator for counting views (less or equal integer to number of equal views) More...
 
class  LqView
 Propagator for counting views (less or equal to number of equal views) More...
 
class  ViewBase
 Base-class for count propagators (view) More...
 

Functions

template<>
bool isintset (IntSet y)
 
template<>
bool isval (IntSet y)
 
void subscribe (Space &home, Propagator &p, IntSet &y)
 
void cancel (Space &home, Propagator &p, IntSet &y)
 
void reschedule (Space &home, Propagator &p, IntSet &y)
 
void update (IntSet &y, Space &home, IntSet &py)
 
template<class VY >
void update (VY &y, Space &home, VY py)
 
template<class VX >
ExecStatus post_true (Home home, VX x, ConstIntView y)
 
template<class VX >
ExecStatus post_true (Home home, VX x, ZeroIntView)
 
template<class VX >
ExecStatus post_true (Home home, VX x, const IntSet &y)
 
template<class VX >
ExecStatus post_false (Home home, VX x, ConstIntView y)
 
template<class VX >
ExecStatus post_false (Home home, VX x, ZeroIntView)
 
template<class VX >
ExecStatus post_false (Home home, VX x, const IntSet &y)
 
template<class VX >
ExecStatus post_true (Home home, VX x, VX y)
 
template<class VX >
ExecStatus post_false (Home home, VX x, VX y)
 
template<class VX >
ExecStatus prune (Space &home, ViewArray< VX > &x, ConstIntView)
 
template<class VX >
ExecStatus prune (Space &home, ViewArray< VX > &x, ZeroIntView)
 
template<class VX >
ExecStatus prune (Space &home, ViewArray< VX > &x, const IntSet &y)
 
template<class VX >
ExecStatus prune (Space &home, ViewArray< VX > &x, VX y)
 
template<class VX >
bool shared (const IntSet &, VX)
 
template<class VY >
bool isintset (VY y)
 Return whether y is an integer set. More...
 
template<class VY >
bool isval (VY y)
 Return whether y is a value. More...
 
template<class VY >
void subscribe (Space &home, Propagator &p, VY y)
 Subscribe propagator p to view y. More...
 
template<class VY >
void cancel (Space &home, Propagator &p, VY y)
 Cancel propagator p for view y. More...
 
template<class VY >
void reschedule (Space &home, Propagator &p, VY y)
 Schedule propagator p for view y. More...
 
template<class VX >
RelTest holds (VX x, ConstIntView y)
 Test whether x and y are equal. More...
 
template<class VX >
RelTest holds (VX x, ZeroIntView y)
 Test whether x and y are equal. More...
 
template<class VX >
RelTest holds (VX x, const IntSet &y)
 Test whether x and y are equal. More...
 
template<class VX >
RelTest holds (VX x, VX y)
 Test whether x and y are equal. More...
 
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, ConstIntView y)
 Post that all views in x are equal to y. More...
 
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, ZeroIntView y)
 Post that all views in x are equal to y. More...
 
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, const IntSet &y)
 Post that all views in x are equal to y. More...
 
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, ConstIntView y)
 Post that all views in x are not equal to y. More...
 
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, ZeroIntView y)
 Post that all views in x are not equal to y. More...
 
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, const IntSet &y)
 Post that all views in x are not equal to y. More...
 
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, VX y)
 Post that all views in x are equal to y. More...
 
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, VX y)
 Post that all views in x are not equal to y. More...
 
template<class VY >
void update (VY &y, Space &home, bool shared, VY py)
 Update view y from py. More...
 
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, VX y)
 Prune that y is the union of x. More...
 
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, ConstIntView y)
 Prune that y is the union of x. More...
 
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, ZeroIntView y)
 Prune that y is the union of x. More...
 
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, const IntSet &y)
 Prune that y is the union of x. More...
 

Detailed Description

Counting propagators.

Function Documentation

◆ isintset() [1/2]

template<class VY >
bool Gecode::Int::Count::isintset ( VY  y)
inline

Return whether y is an integer set.

Relations for domain consistent counting

Definition at line 49 of file rel.hpp.

◆ isintset() [2/2]

template<>
bool Gecode::Int::Count::isintset ( IntSet  y)
inline

Definition at line 55 of file rel.hpp.

◆ isval() [1/2]

template<class VY >
bool Gecode::Int::Count::isval ( VY  y)
inline

Return whether y is a value.

Definition at line 63 of file rel.hpp.

◆ isval() [2/2]

template<>
bool Gecode::Int::Count::isval ( IntSet  y)
inline

Definition at line 68 of file rel.hpp.

◆ subscribe() [1/2]

void Gecode::Int::Count::subscribe ( Space home,
Propagator p,
IntSet y 
)
inline

Definition at line 75 of file rel.hpp.

◆ subscribe() [2/2]

template<class VY >
void Gecode::Int::Count::subscribe ( Space home,
Propagator p,
VY  y 
)
inline

Subscribe propagator p to view y.

Definition at line 80 of file rel.hpp.

◆ cancel() [1/2]

void Gecode::Int::Count::cancel ( Space home,
Propagator p,
IntSet y 
)
inline

Definition at line 85 of file rel.hpp.

◆ cancel() [2/2]

template<class VY >
void Gecode::Int::Count::cancel ( Space home,
Propagator p,
VY  y 
)
inline

Cancel propagator p for view y.

Definition at line 91 of file rel.hpp.

◆ reschedule() [1/2]

void Gecode::Int::Count::reschedule ( Space home,
Propagator p,
IntSet y 
)
inline

Definition at line 96 of file rel.hpp.

◆ reschedule() [2/2]

template<class VY >
void Gecode::Int::Count::reschedule ( Space home,
Propagator p,
VY  y 
)
inline

Schedule propagator p for view y.

Definition at line 101 of file rel.hpp.

◆ update() [1/3]

void Gecode::Int::Count::update ( IntSet y,
Space home,
IntSet py 
)
inline

Definition at line 107 of file rel.hpp.

◆ update() [2/3]

template<class VY >
void Gecode::Int::Count::update ( VY &  y,
Space home,
VY  py 
)
inline

Definition at line 113 of file rel.hpp.

◆ holds() [1/4]

template<class VX >
RelTest Gecode::Int::Count::holds ( VX  x,
ConstIntView  y 
)
inline

Test whether x and y are equal.

Definition at line 119 of file rel.hpp.

◆ holds() [2/4]

template<class VX >
RelTest Gecode::Int::Count::holds ( VX  x,
ZeroIntView   
)
inline

Test whether x and y are equal.

Definition at line 124 of file rel.hpp.

◆ holds() [3/4]

template<class VX >
RelTest Gecode::Int::Count::holds ( VX  x,
const IntSet y 
)
inline

Test whether x and y are equal.

Definition at line 129 of file rel.hpp.

◆ holds() [4/4]

template<class VX >
RelTest Gecode::Int::Count::holds ( VX  x,
VX  y 
)
inline

Test whether x and y are equal.

Definition at line 149 of file rel.hpp.

◆ post_true() [1/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
VX  x,
ConstIntView  y 
)
inline

Definition at line 155 of file rel.hpp.

◆ post_true() [2/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
VX  x,
ZeroIntView   
)
inline

Definition at line 161 of file rel.hpp.

◆ post_true() [3/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
VX  x,
const IntSet y 
)
inline

Definition at line 167 of file rel.hpp.

◆ post_true() [4/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
ViewArray< VX > &  x,
ConstIntView  y 
)
inline

Post that all views in x are equal to y.

Definition at line 174 of file rel.hpp.

◆ post_true() [5/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
ViewArray< VX > &  x,
ZeroIntView   
)
inline

Post that all views in x are equal to y.

Definition at line 181 of file rel.hpp.

◆ post_true() [6/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
ViewArray< VX > &  x,
const IntSet y 
)
inline

Post that all views in x are equal to y.

Definition at line 188 of file rel.hpp.

◆ post_false() [1/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
VX  x,
ConstIntView  y 
)
inline

Definition at line 198 of file rel.hpp.

◆ post_false() [2/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
VX  x,
ZeroIntView   
)
inline

Definition at line 204 of file rel.hpp.

◆ post_false() [3/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
VX  x,
const IntSet y 
)
inline

Definition at line 210 of file rel.hpp.

◆ post_false() [4/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
ViewArray< VX > &  x,
ConstIntView  y 
)
inline

Post that all views in x are not equal to y.

Definition at line 217 of file rel.hpp.

◆ post_false() [5/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
ViewArray< VX > &  x,
ZeroIntView   
)
inline

Post that all views in x are not equal to y.

Definition at line 224 of file rel.hpp.

◆ post_false() [6/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
ViewArray< VX > &  x,
const IntSet y 
)
inline

Post that all views in x are not equal to y.

Definition at line 231 of file rel.hpp.

◆ post_true() [7/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
ViewArray< VX > &  x,
VX  y 
)
inline

Post that all views in x are equal to y.

Definition at line 241 of file rel.hpp.

◆ post_true() [8/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_true ( Home  home,
VX  x,
VX  y 
)
inline

Definition at line 250 of file rel.hpp.

◆ post_false() [7/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
ViewArray< VX > &  x,
VX  y 
)
inline

Post that all views in x are not equal to y.

Definition at line 255 of file rel.hpp.

◆ post_false() [8/8]

template<class VX >
ExecStatus Gecode::Int::Count::post_false ( Home  home,
VX  x,
VX  y 
)
inline

Definition at line 262 of file rel.hpp.

◆ prune() [1/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Space home,
ViewArray< VX > &  x,
ConstIntView   
)
inline

Definition at line 268 of file rel.hpp.

◆ prune() [2/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Space home,
ViewArray< VX > &  x,
ZeroIntView   
)
inline

Definition at line 275 of file rel.hpp.

◆ prune() [3/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Space home,
ViewArray< VX > &  x,
const IntSet y 
)
inline

Definition at line 282 of file rel.hpp.

◆ prune() [4/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Space home,
ViewArray< VX > &  x,
VX  y 
)
inline

Definition at line 290 of file rel.hpp.

◆ shared()

template<class VX >
bool Gecode::Int::Count::shared ( const IntSet ,
VX   
)
inline

Definition at line 122 of file view-base.hpp.

◆ update() [3/3]

template<class VY >
void Gecode::Int::Count::update ( VY &  y,
Space home,
bool  shared,
VY  py 
)

Update view y from py.

◆ prune() [5/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Home  home,
ViewArray< VX > &  x,
VX  y 
)

Prune that y is the union of x.

◆ prune() [6/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Home  home,
ViewArray< VX > &  x,
ConstIntView  y 
)

Prune that y is the union of x.

◆ prune() [7/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Home  home,
ViewArray< VX > &  x,
ZeroIntView  y 
)

Prune that y is the union of x.

◆ prune() [8/8]

template<class VX >
ExecStatus Gecode::Int::Count::prune ( Home  home,
ViewArray< VX > &  x,
const IntSet y 
)

Prune that y is the union of x.