Gecode::Int::GCC::BndImp< View, Card, isView, shared > Class Template Reference
Implementation of the bounds consistent global cardinality propagator. More...
#include <gcc.hh>
Public Member Functions | |
| virtual size_t | dispose (Space &home) |
| Destructor. | |
| virtual size_t | allocated (void) const |
| Return how much extra memory is allocated by the propagator. | |
| virtual Actor * | copy (Space &home, bool share) |
| Copy propagator during cloning. | |
| virtual PropCost | cost (const Space &home, const ModEventDelta &med) const |
| Cost funtion returning dynamic low linear. | |
| virtual ExecStatus | propagate (Space &home, const ModEventDelta &med) |
| Perform propagation. | |
Protected Member Functions | |
| BndImp (Space &home, ViewArray< View > &, ViewArray< Card > &, bool, bool) | |
| Constructor for posting. | |
| BndImp (Space &home, bool share, BndImp< View, Card, isView, shared > &p) | |
| Constructor for cloning p. | |
Protected Attributes | |
| ViewArray< View > | x |
| Views on which to perform bounds-propagation. | |
| ViewArray< Card > | k |
| Array containing either fixed cardinalities or CardViews. | |
| PartialSum< Card > * | lps |
| Data structure storing the sum of the views lower bounds Necessary for reasoning about the interval capacities in the propagation algorithm. | |
| PartialSum< Card > * | ups |
| Data structure storing the sum of the views upper bounds. | |
| bool | card_fixed |
| Stores whether cardinalities are all assigned. | |
| bool | skip_lbc |
| Stores whether the minium required occurences of the cardinalities are all zero. If so, we do not need to perform lower bounds propagation. | |
Detailed Description
template<class View, class Card, bool isView, bool shared>
class Gecode::Int::GCC::BndImp< View, Card, isView, shared >
Implementation of the bounds consistent global cardinality propagator.
Definition at line 127 of file gcc.hh.
Constructor & Destructor Documentation
template<class View , class Card , bool isView, bool shared>
| Gecode::Int::GCC::BndImp< View, Card, isView, shared >::BndImp | ( | Space & | home, | |
| ViewArray< View > & | x0, | |||
| ViewArray< Card > & | k0, | |||
| bool | cf, | |||
| bool | nolbc | |||
| ) | [inline, protected] |
template<class View , class Card , bool isView, bool shared>
| Gecode::Int::GCC::BndImp< View, Card, isView, shared >::BndImp | ( | Space & | home, | |
| bool | share, | |||
| BndImp< View, Card, isView, shared > & | p | |||
| ) | [inline, protected] |
Member Function Documentation
template<class View , class Card , bool isView, bool shared>
| size_t Gecode::Int::GCC::BndImp< View, Card, isView, shared >::dispose | ( | Space & | home | ) | [inline, virtual] |
template<class View , class Card , bool isView, bool shared>
| size_t Gecode::Int::GCC::BndImp< View, Card, isView, shared >::allocated | ( | void | ) | const [inline, virtual] |
template<class View , class Card , bool isView, bool shared>
| Actor * Gecode::Int::GCC::BndImp< View, Card, isView, shared >::copy | ( | Space & | home, | |
| bool | share | |||
| ) | [inline, virtual] |
template<class View , class Card , bool isView, bool shared>
| PropCost Gecode::Int::GCC::BndImp< View, Card, isView, shared >::cost | ( | const Space & | home, | |
| const ModEventDelta & | med | |||
| ) | const [inline, virtual] |
template<class View , class Card , bool isView, bool shared>
| ExecStatus Gecode::Int::GCC::BndImp< View, Card, isView, shared >::propagate | ( | Space & | home, | |
| const ModEventDelta & | med | |||
| ) | [inline, virtual] |
Member Data Documentation
template<class View, class Card, bool isView, bool shared>
ViewArray<View> Gecode::Int::GCC::BndImp< View, Card, isView, shared >::x [protected] |
template<class View, class Card, bool isView, bool shared>
ViewArray<Card> Gecode::Int::GCC::BndImp< View, Card, isView, shared >::k [protected] |
template<class View, class Card, bool isView, bool shared>
PartialSum<Card>* Gecode::Int::GCC::BndImp< View, Card, isView, shared >::lps [protected] |
template<class View, class Card, bool isView, bool shared>
PartialSum<Card>* Gecode::Int::GCC::BndImp< View, Card, isView, shared >::ups [protected] |
template<class View, class Card, bool isView, bool shared>
bool Gecode::Int::GCC::BndImp< View, Card, isView, shared >::card_fixed [protected] |
template<class View, class Card, bool isView, bool shared>
bool Gecode::Int::GCC::BndImp< View, Card, isView, shared >::skip_lbc [protected] |
The documentation for this class was generated from the following files:
- gecode/int/gcc.hh (Revision: 8139)
- gecode/int/gcc/bnd.hpp (Revision: 8129)
