C++ Reference
C++ Reference: Routing
Detailed Description
Implements a complete cache for model elements: expressions and constraints.
Caching is based on the signatures of the elements, as well as their types. This class is used internally to avoid creating duplicate objects.
Definition at line 2055 of file constraint_solveri.h.
Public Member Functions | |
ModelCache (Solver *const solver) | |
virtual | ~ModelCache () |
virtual void | Clear ()=0 |
virtual Constraint * | FindVoidConstraint (VoidConstraintType type) const =0 |
Void constraints. More... | |
virtual void | InsertVoidConstraint (Constraint *const ct, VoidConstraintType type)=0 |
virtual Constraint * | FindVarConstantConstraint (IntVar *const var, int64 value, VarConstantConstraintType type) const =0 |
Var Constant Constraints. More... | |
virtual void | InsertVarConstantConstraint (Constraint *const ct, IntVar *const var, int64 value, VarConstantConstraintType type)=0 |
virtual Constraint * | FindVarConstantConstantConstraint (IntVar *const var, int64 value1, int64 value2, VarConstantConstantConstraintType type) const =0 |
Var Constant Constant Constraints. More... | |
virtual void | InsertVarConstantConstantConstraint (Constraint *const ct, IntVar *const var, int64 value1, int64 value2, VarConstantConstantConstraintType type)=0 |
virtual Constraint * | FindExprExprConstraint (IntExpr *const expr1, IntExpr *const expr2, ExprExprConstraintType type) const =0 |
Expr Expr Constraints. More... | |
virtual void | InsertExprExprConstraint (Constraint *const ct, IntExpr *const expr1, IntExpr *const expr2, ExprExprConstraintType type)=0 |
virtual IntExpr * | FindExprExpression (IntExpr *const expr, ExprExpressionType type) const =0 |
Expr Expressions. More... | |
virtual void | InsertExprExpression (IntExpr *const expression, IntExpr *const expr, ExprExpressionType type)=0 |
virtual IntExpr * | FindExprConstantExpression (IntExpr *const expr, int64 value, ExprConstantExpressionType type) const =0 |
Expr Constant Expressions. More... | |
virtual void | InsertExprConstantExpression (IntExpr *const expression, IntExpr *const var, int64 value, ExprConstantExpressionType type)=0 |
virtual IntExpr * | FindExprExprExpression (IntExpr *const var1, IntExpr *const var2, ExprExprExpressionType type) const =0 |
Expr Expr Expressions. More... | |
virtual void | InsertExprExprExpression (IntExpr *const expression, IntExpr *const var1, IntExpr *const var2, ExprExprExpressionType type)=0 |
virtual IntExpr * | FindExprExprConstantExpression (IntExpr *const var1, IntExpr *const var2, int64 constant, ExprExprConstantExpressionType type) const =0 |
Expr Expr Constant Expressions. More... | |
virtual void | InsertExprExprConstantExpression (IntExpr *const expression, IntExpr *const var1, IntExpr *const var2, int64 constant, ExprExprConstantExpressionType type)=0 |
virtual IntExpr * | FindVarConstantConstantExpression (IntVar *const var, int64 value1, int64 value2, VarConstantConstantExpressionType type) const =0 |
Var Constant Constant Expressions. More... | |
virtual void | InsertVarConstantConstantExpression (IntExpr *const expression, IntVar *const var, int64 value1, int64 value2, VarConstantConstantExpressionType type)=0 |
virtual IntExpr * | FindVarConstantArrayExpression (IntVar *const var, const std::vector< int64 > &values, VarConstantArrayExpressionType type) const =0 |
Var Constant Array Expressions. More... | |
virtual void | InsertVarConstantArrayExpression (IntExpr *const expression, IntVar *const var, const std::vector< int64 > &values, VarConstantArrayExpressionType type)=0 |
virtual IntExpr * | FindVarArrayExpression (const std::vector< IntVar * > &vars, VarArrayExpressionType type) const =0 |
Var Array Expressions. More... | |
virtual void | InsertVarArrayExpression (IntExpr *const expression, const std::vector< IntVar * > &vars, VarArrayExpressionType type)=0 |
virtual IntExpr * | FindVarArrayConstantArrayExpression (const std::vector< IntVar * > &vars, const std::vector< int64 > &values, VarArrayConstantArrayExpressionType type) const =0 |
Var Array Constant Array Expressions. More... | |
virtual void | InsertVarArrayConstantArrayExpression (IntExpr *const expression, const std::vector< IntVar * > &var, const std::vector< int64 > &values, VarArrayConstantArrayExpressionType type)=0 |
virtual IntExpr * | FindVarArrayConstantExpression (const std::vector< IntVar * > &vars, int64 value, VarArrayConstantExpressionType type) const =0 |
Var Array Constant Expressions. More... | |
virtual void | InsertVarArrayConstantExpression (IntExpr *const expression, const std::vector< IntVar * > &var, int64 value, VarArrayConstantExpressionType type)=0 |
Solver * | solver () const |
Member Enumeration Documentation
◆ ExprConstantExpressionType
Definition at line 2112 of file constraint_solveri.h.
◆ ExprExprConstantExpressionType
Enumerator | |
---|---|
EXPR_EXPR_CONSTANT_CONDITIONAL | |
EXPR_EXPR_CONSTANT_EXPRESSION_MAX |
Definition at line 2107 of file constraint_solveri.h.
◆ ExprExprConstraintType
Enumerator | |
---|---|
EXPR_EXPR_EQUALITY | |
EXPR_EXPR_GREATER | |
EXPR_EXPR_GREATER_OR_EQUAL | |
EXPR_EXPR_LESS | |
EXPR_EXPR_LESS_OR_EQUAL | |
EXPR_EXPR_NON_EQUALITY | |
EXPR_EXPR_CONSTRAINT_MAX |
Definition at line 2076 of file constraint_solveri.h.
◆ ExprExpressionType
enum ExprExpressionType |
Enumerator | |
---|---|
EXPR_OPPOSITE | |
EXPR_ABS | |
EXPR_SQUARE | |
EXPR_EXPRESSION_MAX |
Definition at line 2086 of file constraint_solveri.h.
◆ ExprExprExpressionType
Definition at line 2093 of file constraint_solveri.h.
◆ VarArrayConstantArrayExpressionType
Enumerator | |
---|---|
VAR_ARRAY_CONSTANT_ARRAY_SCAL_PROD | |
VAR_ARRAY_CONSTANT_ARRAY_EXPRESSION_MAX |
Definition at line 2135 of file constraint_solveri.h.
◆ VarArrayConstantExpressionType
Enumerator | |
---|---|
VAR_ARRAY_CONSTANT_INDEX | |
VAR_ARRAY_CONSTANT_EXPRESSION_MAX |
Definition at line 2147 of file constraint_solveri.h.
◆ VarArrayExpressionType
Enumerator | |
---|---|
VAR_ARRAY_MAX | |
VAR_ARRAY_MIN | |
VAR_ARRAY_SUM | |
VAR_ARRAY_EXPRESSION_MAX |
Definition at line 2140 of file constraint_solveri.h.
◆ VarConstantArrayExpressionType
Enumerator | |
---|---|
VAR_CONSTANT_ARRAY_ELEMENT | |
VAR_CONSTANT_ARRAY_EXPRESSION_MAX |
Definition at line 2130 of file constraint_solveri.h.
◆ VarConstantConstantConstraintType
Enumerator | |
---|---|
VAR_CONSTANT_CONSTANT_BETWEEN | |
VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX |
Definition at line 2071 of file constraint_solveri.h.
◆ VarConstantConstantExpressionType
Enumerator | |
---|---|
VAR_CONSTANT_CONSTANT_SEMI_CONTINUOUS | |
VAR_CONSTANT_CONSTANT_EXPRESSION_MAX |
Definition at line 2125 of file constraint_solveri.h.
◆ VarConstantConstraintType
Enumerator | |
---|---|
VAR_CONSTANT_EQUALITY | |
VAR_CONSTANT_GREATER_OR_EQUAL | |
VAR_CONSTANT_LESS_OR_EQUAL | |
VAR_CONSTANT_NON_EQUALITY | |
VAR_CONSTANT_CONSTRAINT_MAX |
Definition at line 2063 of file constraint_solveri.h.
◆ VoidConstraintType
enum VoidConstraintType |
Enumerator | |
---|---|
VOID_FALSE_CONSTRAINT | |
VOID_TRUE_CONSTRAINT | |
VOID_CONSTRAINT_MAX |
Definition at line 2057 of file constraint_solveri.h.
Constructor & Destructor Documentation
◆ ModelCache()
|
explicit |
◆ ~ModelCache()
|
virtual |
Member Function Documentation
◆ Clear()
|
pure virtual |
◆ FindExprConstantExpression()
|
pure virtual |
Expr Constant Expressions.
◆ FindExprExprConstantExpression()
|
pure virtual |
Expr Expr Constant Expressions.
◆ FindExprExprConstraint()
|
pure virtual |
Expr Expr Constraints.
◆ FindExprExpression()
|
pure virtual |
Expr Expressions.
◆ FindExprExprExpression()
|
pure virtual |
Expr Expr Expressions.
◆ FindVarArrayConstantArrayExpression()
|
pure virtual |
Var Array Constant Array Expressions.
◆ FindVarArrayConstantExpression()
|
pure virtual |
Var Array Constant Expressions.
◆ FindVarArrayExpression()
|
pure virtual |
Var Array Expressions.
◆ FindVarConstantArrayExpression()
|
pure virtual |
Var Constant Array Expressions.
◆ FindVarConstantConstantConstraint()
|
pure virtual |
Var Constant Constant Constraints.
◆ FindVarConstantConstantExpression()
|
pure virtual |
Var Constant Constant Expressions.
◆ FindVarConstantConstraint()
|
pure virtual |
Var Constant Constraints.
◆ FindVoidConstraint()
|
pure virtual |
Void constraints.
◆ InsertExprConstantExpression()
|
pure virtual |
◆ InsertExprExprConstantExpression()
|
pure virtual |
◆ InsertExprExprConstraint()
|
pure virtual |
◆ InsertExprExpression()
|
pure virtual |
◆ InsertExprExprExpression()
|
pure virtual |
◆ InsertVarArrayConstantArrayExpression()
|
pure virtual |
◆ InsertVarArrayConstantExpression()
|
pure virtual |
◆ InsertVarArrayExpression()
|
pure virtual |
◆ InsertVarConstantArrayExpression()
|
pure virtual |
◆ InsertVarConstantConstantConstraint()
|
pure virtual |
◆ InsertVarConstantConstantExpression()
|
pure virtual |
◆ InsertVarConstantConstraint()
|
pure virtual |
◆ InsertVoidConstraint()
|
pure virtual |
◆ solver()
Solver* solver | ( | ) | const |
The documentation for this class was generated from the following file: