Otawa  0.10
otawa::ilp Namespace Reference

Classes

class  AbstractConstraint
 Constraint generated by AbstractSystem. More...
 
class  AbstractSystem
 This class provides a convenient way to handle ILP systems in OTAWA. More...
 
class  Alias
 An alias is a specific variable that represents an expressions. More...
 
class  cons
 Encapsulation for ilp::Constraint pointers for {ilp} expr user-fiendly interface. More...
 
class  Constraint
 This class is used to represent constraints in an ILP system with the following form: More...
 
class  ConstraintImpl
 Provide a simple implementation of a constraint using expression. More...
 
class  Expression
 An expression allows to represent a sum of terms and may be used to represent the value of an aliased variable. More...
 
class  ILPPlugin
 This interface must be implemented by plugins providing ILP processors. More...
 
class  model
 Encapsulation for ilp::System pointers for {ilp} expr user-fiendly interface. More...
 
class  Output
 This processor provides an output of the built ILP system. More...
 
class  System
 An ILP system is a colletion of ILP constraint that may maximize or minimize some object function. More...
 
class  Term
 
class  Var
 A variable is an identifier used for performing ILP computation. More...
 
class  var
 Encapsulation for ilp::Var pointers for {ilp} expr user-fiendly interface. More...
 
class  VarImpl
 Very trivial implementation of the Var class. More...
 

Typedefs

typedef double coef_t
 
typedef enum otawa::ilp::format_t format_t
 

Enumerations

enum  format_t { DEFAULT = 0, LP_SOLVE = 1, CPLEX = 2, MOSEK = 3 }
 

Functions

io::Outputoperator<< (io::Output &out, Constraint::comparator_t comp)
 
io::Outputoperator<< (io::Output &out, const Term &t)
 
var x (Var *v)
 Convert an ilp::Var * to a var. More...
 
Term operator* (coef_t c, var v)
 
Term operator* (var v, coef_t c)
 
Expression operator+ (const Term &t1, const Term &t2)
 
Expression operator- (const Term &t1, const Term &t2)
 
Expression operator+ (const Expression &e, const Term &t)
 
Expression operator- (const Expression &e, const Term &t)
 
io::Outputoperator<< (io::Output &out, Var *var)
 
io::Outputoperator<< (io::Output &out, Var &var)
 
io::Outputoperator<< (io::Output &out, Var::type_t type)
 
SilentFeature OUTPUT_FEATURE ("otawa::ilp::OUTPUT_FEATURE", maker)
 This feature ensures that an output of the ILP system has been produced. More...
 
Identifier< format_tOUTPUT_FORMAT ("otawa::ilp::OUTPUT_FORMAT", LP_SOLVE)
 Select the output format to build the OUTPUT_FEATURE. More...
 
Identifier< sys::PathOUTPUT_PATH ("otawa::ilp::OUTPUT_PATH","")
 Select the file to perform the output during build of OUTPUT_FEATURE. More...
 
Identifier< elm::io::OutStream * > OUTPUT ("otawa::ilp::OUTPUT", 0)
 Select the output stream to perform the output to to build a OUTPUT_FEATURE. More...
 
io::Outputoperator<< (io::Output &out, const CID &id)
 

Variables

SilentFeature OUTPUT_FEATURE
 This feature ensures that an output of the ILP system has been produced. More...
 
Identifier< format_tOUTPUT_FORMAT
 Select the output format to build the OUTPUT_FEATURE. More...
 
Identifier< sys::PathOUTPUT_PATH
 Select the file to perform the output during build of OUTPUT_FEATURE. More...
 
Identifier< elm::io::OutStream * > OUTPUT
 Select the output stream to perform the output to to build a OUTPUT_FEATURE. More...
 

Typedef Documentation

typedef double otawa::ilp::coef_t

Enumeration Type Documentation

Enumerator
DEFAULT 
LP_SOLVE 
CPLEX 
MOSEK 

Function Documentation

Term otawa::ilp::operator* ( coef_t  c,
var  v 
)
inline
Term otawa::ilp::operator* ( var  v,
coef_t  c 
)
inline
Expression otawa::ilp::operator+ ( const Term &  t1,
const Term &  t2 
)
inline
Expression otawa::ilp::operator+ ( const Expression &  e,
const Term &  t 
)
inline
Expression otawa::ilp::operator- ( const Term &  t1,
const Term &  t2 
)
inline
Expression otawa::ilp::operator- ( const Expression &  e,
const Term &  t 
)
inline
io::Output& otawa::ilp::operator<< ( io::Output out,
Var *  var 
)
inline

References out, and otawa::ilp::Var::print().

io::Output & otawa::ilp::operator<< ( io::Output &  out,
Constraint::comparator_t  comp 
)
io::Output& otawa::ilp::operator<< ( io::Output out,
Var &  var 
)
inline

References out, and otawa::ilp::Var::print().

io::Output & otawa::ilp::operator<< ( io::Output &  out,
const Term &  t 
)
io::Output & otawa::ilp::operator<< ( io::Output &  out,
Var::type_t  type 
)
io::Output& otawa::ilp::operator<< ( io::Output &  out,
const CID &  id 
)
Identifier<elm::io::OutStream *> otawa::ilp::OUTPUT ( "otawa::ilp::OUTPUT"  ,
 
)

Select the output stream to perform the output to to build a OUTPUT_FEATURE.

SilentFeature otawa::ilp::OUTPUT_FEATURE ( "otawa::ilp::OUTPUT_FEATURE"  ,
maker   
)

This feature ensures that an output of the ILP system has been produced.

Default processor

Configuration

Identifier<format_t> otawa::ilp::OUTPUT_FORMAT ( "otawa::ilp::OUTPUT_FORMAT"  ,
LP_SOLVE   
)

Select the output format to build the OUTPUT_FEATURE.

Accepted values includes ilp::LP_SOLVE (1), ilp::CPLEX (2) or (3).

Identifier<sys::Path> otawa::ilp::OUTPUT_PATH ( "otawa::ilp::OUTPUT_PATH"  ,
""   
)

Select the file to perform the output during build of OUTPUT_FEATURE.

Variable Documentation

Identifier<elm::io::OutStream *> otawa::ilp::OUTPUT("otawa::ilp::OUTPUT", 0)

Select the output stream to perform the output to to build a OUTPUT_FEATURE.

Referenced by otawa::ilp::Output::configure().

SilentFeature otawa::ilp::OUTPUT_FEATURE("otawa::ilp::OUTPUT_FEATURE", maker)

This feature ensures that an output of the ILP system has been produced.

Default processor

Configuration

Identifier<format_t> otawa::ilp::OUTPUT_FORMAT("otawa::ilp::OUTPUT_FORMAT", LP_SOLVE)

Select the output format to build the OUTPUT_FEATURE.

Accepted values includes ilp::LP_SOLVE (1), ilp::CPLEX (2) or (3).

Referenced by otawa::ilp::Output::configure().

Identifier<sys::Path> otawa::ilp::OUTPUT_PATH("otawa::ilp::OUTPUT_PATH","")

Select the file to perform the output during build of OUTPUT_FEATURE.

Referenced by otawa::ilp::Output::configure().