Generated on Mon Aug 25 11:35:52 2008 for Gecode by doxygen 1.5.6

Gecode::MiniModel::LinExpr< Var > Class Template Reference

#include <minimodel.hh>

List of all members.


Detailed Description

template<class Var>
class Gecode::MiniModel::LinExpr< Var >

Linear expressions.

Definition at line 87 of file minimodel.hh.


Public Types

enum  NodeType { NT_VAR, NT_ADD, NT_SUB, NT_MUL }
 Type of linear expression. More...

Public Member Functions

 LinExpr (void)
 Default constructor.
 LinExpr (const Var &x, int a=1)
 Create expression.
 LinExpr (const LinExpr &e)
 Copy constructor.
 LinExpr (const LinExpr &e0, NodeType t, const LinExpr &e1)
 Create expression for type and subexpressions.
 LinExpr (const LinExpr &e0, NodeType t, int c)
 Create expression for type and subexpression.
 LinExpr (int a, const LinExpr &e)
 Create expression for multiplication.
const LinExproperator= (const LinExpr &e)
 Assignment operator.
void post (Space *home, IntRelType irt, IntConLevel icl, PropKind pk) const
 Post propagator.
void post (Space *home, IntRelType irt, const BoolVar &b, IntConLevel icl, PropKind pk) const
 Post reified propagator.
IntVar post (Space *home, IntConLevel icl, PropKind pk) const
 Post propagator and return variable for value.
 ~LinExpr (void)
 Destructor.
template<>
IntVar post (Space *home, IntConLevel icl, PropKind pk) const
template<>
IntVar post (Space *home, IntConLevel icl, PropKind pk) const

Member Enumeration Documentation

template<class Var>
enum Gecode::MiniModel::LinExpr::NodeType

Type of linear expression.

Enumerator:
NT_VAR  Linear term with variable.
NT_ADD  Addition of linear terms.
NT_SUB  Subtraction of linear terms.
NT_MUL  Multiplication by coefficient.

Definition at line 90 of file minimodel.hh.


Constructor & Destructor Documentation

template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr ( void   )  [inline]

Default constructor.

Definition at line 120 of file lin-expr.icc.

template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr ( const Var &  x,
int  a = 1 
) [inline]

Create expression.

Definition at line 130 of file lin-expr.icc.

template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr ( const LinExpr< Var > &  e  )  [inline]

Copy constructor.

Definition at line 173 of file lin-expr.icc.

template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr ( const LinExpr< Var > &  e0,
NodeType  t,
const LinExpr< Var > &  e1 
) [inline]

Create expression for type and subexpressions.

Definition at line 141 of file lin-expr.icc.

template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr ( const LinExpr< Var > &  e0,
NodeType  t,
int  c 
) [inline]

Create expression for type and subexpression.

Definition at line 151 of file lin-expr.icc.

template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr ( int  a,
const LinExpr< Var > &  e 
) [inline]

Create expression for multiplication.

Definition at line 162 of file lin-expr.icc.

template<class Var>
Gecode::MiniModel::LinExpr< Var >::~LinExpr ( void   )  [inline]

Destructor.

Definition at line 191 of file lin-expr.icc.


Member Function Documentation

template<class Var>
const LinExpr< Var > & Gecode::MiniModel::LinExpr< Var >::operator= ( const LinExpr< Var > &  e  )  [inline]

Assignment operator.

Definition at line 180 of file lin-expr.icc.

template<class Var>
void Gecode::MiniModel::LinExpr< Var >::post ( Space home,
IntRelType  irt,
IntConLevel  icl,
PropKind  pk 
) const [inline]

Post propagator.

Definition at line 198 of file lin-expr.icc.

template<class Var>
void Gecode::MiniModel::LinExpr< Var >::post ( Space home,
IntRelType  irt,
const BoolVar b,
IntConLevel  icl,
PropKind  pk 
) const [inline]

Post reified propagator.

Definition at line 208 of file lin-expr.icc.

template<class Var>
IntVar Gecode::MiniModel::LinExpr< Var >::post ( Space home,
IntConLevel  icl,
PropKind  pk 
) const

Post propagator and return variable for value.

template<>
IntVar Gecode::MiniModel::LinExpr< IntVar >::post ( Space home,
IntConLevel  icl,
PropKind  pk 
) const [inline]

Definition at line 218 of file lin-expr.icc.

template<>
IntVar Gecode::MiniModel::LinExpr< BoolVar >::post ( Space home,
IntConLevel  icl,
PropKind  pk 
) const [inline]

Definition at line 232 of file lin-expr.icc.


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