40 namespace Gecode {
namespace Search {
namespace Meta {
94 while ((
l != NULL) &&
l->leaf()) {
95 l->reschedule(home,*
this);
99 l->reschedule(home,*
this);
115 while ((
l != NULL) &&
l->leaf()) {
116 l->cancel(home,*
this);
n--;
127 while ((
l != NULL) &&
l->leaf()) {
128 l->subscribe(home,*
this);
n++;
133 l->subscribe(home,*
this);
n++;
147 while ((
l != NULL) &&
l->leaf()) {
148 switch (
l->status(home)) {
161 p =
l;
l =
l->next();
169 switch (
l->status(home)) {
181 while ((
l != NULL) &&
l->leaf()) {
182 l->subscribe(home,*
this);
n++;
186 l->subscribe(home,*
this);
n++;
206 (void)
l->dispose(home);
209 }
else if (
root != NULL) {
212 while ((
l != NULL) &&
l->leaf())
221 return sizeof(*this);
static PropCost linear(PropCost::Mod m, unsigned int n)
Linear complexity for modifier pcm and size measure n.
ExecStatus ES_SUBSUMED(Propagator &p)
virtual ExecStatus prune(Space &home)=0
Propagate the negation of the no-good literal.
Actor must always be disposed.
The literal is neither failed nor subsumed.
Status
The status of a no-good literal.
Base-class for propagators.
Base-class for both propagators and branchers.
#define GECODE_ES_CHECK(es)
Check whether execution status es is failed or subsumed, and forward failure or subsumption.
int p
Number of positive literals for node type.
int n
Number of negative literals for node type.
bool failed(void) const
Check whether space is failed.
virtual NGL::Status status(const Space &home) const =0
Test the status of the no-good literal.
NGL * next(void) const
Return pointer to next literal.
void ignore(Actor &a, ActorProperty p, bool duplicate=false)
Ignore actor property.
virtual size_t dispose(Space &home)
Delete actor and return its size.
virtual void cancel(Space &home, Propagator &p)=0
Cancel propagator p from all views of the no-good literal.
virtual size_t dispose(Space &home)
Dispose.
Propagation has not computed fixpoint.
Gecode toplevel namespace
int ModEventDelta
Modification event deltas.
#define GECODE_NEVER
Assert that this command is never executed.
void rfree(void *p, size_t s)
Free memory previously allocated with alloc (might be reused later)
virtual void reschedule(Space &home, Propagator &p)=0
Schedule propagator p for all views of the no-good literal.
No-good literal recorded during search.