21 #ifndef OTAWA_ILP_IMPL_H_
22 #define OTAWA_ILP_IMPL_H_
28 namespace otawa {
namespace ilp {
43 virtual const string&
label(
void)
const;
45 virtual void add(
double coef,
Var *var);
46 virtual void sub(
double coef,
Var *var);
An expression allows to represent a sum of terms and may be used to represent the value of an aliased...
Definition: Expression.h:43
Expression expr
Definition: impl.h:51
const string & name(void) const
Get the name of the variable if any.
Definition: Var.h:46
comparator_t
Definition: Constraint.h:36
ConstraintImpl(comparator_t comparator, string label="")
Build an empty constraint.
Definition: ilp_impl.cpp:57
VarImpl(string name)
Named variable constructor.
Definition: impl.h:33
VarImpl(void)
Anonymous variable constructor.
Definition: impl.h:32
Very trivial implementation of the Var class.
Definition: impl.h:30
string lab
Definition: impl.h:53
This class is used to represent constraints in an ILP system with the following form: ...
Definition: Constraint.h:33
virtual comparator_t comparator(void) const
Get the constraint comparator.
Definition: ilp_impl.cpp:86
Provide a simple implementation of a constraint using expression.
Definition: impl.h:37
virtual void sub(double coef, Var *var)
Substact a factor from the constraint.
Definition: ilp_impl.cpp:107
virtual void add(double coef, Var *var)
Add a term to the constraint to the left part of constraint.
Definition: ilp_impl.cpp:100
virtual double constant(void) const
Definition: ilp_impl.cpp:75
virtual double coefficient(Var *var)
Definition: ilp_impl.cpp:64
virtual const string & label(void) const
Definition: ilp_impl.cpp:93
A variable is an identifier used for performing ILP computation.
Definition: Var.h:36
Encapsulation for ilp::Var pointers for {ilp} expr user-fiendly interface.
Definition: expr.h:29
virtual elm::datastruct::IteratorInst< Term > * terms(void)
Definition: ilp_impl.cpp:126
comparator_t comp
Definition: impl.h:52