Generated on Fri Jul 21 2023 00:00:00 for Gecode by doxygen 1.9.7
Gecode::Search::NoNGL Class Reference

Class for a sentinel no-good literal. More...

#include <nogoods.hh>

Public Member Functions

 NoNGL (void)
 Constructor for creation.
 
 NoNGL (Space &home)
 Constructor for creation.
 
 NoNGL (Space &home, NoNGL &ngl)
 Constructor for cloning ngl.
 
virtual void subscribe (Space &home, Propagator &p)
 Subscribe propagator p to all views of the no-good literal.
 
virtual void reschedule (Space &home, Propagator &p)
 Schedule propagator p for all views of the no-good literal.
 
virtual void cancel (Space &home, Propagator &p)
 Cancel propagator p from all views of the no-good literal.
 
virtual NGL::Status status (const Space &home) const
 Test the status of the no-good literal.
 
virtual ExecStatus prune (Space &home)
 Propagate the negation of the no-good literal.
 
virtual NGLcopy (Space &home)
 Create copy.
 
- Public Member Functions inherited from Gecode::NGL
 NGL (void)
 Constructor for creation.
 
 NGL (Space &home)
 Constructor for creation.
 
 NGL (Space &home, NGL &ngl)
 Constructor for cloning ngl.
 
virtual void subscribe (Space &home, Propagator &p)=0
 Subscribe propagator p to all views of the no-good literal.
 
virtual void cancel (Space &home, Propagator &p)=0
 Cancel propagator p from all views of the no-good literal.
 
virtual void reschedule (Space &home, Propagator &p)=0
 Schedule propagator p for all views of the no-good literal.
 
virtual NGL::Status status (const Space &home) const =0
 Test the status of the no-good literal.
 
virtual ExecStatus prune (Space &home)=0
 Propagate the negation of the no-good literal.
 
virtual NGLcopy (Space &home)=0
 Create copy.
 
virtual bool notice (void) const
 Whether dispose must always be called (returns false)
 
virtual size_t dispose (Space &home)
 Dispose.
 
bool leaf (void) const
 Test whether literal is a leaf.
 
NGLnext (void) const
 Return pointer to next literal.
 
void leaf (bool l)
 Mark literal as leaf or not.
 
void next (NGL *n)
 Set pointer to next literal
 
NGLadd (NGL *n, bool l)
 Add node n and mark it as leaf l and return n.
 
virtual ~NGL (void)
 To avoid warnings.
 

Additional Inherited Members

- Public Types inherited from Gecode::NGL
enum  Status { FAILED , SUBSUMED , NONE }
 The status of a no-good literal. More...
 
- Static Public Member Functions inherited from Gecode::NGL
static void * operator new (size_t s, Space &home)
 Allocate memory from space.
 
static void operator delete (void *s, Space &home)
 Return memory to space.
 
static void operator delete (void *p)
 Needed for exceptions.
 
static void * operator new (size_t s)
 Not used.
 

Detailed Description

Class for a sentinel no-good literal.

Definition at line 42 of file nogoods.hh.

Constructor & Destructor Documentation

◆ NoNGL() [1/3]

Gecode::Search::NoNGL::NoNGL ( void  )
inline

Constructor for creation.

Definition at line 37 of file nogoods.hpp.

◆ NoNGL() [2/3]

Gecode::Search::NoNGL::NoNGL ( Space home)
inline

Constructor for creation.

Definition at line 40 of file nogoods.hpp.

◆ NoNGL() [3/3]

Gecode::Search::NoNGL::NoNGL ( Space home,
NoNGL ngl 
)
inline

Constructor for cloning ngl.

Definition at line 44 of file nogoods.hpp.

Member Function Documentation

◆ subscribe()

void Gecode::Search::NoNGL::subscribe ( Space home,
Propagator p 
)
virtual

Subscribe propagator p to all views of the no-good literal.

Implements Gecode::NGL.

Definition at line 49 of file nogoods.cpp.

◆ reschedule()

void Gecode::Search::NoNGL::reschedule ( Space home,
Propagator p 
)
virtual

Schedule propagator p for all views of the no-good literal.

Implements Gecode::NGL.

Definition at line 57 of file nogoods.cpp.

◆ cancel()

void Gecode::Search::NoNGL::cancel ( Space home,
Propagator p 
)
virtual

Cancel propagator p from all views of the no-good literal.

Implements Gecode::NGL.

Definition at line 53 of file nogoods.cpp.

◆ status()

NGL::Status Gecode::Search::NoNGL::status ( const Space home) const
virtual

Test the status of the no-good literal.

Implements Gecode::NGL.

Definition at line 61 of file nogoods.cpp.

◆ prune()

ExecStatus Gecode::Search::NoNGL::prune ( Space home)
virtual

Propagate the negation of the no-good literal.

Implements Gecode::NGL.

Definition at line 66 of file nogoods.cpp.

◆ copy()

NGL * Gecode::Search::NoNGL::copy ( Space home)
virtual

Create copy.

Implements Gecode::NGL.

Definition at line 71 of file nogoods.cpp.


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