38 namespace Gecode {
namespace Int {
namespace Branch {
45 template<
class ViewSel,
class View>
63 const typename ViewSel::Choice& viewc, View x);
66 const typename ViewSel::Choice& viewc,
69 int val(
unsigned int a)
const;
71 virtual size_t size(
void)
const;
79 template<
class ViewSel,
class View>
83 const typename ViewSel::Choice& viewc, View x)
98 template<
class ViewSel,
class View>
102 const typename ViewSel::Choice& viewc,
Archive& e)
106 for (
unsigned int i=0;
i<n+1;
i++) {
112 template<
class ViewSel,
class View>
116 PosMin*
r = &pm[n-1];
118 PosMin*
m = l + (r-l)/2;
121 }
else if (a >= (m+1)->pos) {
124 return m->min +
static_cast<int>(a - m->pos);
131 template<
class ViewSel,
class View>
137 template<
class ViewSel,
class View>
142 template<
class ViewSel,
class View>
146 e << this->alternatives() << n;
147 for (
unsigned int i=0;
i<n+1;
i++) {
153 template<
class ViewSel,
class View>
160 template<
class ViewSel,
class View>
168 template<
class ViewSel,
class View>
174 template<
class ViewSel,
class View>
181 template<
class ViewSel,
class View>
187 (*
this,p,viewsel.choice(home),
v);
190 template<
class ViewSel,
class View>
197 (*
this,alt,p,viewsel.choice(home,e),e);
200 template<
class ViewSel,
class View>