Generated on Tue Apr 18 10:23:55 2017 for Gecode by doxygen 1.6.3

Gecode::Int::NoOverlap::Base< Box > Class Template Reference
[Integer propagators]

Base class for no-overlap propagator. More...

#include <no-overlap.hh>

List of all members.

Public Member Functions

virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function.
virtual void reschedule (Space &home)
 Schedule function.
virtual size_t dispose (Space &home)
 Destructor.

Protected Member Functions

 Base (Home home, Box *b, int n)
 Constructor for posting with n mandatory boxes.
 Base (Space &home, bool share, Base< Box > &p, int m)
 Constructor for cloning p with m boxes.

Static Protected Member Functions

static int partition (Box *b, int i, int n)
 Partition n boxes b starting at position i.

Protected Attributes

Box * b
 Boxes.
int n
 Number of mandatory boxes: b[0] ... b[n-1].

Detailed Description

template<class Box>
class Gecode::Int::NoOverlap::Base< Box >

Base class for no-overlap propagator.

Requires

Definition at line 238 of file no-overlap.hh.


Constructor & Destructor Documentation

template<class Box >
Gecode::Int::NoOverlap::Base< Box >::Base ( Home  home,
Box *  b,
int  n 
) [inline, protected]

Constructor for posting with n mandatory boxes.

Definition at line 42 of file base.hpp.

template<class Box >
Gecode::Int::NoOverlap::Base< Box >::Base ( Space home,
bool  share,
Base< Box > &  p,
int  m 
) [inline, protected]

Constructor for cloning p with m boxes.

Definition at line 73 of file base.hpp.


Member Function Documentation

template<class Box >
int Gecode::Int::NoOverlap::Base< Box >::partition ( Box *  b,
int  i,
int  n 
) [inline, static, protected]

Partition n boxes b starting at position i.

Returns the number of mandatory boxes at the front of b.

Definition at line 50 of file base.hpp.

template<class Box >
PropCost Gecode::Int::NoOverlap::Base< Box >::cost ( const Space home,
const ModEventDelta med 
) const [inline, virtual]

Cost function.

Implements Gecode::Propagator.

Definition at line 81 of file base.hpp.

template<class Box >
void Gecode::Int::NoOverlap::Base< Box >::reschedule ( Space home  )  [inline, virtual]

Schedule function.

Implements Gecode::Propagator.

Definition at line 87 of file base.hpp.

template<class Box >
size_t Gecode::Int::NoOverlap::Base< Box >::dispose ( Space home  )  [inline, virtual]

Destructor.

Reimplemented from Gecode::Actor.

Reimplemented in Gecode::Int::NoOverlap::ManProp< Box >, and Gecode::Int::NoOverlap::OptProp< Box >.

Definition at line 63 of file base.hpp.


Member Data Documentation

template<class Box>
Box* Gecode::Int::NoOverlap::Base< Box >::b [protected]

Boxes.

Definition at line 241 of file no-overlap.hh.

template<class Box>
int Gecode::Int::NoOverlap::Base< Box >::n [protected]

Number of mandatory boxes: b[0] ... b[n-1].

Definition at line 243 of file no-overlap.hh.


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