Generated on Thu Apr 11 14:00:04 2019 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, 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 234 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 38 of file base.hpp.

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

Constructor for cloning p with m boxes.

Definition at line 69 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 46 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 77 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 83 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 59 of file base.hpp.


Member Data Documentation

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

Boxes.

Definition at line 237 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 239 of file no-overlap.hh.


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