Generated on Sun Feb 17 15:25:21 2019 for Gecode by doxygen 1.6.3

Gecode::Int::Count Namespace Reference

Counting propagators. More...

Classes

class  IntBase
 Baseclass for count propagators (integer). More...
class  EqInt
 Propagator for counting views (equal integer to number of equal views) More...
class  GqInt
 Propagator for counting views (greater or equal integer to number of equal views) More...
class  LqInt
 Propagator for counting views (less or equal integer to number of equal views) More...
class  ViewBase
 Base-class for count propagators (view). More...
class  EqView
 Propagator for counting views (equal to number of equal views) More...
class  LqView
 Propagator for counting views (less or equal to number of equal views) More...
class  GqView
 Propagator for counting views (greater or equal to number of equal views) 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.
template<class VY >
bool isval (VY y)
 Return whether y is a value.
template<class VY >
void subscribe (Space &home, Propagator &p, VY y)
 Subscribe propagator p to view y.
template<class VY >
void cancel (Space &home, Propagator &p, VY y)
 Cancel propagator p for view y.
template<class VY >
void reschedule (Space &home, Propagator &p, VY y)
 Schedule propagator p for view y.
template<class VX >
RelTest holds (VX x, ConstIntView y)
 Test whether x and y are equal.
template<class VX >
RelTest holds (VX x, ZeroIntView y)
 Test whether x and y are equal.
template<class VX >
RelTest holds (VX x, const IntSet &y)
 Test whether x and y are equal.
template<class VX >
RelTest holds (VX x, VX y)
 Test whether x and y are equal.
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, ConstIntView y)
 Post that all views in x are equal to y.
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, ZeroIntView y)
 Post that all views in x are equal to y.
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, const IntSet &y)
 Post that all views in x are equal to y.
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, ConstIntView y)
 Post that all views in x are not equal to y.
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, ZeroIntView y)
 Post that all views in x are not equal to y.
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.
template<class VX >
ExecStatus post_true (Home home, ViewArray< VX > &x, VX y)
 Post that all views in x are equal to y.
template<class VX >
ExecStatus post_false (Home home, ViewArray< VX > &x, VX y)
 Post that all views in x are not equal to y.
template<class VY >
void update (VY &y, Space &home, bool shared, VY py)
 Update view y from py.
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, VX y)
 Prune that y is the union of x.
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, ConstIntView y)
 Prune that y is the union of x.
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, ZeroIntView y)
 Prune that y is the union of x.
template<class VX >
ExecStatus prune (Home home, ViewArray< VX > &x, const IntSet &y)
 Prune that y is the union of x.

Detailed Description

Counting propagators.


Function Documentation

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

Return whether y is an integer set.

Relations for domain consistent counting

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

Definition at line 51 of file rel.hpp.

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

Return whether y is a value.

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

Definition at line 64 of file rel.hpp.

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

Definition at line 71 of file rel.hpp.

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

Subscribe propagator p to view y.

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

Definition at line 81 of file rel.hpp.

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

Cancel propagator p for view y.

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

Definition at line 92 of file rel.hpp.

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

Schedule propagator p for view y.

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

Definition at line 103 of file rel.hpp.

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

Definition at line 109 of file rel.hpp.

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

Test whether x and y are equal.

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

Test whether x and y are equal.

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

Test whether x and y are equal.

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

Test whether x and y are equal.

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

Definition at line 151 of file rel.hpp.

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

Definition at line 157 of file rel.hpp.

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

Definition at line 163 of file rel.hpp.

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.

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.

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.

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

Definition at line 194 of file rel.hpp.

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

Definition at line 200 of file rel.hpp.

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

Definition at line 206 of file rel.hpp.

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.

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.

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.

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.

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

Definition at line 246 of file rel.hpp.

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.

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

Definition at line 258 of file rel.hpp.

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

Definition at line 264 of file rel.hpp.

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

Definition at line 271 of file rel.hpp.

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

Definition at line 278 of file rel.hpp.

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

Definition at line 286 of file rel.hpp.

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

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

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

Update view y from py.

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

Prune that y is the union of x.

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

Prune that y is the union of x.

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

Prune that y is the union of x.

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

Prune that y is the union of x.