Gecode::MiniModel::LinExpr< Var > Class Template Reference
#include <minimodel.hh>
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 LinExpr & | operator= (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] |
template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr | ( | const Var & | x, | |
int | a = 1 | |||
) | [inline] |
template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr | ( | const LinExpr< Var > & | e | ) | [inline] |
template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr | ( | const LinExpr< Var > & | e0, | |
NodeType | t, | |||
const LinExpr< Var > & | e1 | |||
) | [inline] |
template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr | ( | const LinExpr< Var > & | e0, | |
NodeType | t, | |||
int | c | |||
) | [inline] |
template<class Var>
Gecode::MiniModel::LinExpr< Var >::LinExpr | ( | int | a, | |
const LinExpr< Var > & | e | |||
) | [inline] |
template<class Var>
Gecode::MiniModel::LinExpr< Var >::~LinExpr | ( | void | ) | [inline] |
Member Function Documentation
template<class Var>
const LinExpr< Var > & Gecode::MiniModel::LinExpr< Var >::operator= | ( | const LinExpr< Var > & | e | ) | [inline] |
template<class Var>
void Gecode::MiniModel::LinExpr< Var >::post | ( | Space * | home, | |
IntRelType | irt, | |||
IntConLevel | icl, | |||
PropKind | pk | |||
) | const [inline] |
template<class Var>
void Gecode::MiniModel::LinExpr< Var >::post | ( | Space * | home, | |
IntRelType | irt, | |||
const BoolVar & | b, | |||
IntConLevel | icl, | |||
PropKind | pk | |||
) | const [inline] |
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:
- gecode/minimodel.hh (Revision: 7354)
- gecode/minimodel/lin-expr.icc (Revision: 6315)