Generated on: Thu Mar 29 07:46:58 PDT 2012 for custom file set
// doxy/ or-tools/ src/ constraint_solver/

operations_research::ModelCache Class Reference

Implements a complete cache for model elements: expressions and constraints. More...

#include <constraint_solveri.h>

List of all members.

Public Types

enum  VoidConstraintType { VOID_FALSE_CONSTRAINT = 0, VOID_TRUE_CONSTRAINT, VOID_CONSTRAINT_MAX }
enum  VarConstantConstraintType {
  VAR_CONSTANT_EQUALITY = 0, VAR_CONSTANT_GREATER_OR_EQUAL, VAR_CONSTANT_LESS_OR_EQUAL, VAR_CONSTANT_NON_EQUALITY,
  VAR_CONSTANT_CONSTRAINT_MAX
}
enum  VarConstantConstantConstraintType { VAR_CONSTANT_CONSTANT_BETWEEN = 0, VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX }
enum  VarVarConstraintType {
  VAR_VAR_EQUALITY = 0, VAR_VAR_GREATER, VAR_VAR_GREATER_OR_EQUAL, VAR_VAR_LESS,
  VAR_VAR_LESS_OR_EQUAL, VAR_VAR_NON_EQUALITY, VAR_VAR_CONSTRAINT_MAX
}
enum  VarExpressionType { VAR_OPPOSITE = 0, VAR_ABS, VAR_SQUARE, VAR_EXPRESSION_MAX }
enum  VarConstantExpressionType {
  VAR_CONSTANT_DIFFERENCE = 0, VAR_CONSTANT_DIVIDE, VAR_CONSTANT_PROD, VAR_CONSTANT_MAX,
  VAR_CONSTANT_MIN, VAR_CONSTANT_SUM, VAR_CONSTANT_IS_EQUAL, VAR_CONSTANT_IS_NOT_EQUAL,
  VAR_CONSTANT_IS_GREATER_OR_EQUAL, VAR_CONSTANT_IS_LESS_OR_EQUAL, VAR_CONSTANT_EXPRESSION_MAX
}
enum  VarVarExpressionType {
  VAR_VAR_DIFFERENCE = 0, VAR_VAR_PROD, VAR_VAR_MAX, VAR_VAR_MIN,
  VAR_VAR_SUM, VAR_VAR_IS_EQUAL, VAR_VAR_IS_NOT_EQUAL, VAR_VAR_IS_LESS,
  VAR_VAR_IS_LESS_OR_EQUAL, VAR_VAR_EXPRESSION_MAX
}
enum  VarConstantConstantExpressionType { VAR_CONSTANT_CONSTANT_SEMI_CONTINUOUS = 0, VAR_CONSTANT_CONSTANT_EXPRESSION_MAX }
enum  VarConstantArrayExpressionType { VAR_CONSTANT_ARRAY_ELEMENT = 0, VAR_CONSTANT_ARRAY_EXPRESSION_MAX }
enum  VarArrayExpressionType { VAR_ARRAY_MAX = 0, VAR_ARRAY_MIN, VAR_ARRAY_SUM, VAR_ARRAY_EXPRESSION_MAX }

Public Member Functions

 ModelCache (Solver *const solver)
 ModelCache.
virtual ~ModelCache ()
virtual ConstraintFindVoidConstraint (VoidConstraintType type) const =0
 Void constraints.
virtual void InsertVoidConstraint (Constraint *const ct, VoidConstraintType type)=0
virtual ConstraintFindVarConstantConstraint (IntVar *const var, int64 value, VarConstantConstraintType type) const =0
 Var Constant Constraints.
virtual void InsertVarConstantConstraint (Constraint *const ct, IntVar *const var, int64 value, VarConstantConstraintType type)=0
virtual ConstraintFindVarConstantConstantConstraint (IntVar *const var, int64 value1, int64 value2, VarConstantConstantConstraintType type) const =0
 Var Constant Constant Constraints.
virtual void InsertVarConstantConstantConstraint (Constraint *const ct, IntVar *const var, int64 value1, int64 value2, VarConstantConstantConstraintType type)=0
virtual ConstraintFindVarVarConstraint (IntVar *const var1, IntVar *const var2, VarVarConstraintType type) const =0
 Var Var Constraints.
virtual void InsertVarVarConstraint (Constraint *const ct, IntVar *const var1, IntVar *const var2, VarVarConstraintType type)=0
virtual IntExprFindVarExpression (IntVar *const var, VarExpressionType type) const =0
 Var Expressions.
virtual void InsertVarExpression (IntExpr *const expression, IntVar *const var, VarExpressionType type)=0
virtual IntExprFindVarConstantExpression (IntVar *const var, int64 value, VarConstantExpressionType type) const =0
 Var Constant Expressions .
virtual void InsertVarConstantExpression (IntExpr *const expression, IntVar *const var, int64 value, VarConstantExpressionType type)=0
virtual IntExprFindVarVarExpression (IntVar *const var1, IntVar *const var2, VarVarExpressionType type) const =0
 Var Var Expressions.
virtual void InsertVarVarExpression (IntExpr *const expression, IntVar *const var1, IntVar *const var2, VarVarExpressionType type)=0
virtual IntExprFindVarConstantConstantExpression (IntVar *const var, int64 value1, int64 value2, VarConstantConstantExpressionType type) const =0
 Var Constant Constant Expressions.
virtual void InsertVarConstantConstantExpression (IntExpr *const expression, IntVar *const var, int64 value1, int64 value2, VarConstantConstantExpressionType type)=0
virtual IntExprFindVarConstantArrayExpression (IntVar *const var, ConstIntArray *const values, VarConstantArrayExpressionType type) const =0
 Var Constant Array Expressions.
virtual void InsertVarConstantArrayExpression (IntExpr *const expression, IntVar *const var, ConstIntArray *const values, VarConstantArrayExpressionType type)=0
virtual IntExprFindVarArrayExpression (ConstPtrArray< IntVar > *const vars, VarArrayExpressionType type) const =0
 Var Array Expressions.
virtual void InsertVarArrayExpression (IntExpr *const expression, ConstPtrArray< IntVar > *const vars, VarArrayExpressionType type)=0
Solversolver () const


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 1358 of file constraint_solveri.h.


Member Enumeration Documentation

Enumerator:
VOID_FALSE_CONSTRAINT 
VOID_TRUE_CONSTRAINT 
VOID_CONSTRAINT_MAX 

Definition at line 1360 of file constraint_solveri.h.

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 1366 of file constraint_solveri.h.

Enumerator:
VAR_CONSTANT_CONSTANT_BETWEEN 
VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX 

Definition at line 1374 of file constraint_solveri.h.

Enumerator:
VAR_VAR_EQUALITY 
VAR_VAR_GREATER 
VAR_VAR_GREATER_OR_EQUAL 
VAR_VAR_LESS 
VAR_VAR_LESS_OR_EQUAL 
VAR_VAR_NON_EQUALITY 
VAR_VAR_CONSTRAINT_MAX 

Definition at line 1379 of file constraint_solveri.h.

Enumerator:
VAR_OPPOSITE 
VAR_ABS 
VAR_SQUARE 
VAR_EXPRESSION_MAX 

Definition at line 1389 of file constraint_solveri.h.

Enumerator:
VAR_CONSTANT_DIFFERENCE 
VAR_CONSTANT_DIVIDE 
VAR_CONSTANT_PROD 
VAR_CONSTANT_MAX 
VAR_CONSTANT_MIN 
VAR_CONSTANT_SUM 
VAR_CONSTANT_IS_EQUAL 
VAR_CONSTANT_IS_NOT_EQUAL 
VAR_CONSTANT_IS_GREATER_OR_EQUAL 
VAR_CONSTANT_IS_LESS_OR_EQUAL 
VAR_CONSTANT_EXPRESSION_MAX 

Definition at line 1396 of file constraint_solveri.h.

Enumerator:
VAR_VAR_DIFFERENCE 
VAR_VAR_PROD 
VAR_VAR_MAX 
VAR_VAR_MIN 
VAR_VAR_SUM 
VAR_VAR_IS_EQUAL 
VAR_VAR_IS_NOT_EQUAL 
VAR_VAR_IS_LESS 
VAR_VAR_IS_LESS_OR_EQUAL 
VAR_VAR_EXPRESSION_MAX 

Definition at line 1410 of file constraint_solveri.h.

Enumerator:
VAR_CONSTANT_CONSTANT_SEMI_CONTINUOUS 
VAR_CONSTANT_CONSTANT_EXPRESSION_MAX 

Definition at line 1423 of file constraint_solveri.h.

Enumerator:
VAR_CONSTANT_ARRAY_ELEMENT 
VAR_CONSTANT_ARRAY_EXPRESSION_MAX 

Definition at line 1428 of file constraint_solveri.h.

Enumerator:
VAR_ARRAY_MAX 
VAR_ARRAY_MIN 
VAR_ARRAY_SUM 
VAR_ARRAY_EXPRESSION_MAX 

Definition at line 1433 of file constraint_solveri.h.


Constructor & Destructor Documentation

operations_research::ModelCache::ModelCache ( Solver *const   solver  )  [explicit]

ModelCache.

Definition at line 32 of file model_cache.cc.

operations_research::ModelCache::~ModelCache (  )  [virtual]

Definition at line 35 of file model_cache.cc.


Member Function Documentation

virtual Constraint* operations_research::ModelCache::FindVoidConstraint ( VoidConstraintType  type  )  const [pure virtual]

Void constraints.

virtual void operations_research::ModelCache::InsertVoidConstraint ( Constraint *const   ct,
VoidConstraintType  type 
) [pure virtual]

virtual Constraint* operations_research::ModelCache::FindVarConstantConstraint ( IntVar *const   var,
int64  value,
VarConstantConstraintType  type 
) const [pure virtual]

Var Constant Constraints.

virtual void operations_research::ModelCache::InsertVarConstantConstraint ( Constraint *const   ct,
IntVar *const   var,
int64  value,
VarConstantConstraintType  type 
) [pure virtual]

virtual Constraint* operations_research::ModelCache::FindVarConstantConstantConstraint ( IntVar *const   var,
int64  value1,
int64  value2,
VarConstantConstantConstraintType  type 
) const [pure virtual]

Var Constant Constant Constraints.

virtual void operations_research::ModelCache::InsertVarConstantConstantConstraint ( Constraint *const   ct,
IntVar *const   var,
int64  value1,
int64  value2,
VarConstantConstantConstraintType  type 
) [pure virtual]

virtual Constraint* operations_research::ModelCache::FindVarVarConstraint ( IntVar *const   var1,
IntVar *const   var2,
VarVarConstraintType  type 
) const [pure virtual]

Var Var Constraints.

virtual void operations_research::ModelCache::InsertVarVarConstraint ( Constraint *const   ct,
IntVar *const   var1,
IntVar *const   var2,
VarVarConstraintType  type 
) [pure virtual]

virtual IntExpr* operations_research::ModelCache::FindVarExpression ( IntVar *const   var,
VarExpressionType  type 
) const [pure virtual]

Var Expressions.

virtual void operations_research::ModelCache::InsertVarExpression ( IntExpr *const   expression,
IntVar *const   var,
VarExpressionType  type 
) [pure virtual]

virtual IntExpr* operations_research::ModelCache::FindVarConstantExpression ( IntVar *const   var,
int64  value,
VarConstantExpressionType  type 
) const [pure virtual]

Var Constant Expressions .

virtual void operations_research::ModelCache::InsertVarConstantExpression ( IntExpr *const   expression,
IntVar *const   var,
int64  value,
VarConstantExpressionType  type 
) [pure virtual]

virtual IntExpr* operations_research::ModelCache::FindVarVarExpression ( IntVar *const   var1,
IntVar *const   var2,
VarVarExpressionType  type 
) const [pure virtual]

Var Var Expressions.

virtual void operations_research::ModelCache::InsertVarVarExpression ( IntExpr *const   expression,
IntVar *const   var1,
IntVar *const   var2,
VarVarExpressionType  type 
) [pure virtual]

virtual IntExpr* operations_research::ModelCache::FindVarConstantConstantExpression ( IntVar *const   var,
int64  value1,
int64  value2,
VarConstantConstantExpressionType  type 
) const [pure virtual]

Var Constant Constant Expressions.

virtual void operations_research::ModelCache::InsertVarConstantConstantExpression ( IntExpr *const   expression,
IntVar *const   var,
int64  value1,
int64  value2,
VarConstantConstantExpressionType  type 
) [pure virtual]

virtual IntExpr* operations_research::ModelCache::FindVarConstantArrayExpression ( IntVar *const   var,
ConstIntArray *const   values,
VarConstantArrayExpressionType  type 
) const [pure virtual]

Var Constant Array Expressions.

virtual void operations_research::ModelCache::InsertVarConstantArrayExpression ( IntExpr *const   expression,
IntVar *const   var,
ConstIntArray *const   values,
VarConstantArrayExpressionType  type 
) [pure virtual]

virtual IntExpr* operations_research::ModelCache::FindVarArrayExpression ( ConstPtrArray< IntVar > *const   vars,
VarArrayExpressionType  type 
) const [pure virtual]

Var Array Expressions.

virtual void operations_research::ModelCache::InsertVarArrayExpression ( IntExpr *const   expression,
ConstPtrArray< IntVar > *const   vars,
VarArrayExpressionType  type 
) [pure virtual]

Solver * operations_research::ModelCache::solver (  )  const

Definition at line 37 of file model_cache.cc.


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