Gecode::Int::NoOverlap::ManBox< Dim, n > Class Template Reference
Mandatory box class. More...
#include <no-overlap.hh>
Public Member Functions | |
const Dim & | operator[] (int i) const |
Access to dimension i. | |
Dim & | operator[] (int i) |
Access to dimension i. | |
bool | mandatory (void) const |
Whether box is mandatory. | |
bool | optional (void) const |
Whether box is optional. | |
bool | excluded (void) const |
Whether box is excluded. | |
ExecStatus | exclude (Space &home) |
Exclude box. | |
bool | nooverlap (const ManBox< Dim, n > &b) const |
Check whether this box does not any longer overlap with b. | |
bool | overlap (const ManBox< Dim, n > &b) const |
Check whether this box overlaps with b. | |
ExecStatus | nooverlap (Space &home, ManBox< Dim, n > &b) |
Propagate that this box does not overlap with b. | |
void | update (Space &home, bool share, ManBox< Dim, n > &r) |
Update box during cloning. | |
void | subscribe (Space &home, Propagator &p) |
Subscribe propagator p to box. | |
void | cancel (Space &home, Propagator &p) |
Cancel propagator p from box. | |
void | reschedule (Space &home, Propagator &p) |
Schedule propagator p. | |
Static Public Member Functions | |
static int | dim (void) |
Return number of dimensions. | |
Protected Attributes | |
Dim | d [n] |
Dimensions. |
Detailed Description
template<class Dim, int n>
class Gecode::Int::NoOverlap::ManBox< Dim, n >
Mandatory box class.
Definition at line 150 of file no-overlap.hh.
Member Function Documentation
const Dim & Gecode::Int::NoOverlap::ManBox< Dim, n >::operator[] | ( | int | i | ) | const [inline] |
Dim & Gecode::Int::NoOverlap::ManBox< Dim, n >::operator[] | ( | int | i | ) | [inline] |
int Gecode::Int::NoOverlap::ManBox< Dim, n >::dim | ( | void | ) | [inline, static] |
bool Gecode::Int::NoOverlap::ManBox< Dim, n >::mandatory | ( | void | ) | const [inline] |
Whether box is mandatory.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
bool Gecode::Int::NoOverlap::ManBox< Dim, n >::optional | ( | void | ) | const [inline] |
Whether box is optional.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
bool Gecode::Int::NoOverlap::ManBox< Dim, n >::excluded | ( | void | ) | const [inline] |
Whether box is excluded.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
ExecStatus Gecode::Int::NoOverlap::ManBox< Dim, n >::exclude | ( | Space & | home | ) | [inline] |
Exclude box.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
bool Gecode::Int::NoOverlap::ManBox< Dim, n >::nooverlap | ( | const ManBox< Dim, n > & | b | ) | const [inline] |
bool Gecode::Int::NoOverlap::ManBox< Dim, n >::overlap | ( | const ManBox< Dim, n > & | b | ) | const [inline] |
ExecStatus Gecode::Int::NoOverlap::ManBox< Dim, n >::nooverlap | ( | Space & | home, | |
ManBox< Dim, n > & | b | |||
) | [inline] |
void Gecode::Int::NoOverlap::ManBox< Dim, n >::update | ( | Space & | home, | |
bool | share, | |||
ManBox< Dim, n > & | r | |||
) | [inline] |
void Gecode::Int::NoOverlap::ManBox< Dim, n >::subscribe | ( | Space & | home, | |
Propagator & | p | |||
) | [inline] |
Subscribe propagator p to box.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
void Gecode::Int::NoOverlap::ManBox< Dim, n >::cancel | ( | Space & | home, | |
Propagator & | p | |||
) | [inline] |
Cancel propagator p from box.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
void Gecode::Int::NoOverlap::ManBox< Dim, n >::reschedule | ( | Space & | home, | |
Propagator & | p | |||
) | [inline] |
Schedule propagator p.
Reimplemented in Gecode::Int::NoOverlap::OptBox< Dim, n >.
Member Data Documentation
Dim Gecode::Int::NoOverlap::ManBox< Dim, n >::d[n] [protected] |
Dimensions.
Definition at line 153 of file no-overlap.hh.
The documentation for this class was generated from the following files:
- gecode/int/no-overlap.hh (Revision: 15137)
- gecode/int/no-overlap/box.hpp (Revision: 15137)