Generated on Sat Feb 7 2015 02:01:40 for Gecode by doxygen 1.8.9.1
Gecode::NGL Class Referenceabstract

No-good literal recorded during search. More...

#include <core.hpp>

Public Types

enum  Status { FAILED, SUBSUMED, NONE }
 The status of a no-good literal. More...
 

Public Member Functions

 NGL (void)
 Constructor for creation. More...
 
 NGL (Space &home)
 Constructor for creation. More...
 
 NGL (Space &home, bool share, NGL &ngl)
 Constructor for cloning ngl. More...
 
virtual void subscribe (Space &home, Propagator &p)=0
 Subscribe propagator p to all views of the no-good literal. More...
 
virtual void cancel (Space &home, Propagator &p)=0
 Cancel propagator p from all views of the no-good literal. More...
 
virtual NGL::Status status (const Space &home) const =0
 Test the status of the no-good literal. More...
 
virtual ExecStatus prune (Space &home)=0
 Propagate the negation of the no-good literal. More...
 
virtual NGLcopy (Space &home, bool share)=0
 Create copy. More...
 
virtual bool notice (void) const
 Whether dispose must always be called (returns false) More...
 
virtual size_t dispose (Space &home)
 Dispose. More...
 

Internal management routines

bool leaf (void) const
 Test whether literal is a leaf. More...
 
NGLnext (void) const
 Return pointer to next literal. More...
 
void leaf (bool l)
 Mark literal as leaf or not. More...
 
void next (NGL *n)
 Set pointer to next literal More...
 
NGLadd (NGL *n, bool l)
 Add node n and mark it as leaf l and return n. More...
 

Memory management

static void * operator new (size_t s, Space &home)
 Allocate memory from space. More...
 
static void operator delete (void *s, Space &home)
 Return memory to space. More...
 
static void operator delete (void *p)
 Needed for exceptions. More...
 

Detailed Description

No-good literal recorded during search.

Definition at line 971 of file core.hpp.

Member Enumeration Documentation

The status of a no-good literal.

Enumerator
FAILED 

The literal is failed.

SUBSUMED 

The literal is subsumed.

NONE 

The literal is neither failed nor subsumed.

Definition at line 977 of file core.hpp.

Constructor & Destructor Documentation

Gecode::NGL::NGL ( void  )
inline

Constructor for creation.

Definition at line 3215 of file core.hpp.

Gecode::NGL::NGL ( Space home)
inline

Constructor for creation.

Definition at line 3218 of file core.hpp.

Gecode::NGL::NGL ( Space home,
bool  share,
NGL ngl 
)
inline

Constructor for cloning ngl.

Definition at line 3221 of file core.hpp.

Member Function Documentation

bool Gecode::NGL::notice ( void  ) const
virtual

Whether dispose must always be called (returns false)

Definition at line 693 of file core.cpp.

bool Gecode::NGL::leaf ( void  ) const
inline

Test whether literal is a leaf.

Definition at line 3192 of file core.hpp.

NGL * Gecode::NGL::next ( void  ) const
inline

Return pointer to next literal.

Definition at line 3196 of file core.hpp.

void Gecode::NGL::leaf ( bool  l)
inline

Mark literal as leaf or not.

Definition at line 3200 of file core.hpp.

void Gecode::NGL::next ( NGL n)
inline

Set pointer to next literal

Definition at line 3204 of file core.hpp.

NGL * Gecode::NGL::add ( NGL n,
bool  l 
)
inline

Add node n and mark it as leaf l and return n.

Definition at line 3208 of file core.hpp.

void * Gecode::NGL::operator new ( size_t  s,
Space home 
)
inlinestatic

Allocate memory from space.

Definition at line 2602 of file core.hpp.

void Gecode::NGL::operator delete ( void *  s,
Space home 
)
inlinestatic

Return memory to space.

Definition at line 2600 of file core.hpp.

void Gecode::NGL::operator delete ( void *  p)
inlinestatic

Needed for exceptions.

Definition at line 2598 of file core.hpp.


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