Go to the documentation of this file.
34 namespace Gecode {
namespace Int {
namespace Branch {
59 int val(
unsigned int a)
const;
65 virtual void archive(
Archive& e)
const;
73 PosMin* m =
l + (
r-
l)/2;
76 }
else if (
a >= (m+1)->pos) {
79 return m->min + static_cast<int>(
a - m->pos);
87 template<
int n,
bool min,
class Filter,
class Pr
int>
99 template<
int n,
bool min,
class Filter,
class Pr
int>
109 template<
int n,
bool min,
class Filter,
class Pr
int>
115 template<
int n,
bool min,
class Filter,
class Pr
int>
122 template<
int n,
bool min,
class Filter,
class Pr
int>
130 template<
int n,
bool min,
class Filter,
class Pr
int>
141 template<
int n,
bool min,
class Filter,
class Pr
int>
146 = static_cast<const PosValuesChoice&>(
c);
152 template<
int n,
bool min,
class Filter,
class Pr
int>
155 unsigned int a)
const {
157 = static_cast<const PosValuesChoice&>(
c);
163 template<
int n,
bool min,
class Filter,
class Pr
int>
168 std::ostream& o)
const {
170 = static_cast<const PosValuesChoice&>(
c);
177 o <<
"var[" << pvc.
pos().
pos <<
"] = " << nn;
180 template<
int n,
bool min,
class Filter,
class Pr
int>
189 template<
int n,
bool min>
struct Gecode::@602::NNF::@65::@66 b
For binary nodes (and, or, eqv)
void notice(Actor &a, ActorProperty p, bool duplicate=false)
Notice actor property.
ViewValuesBrancher(Space &home, ViewValuesBrancher &b)
Constructor for cloning b.
Choice storing position and values for integer views
Post propagator for SetVar x
bool me_failed(ModEvent me)
Check whether modification event me is failed.
#define GECODE_VTABLE_EXPORT
unsigned int alternatives(void) const
Return number of alternatives.
Class without print function.
Pos pos(Space &home)
Return position information.
const int pos
Position of view.
Base-class for both propagators and branchers.
Brancher by view and values selection
Class storing a print function.
Gecode toplevel namespace
Generic brancher by view selection.
struct Gecode::@602::NNF::@65::@67 a
For atomic nodes.
Base-class for branchers.
#define GECODE_INT_EXPORT
Home class for posting propagators
Actor must always be disposed.
Post propagator for SetVar SetOpType SetVar SetRelType r
TFE post(PropagatorGroup g)
Only post functions (but not propagators) from g are considered.
No-good literal for equality.
virtual size_t dispose(Space &home)
Delete brancher and return its size.
virtual const Choice * choice(Space &home)
Return choice.
#define GECODE_NEVER
Assert that this command is never executed.
static void post(Home home, ViewArray< IntView > &x, ViewSel< IntView > *vs[n], IntBranchFilter bf, IntVarValPrint vvp)
Post function for creation.
int val(unsigned int a) const
Return value to branch with for alternative a.
Integer view for integer variables.
virtual void print(const Space &home, const Choice &c, unsigned int a, std::ostream &o) const
Print branch for choice c and alternative a.
std::function< bool(const Space &home, IntVar x, int i)> IntBranchFilter
Branch filter function type for integer variables.
void postviewvaluesbrancher(Home home, ViewArray< IntView > &x, ViewSel< IntView > *vs[n], IntBranchFilter bf, IntVarValPrint vvp)
Post brancher for view and values.
virtual Actor * copy(Space &home)
Perform cloning.
void ignore(Actor &a, ActorProperty p, bool duplicate=false)
Ignore actor property.
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Gecode::FloatVal c(-8, 8)
No-good literal recorded during search.
virtual NGL * ngl(Space &home, const Choice &c, unsigned int a) const
Create no-good literal for choice c and alternative a.
int n
Number of negative literals for node type.
Choice for performing commit
Execution has resulted in failure.
bool pos(const View &x)
Test whether x is postive.
int p
Number of positive literals for node type.
virtual ExecStatus commit(Space &home, const Choice &c, unsigned int a)
Perform commit for choice c and alternative a.
std::function< void(const Space &home, const Brancher &b, unsigned int a, IntVar x, int i, const int &n, std::ostream &o)> IntVarValPrint
Function type for printing branching alternatives for integer variables.
const Pos & pos(void) const
Return position in array.