44 #ifdef GECODE_HAS_INT_VARS 45 namespace Gecode {
namespace Int {
90 #ifdef GECODE_HAS_INT_VARS 91 namespace Gecode {
namespace Int {
136 #ifdef GECODE_HAS_SET_VARS 182 #ifdef GECODE_HAS_FLOAT_VARS 183 namespace Gecode {
namespace Float {
228 #ifdef GECODE_HAS_INT_VARS 229 namespace Gecode {
namespace Int {
289 #ifdef GECODE_HAS_INT_VARS 290 namespace Gecode {
namespace Int {
332 #ifdef GECODE_HAS_SET_VARS 333 namespace Gecode {
namespace Set {
424 #ifdef GECODE_HAS_FLOAT_VARS 425 namespace Gecode {
namespace Float {
428 FloatVarImpBase::FloatVarImpBase(
void) {}
483 #ifdef GECODE_HAS_INT_VARS 486 #ifdef GECODE_HAS_INT_VARS 489 #ifdef GECODE_HAS_SET_VARS 492 #ifdef GECODE_HAS_FLOAT_VARS Double-linked list for actors.
const Gecode::PropCond PC_SET_CLUB
Propagate when the cardinality or the least upper bound of a view changes.
SetVarImpBase(void)
Constructor for creating static instance of variable.
Base-class for variable implementations.
void reschedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned)
Re-schedule propagator p.
const Gecode::ModEvent ME_SET_FAILED
Domain operation has resulted in failure.
const Gecode::PropCond PC_SET_CARD
Propagate when the cardinality of a view changes.
const Gecode::ModEvent ME_SET_LUB
Domain operation has changed the least upper bound.
FloatVarImpBase(void)
Constructor for creating static instance of variable.
const Gecode::ModEvent ME_SET_BB
Domain operation has changed both greatest lower and least upper bound.
void reschedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned)
Re-schedule propagator p.
int ModEvent
Type for modification events.
static void schedule(Space &home, Propagator &p, ModEvent me, bool force=false)
Schedule propagator p with modification event me.
Base-class for propagators.
const Gecode::ModEvent ME_FLOAT_FAILED
Domain operation has resulted in failure.
const Gecode::ModEvent ME_FLOAT_VAL
Domain operation has resulted in a value (assigned variable)
Base-class for Int-variable implementations.
void subscribe(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned, bool schedule)
Subscribe propagator p with propagation condition pc.
static void schedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::ModEvent me)
Schedule propagator p.
void cancel(Space &home)
Cancel all subscriptions when variable implementation is assigned.
const Gecode::ModEvent ME_INT_FAILED
Domain operation has resulted in failure.
struct Gecode::@554::NNF::@60::@62 a
For atomic nodes.
int p
Number of positive literals for node type.
static void schedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::ModEvent me)
Schedule propagator p.
static ModEvent me(const ModEventDelta &med)
Project modification event for this variable type from med.
const Gecode::PropCond PC_INT_BND
Propagate when minimum or maximum of a view changes.
const Gecode::ModEvent ME_SET_CGLB
Domain operation has changed the greatest lower bound and the cardinality.
int PropCond
Type for propagation conditions.
const Gecode::ModEvent ME_INT_VAL
Domain operation has resulted in a value (assigned variable)
void reschedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned)
Re-schedule propagator p.
void reschedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned)
Re-schedule propagator p.
const Gecode::ModEvent ME_SET_CBB
Domain operation has changed both the greatest lower bound and the least upper bound, as well as the cardinality.
const Gecode::PropCond PC_INT_DOM
Propagate when domain changes.
const Gecode::ModEvent ME_INT_BND
Domain operation has changed the minimum or maximum of the domain.
Gecode::ModEvent notify(Gecode::Space &home, Gecode::ModEvent me, Gecode::Delta &d)
Notify that variable implementation has been modified with modification event me and delta informatio...
const Gecode::ModEvent ME_SET_GLB
Domain operation has changed the greatest lower bound.
void subscribe(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned, bool schedule)
Subscribe propagator p with propagation condition pc.
const Gecode::PropCond PC_SET_ANY
Propagate when any bound or the cardinality of a view changes.
Base-class for Set-variable implementations.
const Gecode::PropCond PC_FLOAT_VAL
Propagate when a view becomes assigned (single value)
Gecode::ModEvent notify(Gecode::Space &home, Gecode::ModEvent me, Gecode::Delta &d)
Notify that variable implementation has been modified with modification event me and delta informatio...
Node * x
Pointer to corresponding Boolean expression node.
Generic domain change information to be supplied to advisors.
const Gecode::ModEvent ME_INT_DOM
Domain operation has changed the domain.
const Gecode::PropCond PC_SET_CGLB
Propagate when the cardinality or the greatest lower bound of a view changes.
bool assigned(View x, int v)
Whether x is assigned to value v.
const Gecode::ModEvent ME_SET_CLUB
Domain operation has changed the least upper bound and the cardinality.
Base-class for Bool-variable implementations.
Gecode::ModEvent notify(Gecode::Space &home, Gecode::ModEvent me, Gecode::Delta &d)
Notify that variable implementation has been modified with modification event me and delta informatio...
static void reschedule(Space &home, Propagator &p, PropCond pc, bool assigned, ModEvent me)
Schedule propagator p.
IntVarImpBase(void)
Constructor for creating static instance of variable.
Configuration for Bool-variable implementations.
Gecode::ModEvent notify(Gecode::Space &home, Gecode::ModEvent me, Gecode::Delta &d)
Notify that variable implementation has been modified with modification event me and delta informatio...
const Gecode::PropCond PC_FLOAT_BND
Propagate when minimum or maximum of a view changes.
const Gecode::ModEvent ME_BOOL_FAILED
Domain operation has resulted in failure.
Configuration for Float-variable implementations.
static void schedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::ModEvent me)
Schedule propagator p.
Gecode toplevel namespace
Configuration for Int-variable implementations.
const Gecode::PropCond PC_SET_VAL
Propagate when a view becomes assigned (single value)
static void schedule(Gecode::Space &home, Gecode::Propagator &p, Gecode::ModEvent me)
Schedule propagator p.
const Gecode::ModEvent ME_FLOAT_BND
Domain operation has changed the minimum or maximum of the domain.
Base-class for Float-variable implementations.
void subscribe(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned, bool schedule)
Subscribe propagator p with propagation condition pc.
const Gecode::ModEvent ME_SET_VAL
Domain operation has resulted in a value (assigned variable)
const Gecode::ModEvent ME_SET_CARD
Domain operation has changed the variable cardinality.
BoolVarImpBase(void)
Constructor for creating static instance of variable.
#define GECODE_NEVER
Assert that this command is never executed.
Configuration for Set-variable implementations.
const Gecode::PropCond PC_INT_VAL
Propagate when a view becomes assigned (single value)
const Gecode::PropCond PC_BOOL_VAL
Propagate when a view becomes assigned (single value)
void subscribe(Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned, bool schedule)
Subscribe propagator p with propagation condition pc.
const Gecode::ModEvent ME_BOOL_VAL
Domain operation has resulted in a value (assigned variable)
void subscribe(Space &home, Propagator &p, PropCond pc, bool assigned, ModEvent me, bool schedule)
Subscribe propagator p with propagation condition pc.