Generated on Tue May 22 09:41:41 2018 for Gecode by doxygen 1.6.3

Gecode::Set::SetVarImpBase Class Reference

Base-class for Set-variable implementations. More...

#include <var-imp.hpp>

List of all members.

Public Member Functions

 SetVarImpBase (void)
 Constructor for creating static instance of variable.
 SetVarImpBase (Gecode::Space &home)
 Constructor for creating variable.

Protected Member Functions

 SetVarImpBase (Gecode::Space &home, SetVarImpBase &x)
 Constructor for cloning x.

Dependencies



void subscribe (Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned, bool schedule)
 Subscribe propagator p with propagation condition pc.
void subscribe (Gecode::Space &home, Gecode::Advisor &a, bool assigned, bool failed)
 Subscribe advisor a if assigned is false.
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 information d.
void reschedule (Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned)
 Re-schedule propagator p.
static void schedule (Gecode::Space &home, Gecode::Propagator &p, Gecode::ModEvent me)
 Schedule propagator p.

Detailed Description

Base-class for Set-variable implementations.

Definition at line 139 of file var-imp.hpp.


Constructor & Destructor Documentation

Gecode::Set::SetVarImpBase::SetVarImpBase ( Gecode::Space home,
SetVarImpBase x 
) [inline, protected]

Constructor for cloning x.

Definition at line 343 of file var-imp.hpp.

Gecode::Set::SetVarImpBase::SetVarImpBase ( void   )  [inline]

Constructor for creating static instance of variable.

Definition at line 336 of file var-imp.hpp.

Gecode::Set::SetVarImpBase::SetVarImpBase ( Gecode::Space home  )  [inline]

Constructor for creating variable.

Definition at line 339 of file var-imp.hpp.


Member Function Documentation

void Gecode::Set::SetVarImpBase::subscribe ( Gecode::Space home,
Gecode::Propagator p,
Gecode::PropCond  pc,
bool  assigned,
bool  schedule 
) [inline]

Subscribe propagator p with propagation condition pc.

In case schedule is false, the propagator is just subscribed but not scheduled for execution (this must be used when creating subscriptions during propagation).

In case the variable is assigned (that is, assigned is true), the subscribing propagator is scheduled for execution. Otherwise, the propagator subscribes and is scheduled for execution with modification event me provided that pc is different from PC_SET_VAL.

Definition at line 347 of file var-imp.hpp.

void Gecode::Set::SetVarImpBase::subscribe ( Gecode::Space home,
Gecode::Advisor a,
bool  assigned,
bool  failed 
) [inline]

Subscribe advisor a if assigned is false.

Reimplemented from Gecode::VarImp< Gecode::Set::SetVarImpConf >.

Definition at line 351 of file var-imp.hpp.

Gecode::ModEvent Gecode::Set::SetVarImpBase::notify ( Gecode::Space home,
Gecode::ModEvent  me,
Gecode::Delta d 
) [inline]

Notify that variable implementation has been modified with modification event me and delta information d.

Definition at line 365 of file var-imp.hpp.

void Gecode::Set::SetVarImpBase::schedule ( Gecode::Space home,
Gecode::Propagator p,
Gecode::ModEvent  me 
) [inline, static]

Schedule propagator p.

Definition at line 356 of file var-imp.hpp.

void Gecode::Set::SetVarImpBase::reschedule ( Gecode::Space home,
Gecode::Propagator p,
Gecode::PropCond  pc,
bool  assigned 
) [inline]

Re-schedule propagator p.

In case the variable is assigned (that is, assigned is true), the propagator is scheduled for execution. Otherwise, the propagator is scheduled for execution with modification event me provided that pc is different from PC_SET_VAL.

Definition at line 360 of file var-imp.hpp.


The documentation for this class was generated from the following file: