Generated on Sat Feb 7 2015 02:01:58 for Gecode by doxygen 1.8.9.1
Test::Search::HasSolutions Class Reference

Space that requires propagation and has solutions. More...

Public Member Functions

void branch (const IntVarArgs &x, HowToBranch htb)
 Branch on x according to htb. More...
 
 HasSolutions (HowToBranch _htb1, HowToBranch _htb2, HowToBranch _htb3, HowToConstrain _htc=HTC_NONE)
 Constructor for space creation. More...
 
 HasSolutions (bool share, HasSolutions &s)
 Constructor for cloning s. More...
 
virtual Spacecopy (bool share)
 Copy during cloning. More...
 
virtual void constrain (const Space &_s)
 Add constraint for next better solution. More...
 
virtual int solutions (void) const
 Return number of solutions. More...
 
virtual bool best (void) const
 Verify that this is best solution. More...
 
virtual void master (unsigned long int i, const Space *_s, NoGoods &)
 Rule out that solution is found more than once during restarts. More...
 
- Public Member Functions inherited from Test::Search::TestSpace
 TestSpace (void)
 Constructor for space creation. More...
 
 TestSpace (bool share, TestSpace &s)
 Constructor for cloning s. More...
 
virtual bool master (const CRI &cri)
 Master configuration function that does not restart. More...
 
- Public Member Functions inherited from Gecode::Space
 Space (void)
 Default constructor. More...
 
virtual ~Space (void)
 Destructor. More...
 
 Space (bool share, Space &s)
 Constructor for cloning. More...
 
virtual bool slave (const CRI &cri)
 Slave configuration function for restart meta search engine. More...
 
SpaceStatus status (StatusStatistics &stat=unused_status)
 Query space status. More...
 
const Choicechoice (void)
 Create new choice for current brancher. More...
 
const Choicechoice (Archive &e) const
 Create new choice from e. More...
 
Spaceclone (bool share=true, CloneStatistics &stat=unused_clone) const
 Clone space. More...
 
void commit (const Choice &c, unsigned int a, CommitStatistics &stat=unused_commit)
 Commit choice c for alternative a. More...
 
void trycommit (const Choice &c, unsigned int a, CommitStatistics &stat=unused_commit)
 If possible, commit choice c for alternative a. More...
 
NGLngl (const Choice &c, unsigned int a)
 Create no-good literal for choice c and alternative a. More...
 
void print (const Choice &c, unsigned int a, std::ostream &o) const
 Print branch for choice c and alternative a. More...
 
void notice (Actor &a, ActorProperty p, bool duplicate=false)
 Notice actor property. More...
 
void ignore (Actor &a, ActorProperty p, bool duplicate=false)
 Ignore actor property. More...
 
ExecStatus ES_SUBSUMED (Propagator &p)
 
ExecStatus ES_SUBSUMED_DISPOSED (Propagator &p, size_t s)
 Propagator p is subsumed More...
 
ExecStatus ES_FIX_PARTIAL (Propagator &p, const ModEventDelta &med)
 Propagator p has computed partial fixpoint More...
 
ExecStatus ES_NOFIX_PARTIAL (Propagator &p, const ModEventDelta &med)
 Propagator p has not computed partial fixpoint More...
 
template<class A >
ExecStatus ES_FIX_DISPOSE (Council< A > &c, A &a)
 Advisor a must be disposed More...
 
template<class A >
ExecStatus ES_NOFIX_DISPOSE (Council< A > &c, A &a)
 Advisor a must be disposed and its propagator must be run More...
 
template<class A >
ExecStatus ES_NOFIX_DISPOSE_FORCE (Council< A > &c, A &a)
 Advisor a must be disposed and its propagator must be forcefully rescheduled More...
 
void fail (void)
 Fail space. More...
 
bool failed (void) const
 Check whether space is failed. More...
 
bool stable (void) const
 Return if space is stable (at fixpoint or failed) More...
 
unsigned int propagators (void) const
 Return number of propagators. More...
 
unsigned int branchers (void) const
 Return number of branchers. More...
 
template<class T >
T * alloc (long unsigned int n)
 Allocate block of n objects of type T from space heap. More...
 
template<class T >
T * alloc (long int n)
 Allocate block of n objects of type T from space heap. More...
 
template<class T >
T * alloc (unsigned int n)
 Allocate block of n objects of type T from space heap. More...
 
template<class T >
T * alloc (int n)
 Allocate block of n objects of type T from space heap. More...
 
template<class T >
void free (T *b, long unsigned int n)
 Delete n objects allocated from space heap starting at b. More...
 
template<class T >
void free (T *b, long int n)
 Delete n objects allocated from space heap starting at b. More...
 
template<class T >
void free (T *b, unsigned int n)
 Delete n objects allocated from space heap starting at b. More...
 
template<class T >
void free (T *b, int n)
 Delete n objects allocated from space heap starting at b. More...
 
template<class T >
T * realloc (T *b, long unsigned int n, long unsigned int m)
 Reallocate block of n objects starting at b to m objects of type T from the space heap. More...
 
template<class T >
T * realloc (T *b, long int n, long int m)
 Reallocate block of n objects starting at b to m objects of type T from the space heap. More...
 
template<class T >
T * realloc (T *b, unsigned int n, unsigned int m)
 Reallocate block of n objects starting at b to m objects of type T from the space heap. More...
 
template<class T >
T * realloc (T *b, int n, int m)
 Reallocate block of n objects starting at b to m objects of type T from the space heap. More...
 
template<class T >
T ** realloc (T **b, long unsigned int n, long unsigned int m)
 Reallocate block of n pointers starting at b to m objects of type T* from the space heap. More...
 
template<class T >
T ** realloc (T **b, long int n, long int m)
 Reallocate block of n pointers starting at b to m objects of type T* from the space heap. More...
 
template<class T >
T ** realloc (T **b, unsigned int n, unsigned int m)
 Reallocate block of n pointers starting at b to m objects of type T* from the space heap. More...
 
template<class T >
T ** realloc (T **b, int n, int m)
 Reallocate block of n pointers starting at b to m objects of type T* from the space heap. More...
 
void * ralloc (size_t s)
 Allocate memory on space heap. More...
 
void rfree (void *p, size_t s)
 Free memory previously allocated with alloc (might be reused later) More...
 
void * rrealloc (void *b, size_t n, size_t m)
 Reallocate memory block starting at b from size n to size s. More...
 
template<size_t >
void * fl_alloc (void)
 Allocate from freelist-managed memory. More...
 
template<size_t >
void fl_dispose (FreeList *f, FreeList *l)
 Return freelist-managed memory to freelist. More...
 
void flush (void)
 Flush cached memory blocks. More...
 
Home operator() (Propagator &p)
 Return a home for this space with the information that p is being rewritten. More...
 
template<class T >
T & construct (void)
 Construction routines. More...
 
template<class T , typename A1 >
T & construct (A1 const &a1)
 Constructs a single object of type T from space heap using a unary constructor. More...
 
template<class T , typename A1 , typename A2 >
T & construct (A1 const &a1, A2 const &a2)
 Constructs a single object of type T from space heap using a binary constructor. More...
 
template<class T , typename A1 , typename A2 , typename A3 >
T & construct (A1 const &a1, A2 const &a2, A3 const &a3)
 Constructs a single object of type T from space heap using a ternary constructor. More...
 
template<class T , typename A1 , typename A2 , typename A3 , typename A4 >
T & construct (A1 const &a1, A2 const &a2, A3 const &a3, A4 const &a4)
 Constructs a single object of type T from space heap using a quaternary constructor. More...
 
template<class T , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 >
T & construct (A1 const &a1, A2 const &a2, A3 const &a3, A4 const &a4, A5 const &a5)
 Constructs a single object of type T from space heap using a quinary constructor. More...
 
void afc_decay (double d)
 Set AFC decay factor to d More...
 
double afc_decay (void) const
 Return AFC decay factor. More...
 
void afc_set (double a)
 Reset AFC to a. More...
 

Static Public Member Functions

static std::string name (void)
 Return name. More...
 
- Static Public Member Functions inherited from Gecode::Space
static void * operator new (size_t)
 Allocate memory from heap for new space. More...
 
static void operator delete (void *)
 Free memory allocated from heap. More...
 

Public Attributes

IntVarArray x
 Variables used. More...
 
HowToBranch htb1
 How to branch. More...
 
HowToBranch htb2
 
HowToBranch htb3
 
HowToConstrain htc
 How to constrain. More...
 

Detailed Description

Space that requires propagation and has solutions.

Definition at line 166 of file search.cpp.

Constructor & Destructor Documentation

Test::Search::HasSolutions::HasSolutions ( HowToBranch  _htb1,
HowToBranch  _htb2,
HowToBranch  _htb3,
HowToConstrain  _htc = HTC_NONE 
)
inline

Constructor for space creation.

Definition at line 191 of file search.cpp.

Test::Search::HasSolutions::HasSolutions ( bool  share,
HasSolutions s 
)
inline

Constructor for cloning s.

Definition at line 202 of file search.cpp.

Member Function Documentation

void Test::Search::HasSolutions::branch ( const IntVarArgs x,
HowToBranch  htb 
)
inline

Branch on x according to htb.

Definition at line 175 of file search.cpp.

virtual Space* Test::Search::HasSolutions::copy ( bool  share)
inlinevirtual

Copy during cloning.

Implements Gecode::Space.

Definition at line 208 of file search.cpp.

virtual void Test::Search::HasSolutions::constrain ( const Space _s)
inlinevirtual

Add constraint for next better solution.

Reimplemented from Gecode::Space.

Definition at line 212 of file search.cpp.

virtual int Test::Search::HasSolutions::solutions ( void  ) const
inlinevirtual

Return number of solutions.

Implements Test::Search::TestSpace.

Definition at line 245 of file search.cpp.

virtual bool Test::Search::HasSolutions::best ( void  ) const
inlinevirtual

Verify that this is best solution.

Implements Test::Search::TestSpace.

Definition at line 257 of file search.cpp.

static std::string Test::Search::HasSolutions::name ( void  )
inlinestatic

Return name.

Definition at line 285 of file search.cpp.

virtual void Test::Search::HasSolutions::master ( unsigned long int  i,
const Space _s,
NoGoods  
)
inlinevirtual

Rule out that solution is found more than once during restarts.

Definition at line 289 of file search.cpp.

Member Data Documentation

IntVarArray Test::Search::HasSolutions::x

Variables used.

Definition at line 169 of file search.cpp.

HowToBranch Test::Search::HasSolutions::htb1

How to branch.

Definition at line 171 of file search.cpp.

HowToBranch Test::Search::HasSolutions::htb2

Definition at line 171 of file search.cpp.

HowToBranch Test::Search::HasSolutions::htb3

Definition at line 171 of file search.cpp.

HowToConstrain Test::Search::HasSolutions::htc

How to constrain.

Definition at line 173 of file search.cpp.


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