Test::Float::TestSpace Class Reference

Space for executing tests. More...

`#include <float.hh>`

## Public Member Functions

| TestSpace (int n, Gecode::FloatVal &d, Gecode::FloatNum s, Test *t)
| Create test space.
| TestSpace (int n, Gecode::FloatVal &d, Gecode::FloatNum s, Test *t, Gecode::ReifyMode rm)
| Create test space.
| TestSpace (TestSpace &s)
| Constructor for cloning s.
virtual Gecode::Space * | copy (void)
| Copy space during cloning.
virtual void | dropUntil (const Assignment &a)
| Add constraints to skip solutions to the a assignment.
bool | assigned (void) const
| Test whether all variables are assigned.
bool | matchAssignment (const Assignment &a) const
| Test whether all variables match assignment a.
void | post (void)
| Post propagator.
bool | failed (void)
| Compute a fixpoint and check for failure.
void | rel (int i, Gecode::FloatRelType frt, Gecode::FloatVal n)
| Perform integer tell operation on x[i].
void | rel (bool sol)
| Perform Boolean tell on b.
void | assign (const Assignment &a, MaybeType &sol, bool skip=false)
| Assign all (or all but one, if skip is true) variables to values in a If assignment of a variable is MT_MAYBE (if the two intervals are contiguous), sol is set to MT_MAYBE.
void | bound (void)
| Assing a random variable to a random bound.
Gecode::FloatNum | cut (int *cutDirections)
| Cut the bigger variable to an half sized interval. It returns the new size of the cut interval. cutDirections gives the direction to follow (upper part or lower part of the interval).
void | prune (int i)
| Prune some random values from variable i.
void | prune (void)
| Prune some random values for some random variable.
bool | prune (const Assignment &a, bool testfix)
| Prune values but not those in assignment a.
void | disable (void)
| Disable propagators in space and compute fixpoint (make all idle).
void | enable (void)
| Enable propagators in space.
unsigned int | propagators (void)
| Return the number of propagators.
| Space (void)
| Default constructor.
| Space (Space &s)
| Constructor for cloning.
virtual | ~Space (void)
| Destructor.
virtual void | constrain (const Space &best)
| Constrain function for best solution search.
virtual bool | master (const MetaInfo &mi)
| Master configuration function for meta search engines.
virtual bool | slave (const MetaInfo &mi)
| Slave configuration function for meta search engines.
SpaceStatus | status (StatusStatistics &stat=unused_status)
| Query space status.
const Choice * | choice (void)
| Create new choice for current brancher.
const Choice * | choice (Archive &e) const
| Create new choice from e.
Space * | clone (CloneStatistics &stat=unused_clone) const
| Clone space.
void | commit (const Choice &c, unsigned int a, CommitStatistics &stat=unused_commit)
| Commit choice c for alternative a.
void | trycommit (const Choice &c, unsigned int a, CommitStatistics &stat=unused_commit)
| If possible, commit choice c for alternative a.
NGL * | ngl (const Choice &c, unsigned int a)
| Create no-good literal for choice c and alternative a.
void | print (const Choice &c, unsigned int a, std::ostream &o) const
| Print branch for choice c and alternative a.
void | notice (Actor &a, ActorProperty p, bool duplicate=false)
| Notice actor property.
void | ignore (Actor &a, ActorProperty p, bool duplicate=false)
| Ignore actor property.
ExecStatus | ES_SUBSUMED (Propagator &p)
ExecStatus | ES_SUBSUMED_DISPOSED (Propagator &p, size_t s)
| Propagator p is subsumed
ExecStatus | ES_FIX_PARTIAL (Propagator &p, const ModEventDelta &med)
| Propagator p has computed partial fixpoint
ExecStatus | ES_NOFIX_PARTIAL (Propagator &p, const ModEventDelta &med)
| Propagator p has not computed partial fixpoint
template<class A>
ExecStatus | ES_FIX_DISPOSE (Council< A > &c, A &a)
| Advisor a must be disposed
template<class A>
ExecStatus | ES_NOFIX_DISPOSE (Council< A > &c, A &a)
| Advisor a must be disposed and its propagator must be run
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
void | fail (void)
| Fail space.
bool | failed (void) const
| Check whether space is failed.
bool | stable (void) const
| Return if space is stable (at fixpoint or failed).
Home | operator() (Propagator &p)
| Return a home for this space with the information that p is being rewritten.
Home | operator() (PropagatorGroup pg)
| Return a home for this space with propagator group information pg.
Home | operator() (BrancherGroup bg)
| Return a home for this space with brancher group information bg.
template<class T>
T * | alloc (long unsigned int n)
| Allocate block of n objects of type T from space heap.
template<class T>
T * | alloc (long int n)
| Allocate block of n objects of type T from space heap.
template<class T>
T * | alloc (unsigned int n)
| Allocate block of n objects of type T from space heap.
template<class T>
T * | alloc (int n)
| Allocate block of n objects of type T from space heap.
template<class T>
void | free (T *b, long unsigned int n)
| Delete n objects allocated from space heap starting at b.
template<class T>
void | free (T *b, long int n)
| Delete n objects allocated from space heap starting at b.
template<class T>
void | free (T *b, unsigned int n)
| Delete n objects allocated from space heap starting at b.
template<class T>
void | free (T *b, int n)
| Delete n objects allocated from space heap starting at b.
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.
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.
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.
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.
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.
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.
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.
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.
void * | ralloc (size_t s)
| Allocate memory on space heap.
void | rfree (void *p, size_t s)
| Free memory previously allocated with alloc (might be reused later).
void * | rrealloc (void *b, size_t n, size_t m)
| Reallocate memory block starting at b from size n to size s.
template<size_t>
void * | fl_alloc (void)
| Allocate from freelist-managed memory.
template<size_t>
void | fl_dispose (FreeList *f, FreeList *l)
| Return freelist-managed memory to freelist.
template<class T>
T & | construct (void)
| Construction routines.
template<class T, typename A1>
T & | construct (A1 const &a1)
| Constructs a single object of type T from space heap using a unary constructor.
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.
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.
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.
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.
void | afc_decay (double d)
| Set AFC decay factor to d
double | afc_decay (void) const
| Return AFC decay factor.
void | afc_unshare (void)
| Unshare AFC information for all propagators.

## Public Attributes

Gecode::FloatVal | d
| Initial domain.
Gecode::FloatNum | step
| Step for going to next solution.
Gecode::FloatVarArray | x
| Variables to be tested.
Gecode::Reify | r
| Reification information.
Test * | test
| The test currently run.
bool | reified
| Whether the test is for a reified propagator.

## Additional Inherited Members

Static Public Member Functions inherited from Gecode::HeapAllocated
static void * | operator new (size_t s)
| Memory management.
static void | operator delete (void *p)
| Free memory allocated from heap.

## Detailed Description

Space for executing tests.

Definition at line 166 of file float.hh.

## Constructor & Destructor Documentation

## TestSpace() [1/3]

Test::Float::TestSpace::TestSpace | ( | int | n,
|  | Gecode::FloatVal & | d,
|  | Gecode::FloatNum | s,
|  | Test * | t )

Create test space.

Creates n variables with domain d and step s for test t.

Definition at line 143 of file float.cpp.

## TestSpace() [2/3]

Test::Float::TestSpace::TestSpace | ( | int | n,
|  | Gecode::FloatVal & | d,
|  | Gecode::FloatNum | s,
|  | Test * | t,
|  | Gecode::ReifyMode | rm )

Create test space.

Creates n variables with domain d and step s for test t annd reification mode rm.

Definition at line 160 of file float.cpp.

## TestSpace() [3/3]

Test::Float::TestSpace::TestSpace | ( | TestSpace & | s | ) |

Constructor for cloning s.

Definition at line 171 of file float.cpp.

## Member Function Documentation

## copy()

Gecode::Space * Test::Float::TestSpace::copy | ( | void |  | ) |

virtual

Copy space during cloning.

Implements Gecode::Space.

Definition at line 181 of file float.cpp.

## dropUntil()

void Test::Float::TestSpace::dropUntil | ( | const Assignment & | a | ) |

virtual

Add constraints to skip solutions to the a assignment.

Definition at line 197 of file float.cpp.

## assigned()

bool Test::Float::TestSpace::assigned | ( | void |  | ) | const

Test whether all variables are assigned.

Definition at line 203 of file float.cpp.

## matchAssignment()

bool Test::Float::TestSpace::matchAssignment | ( | const Assignment & | a | ) | const

Test whether all variables match assignment a.

Definition at line 211 of file float.cpp.

## post()

void Test::Float::TestSpace::post | ( | void |  | ) |

Post propagator.

Definition at line 219 of file float.cpp.

## failed()

bool Test::Float::TestSpace::failed | ( | void |  | ) |

Compute a fixpoint and check for failure.

Definition at line 232 of file float.cpp.

## rel() [1/2]

void Test::Float::TestSpace::rel | ( | int | i,
|  | Gecode::FloatRelType | frt,
|  | Gecode::FloatVal | n )

Perform integer tell operation on x[i].

Definition at line 244 of file float.cpp.

## rel() [2/2]

void Test::Float::TestSpace::rel | ( | bool | sol | ) |

Perform Boolean tell on b.

Definition at line 261 of file float.cpp.

## assign()

void Test::Float::TestSpace::assign | ( | const Assignment & | a,
|  | MaybeType & | sol,
|  | bool | skip = false )

Assign all (or all but one, if skip is true) variables to values in a If assignment of a variable is MT_MAYBE (if the two intervals are contiguous), sol is set to MT_MAYBE.

Definition at line 270 of file float.cpp.

## bound()

void Test::Float::TestSpace::bound | ( | void |  | ) |

Assing a random variable to a random bound.

Definition at line 288 of file float.cpp.

## cut()

Gecode::FloatNum Test::Float::TestSpace::cut | ( | int * | cutDirections | ) |

Cut the bigger variable to an half sized interval. It returns the new size of the cut interval. cutDirections gives the direction to follow (upper part or lower part of the interval).

Definition at line 303 of file float.cpp.

## prune() [1/3]

void Test::Float::TestSpace::prune | ( | int | i | ) |

Prune some random values from variable i.

Definition at line 332 of file float.cpp.

## prune() [2/3]

void Test::Float::TestSpace::prune | ( | void |  | ) |

Prune some random values for some random variable.

Definition at line 348 of file float.cpp.

## prune() [3/3]

bool Test::Float::TestSpace::prune | ( | const Assignment & | a,
|  | bool | testfix )

Prune values but not those in assignment a.

Definition at line 359 of file float.cpp.

## disable()

void Test::Float::TestSpace::disable | ( | void |  | ) |

Disable propagators in space and compute fixpoint (make all idle).

Definition at line 191 of file float.cpp.

## enable()

void Test::Float::TestSpace::enable | ( | void |  | ) |

Enable propagators in space.

Definition at line 186 of file float.cpp.

## propagators()

unsigned int Test::Float::TestSpace::propagators | ( | void |  | ) |

Return the number of propagators.

Definition at line 410 of file float.cpp.

## Member Data Documentation

## d

Gecode::FloatVal Test::Float::TestSpace::d

Initial domain.

Definition at line 169 of file float.hh.

## step

Gecode::FloatNum Test::Float::TestSpace::step

Step for going to next solution.

Definition at line 171 of file float.hh.

## x

Gecode::FloatVarArray Test::Float::TestSpace::x

Variables to be tested.

Definition at line 173 of file float.hh.

## r

Gecode::Reify Test::Float::TestSpace::r

Reification information.

Definition at line 175 of file float.hh.

## test

Test* Test::Float::TestSpace::test

The test currently run.

Definition at line 177 of file float.hh.

## reified

bool Test::Float::TestSpace::reified

Whether the test is for a reified propagator.

Definition at line 179 of file float.hh.

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

- test/float.hh
- test/float.cpp