Generated on Sat Feb 7 2015 02:01:49 for Gecode by doxygen 1.8.9.1
Gecode::Int::NValues::IntBase< VY > Class Template Reference

Number of values propagator for integer views base class. More...

#include <nvalues.hh>

Public Member Functions

virtual PropCost cost (const Space &, const ModEventDelta &) const
 Cost function. More...
 
virtual size_t dispose (Space &home)
 Delete propagator and return its size. More...
 
- Public Member Functions inherited from Gecode::Propagator
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)=0
 Propagation function. More...
 
ModEventDelta modeventdelta (void) const
 Return the modification event delta. More...
 
virtual ExecStatus advise (Space &home, Advisor &a, const Delta &d)
 Advise function. More...
 
double afc (const Space &home) const
 Return the accumlated failure count. More...
 
- Public Member Functions inherited from Gecode::Actor
virtual Actorcopy (Space &home, bool share)=0
 Create copy. More...
 

Protected Member Functions

 IntBase (Home home, ValSet &vs, ViewArray< IntView > &x, VY y)
 Constructor for posting. More...
 
 IntBase (Space &home, bool share, IntBase< VY > &p)
 Constructor for cloning p. More...
 
void add (Space &home)
 Add values of assigned views to value set. More...
 
void disjoint (Space &home, Region &r, int *&dis, int &n_dis)
 
void eliminate (Space &home)
 Eliminate subsumed views (all values included in the value set vs) More...
 
int size (Space &home) const
 Return a size estimate based on the union of all values. More...
 
ExecStatus all_in_valset (Space &home)
 Propagate that all views must take values from value set. More...
 
ExecStatus prune_lower (Space &home, int *dis, int n_dis)
 
ExecStatus prune_upper (Space &home, Graph &g)
 
- Protected Member Functions inherited from Gecode::MixNaryOnePropagator< IntView, PC_INT_DOM, VY, PC_INT_BND >
 MixNaryOnePropagator (Space &home, bool share, MixNaryOnePropagator &p)
 Constructor for cloning p. More...
 
 MixNaryOnePropagator (Home home, ViewArray< IntView > &x, VYy)
 Constructor for creation. More...
 
 MixNaryOnePropagator (Space &home, bool share, Propagator &p, ViewArray< IntView > &x, VYy)
 Constructor for rewriting p during cloning. More...
 
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting. More...
 
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p. More...
 
Propagatorfwd (void) const
 Return forwarding pointer during copying. More...
 

Protected Attributes

ValSet vs
 Value set storing the values of already assigned views. More...
 
- Protected Attributes inherited from Gecode::MixNaryOnePropagator< IntView, PC_INT_DOM, VY, PC_INT_BND >
ViewArray< IntViewx
 Array of views. More...
 
VY y
 Single view. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Gecode::Actor
static void * operator new (size_t s, Space &home)
 Allocate memory from space. More...
 
static void operator delete (void *p, Space &home)
 No-op for exceptions. More...
 

Detailed Description

template<class VY>
class Gecode::Int::NValues::IntBase< VY >

Number of values propagator for integer views base class.

Requires

Definition at line 136 of file nvalues.hh.

Constructor & Destructor Documentation

template<class VY >
Gecode::Int::NValues::IntBase< VY >::IntBase ( Home  home,
ValSet vs,
ViewArray< IntView > &  x,
VY  y 
)
inlineprotected

Constructor for posting.

Definition at line 44 of file int-base.hpp.

template<class VY >
Gecode::Int::NValues::IntBase< VY >::IntBase ( Space home,
bool  share,
IntBase< VY > &  p 
)
inlineprotected

Constructor for cloning p.

Definition at line 50 of file int-base.hpp.

Member Function Documentation

template<class VY >
void Gecode::Int::NValues::IntBase< VY >::add ( Space home)
protected

Add values of assigned views to value set.

Definition at line 72 of file int-base.hpp.

template<class VY >
void Gecode::Int::NValues::IntBase< VY >::disjoint ( Space home,
Region r,
int *&  dis,
int &  n_dis 
)
protected

Compute position of disjoint views in dis (with length n_dis) and eliminate subsumed views (all values included in the value set vs).

Definition at line 84 of file int-base.hpp.

template<class VY >
void Gecode::Int::NValues::IntBase< VY >::eliminate ( Space home)
protected

Eliminate subsumed views (all values included in the value set vs)

Definition at line 111 of file int-base.hpp.

template<class VY >
int Gecode::Int::NValues::IntBase< VY >::size ( Space home) const
protected

Return a size estimate based on the union of all values.

Definition at line 124 of file int-base.hpp.

template<class VY >
ExecStatus Gecode::Int::NValues::IntBase< VY >::all_in_valset ( Space home)
protected

Propagate that all views must take values from value set.

Definition at line 145 of file int-base.hpp.

template<class VY >
ExecStatus Gecode::Int::NValues::IntBase< VY >::prune_lower ( Space home,
int *  dis,
int  n_dis 
)
protected

Perform pruning of the lower bound based on finding an independent set, where dis and n_dis define the set of disjoint views (not overlapping with the values in the value set).

Changes dis.

Definition at line 155 of file int-base.hpp.

template<class VY >
ExecStatus Gecode::Int::NValues::IntBase< VY >::prune_upper ( Space home,
Graph g 
)
inlineprotected

Perform pruning of the upper bound based on finding a maximal matching in the view value graph g.

Requires that subsumed views have been eliminated.

Definition at line 321 of file int-base.hpp.

template<class VY >
PropCost Gecode::Int::NValues::IntBase< VY >::cost ( const Space ,
const ModEventDelta  
) const
virtual

Cost function.

Reimplemented from Gecode::MixNaryOnePropagator< IntView, PC_INT_DOM, VY, PC_INT_BND >.

Definition at line 66 of file int-base.hpp.

template<class VY >
size_t Gecode::Int::NValues::IntBase< VY >::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::MixNaryOnePropagator< IntView, PC_INT_DOM, VY, PC_INT_BND >.

Reimplemented in Gecode::Int::NValues::LqInt< VY >, and Gecode::Int::NValues::EqInt< VY >.

Definition at line 57 of file int-base.hpp.

Member Data Documentation

template<class VY>
ValSet Gecode::Int::NValues::IntBase< VY >::vs
protected

Value set storing the values of already assigned views.

Definition at line 142 of file nvalues.hh.


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