Gecode::LinFloatExpr::Node Class Reference

Nodes for linear expressions. More...

## Public Member Functions

| Node (void)
| Default constructor.
void | fill (Home home, Float::Linear::Term *&tf, FloatVal m, FloatVal &d) const
| Generate linear terms from expression.
FloatVal | fill (Home home, Float::Linear::Term *tf) const
| Generate linear terms for expressions.
bool | decrement (void)
| Decrement reference count and possibly free memory.
| ~Node (void)
| Destructor.

## Static Public Member Functions

static void * | operator new (size_t size)
| Memory management.
static void | operator delete (void *p, size_t size)
| Memory management.

## Public Attributes

unsigned int | use
| Nodes are reference counted.
int | n_float
| Float variables in tree.
NodeType | t
| Type of expression.
Node * | l
| Subexpressions.
Node * | r
union { |
Float::Linear::Term * tf |
| Integer views and coefficients. More...
NonLinFloatExpr * ne |
| Non-linear expression. More...
} | sum
| Sum of integer or Boolean variables, or non-linear expression.
FloatVal | a
| Coefficient and offset.
FloatVal | c
FloatVar | x_float
| Float variable (potentially).

## Detailed Description

Nodes for linear expressions.

Definition at line 43 of file float-expr.cpp.

## Constructor & Destructor Documentation

## Node()

Gecode::LinFloatExpr::Node::Node | ( | void |  | ) |

inline

Default constructor.

Definition at line 88 of file float-expr.cpp.

## ~Node()

Gecode::LinFloatExpr::Node::~Node | ( | void |  | ) |

inline

Destructor.

Definition at line 92 of file float-expr.cpp.

## Member Function Documentation

## fill() [1/2]

void Gecode::LinFloatExpr::Node::fill | ( | Home | home,
|  | Float::Linear::Term *& | tf,
|  | FloatVal | m,
|  | FloatVal & | d ) const

Generate linear terms from expression.

Definition at line 344 of file float-expr.cpp.

## fill() [2/2]

FloatVal Gecode::LinFloatExpr::Node::fill | ( | Home | home,
|  | Float::Linear::Term * | tf ) const

Generate linear terms for expressions.

Definition at line 143 of file float-expr.cpp.

## decrement()

bool Gecode::LinFloatExpr::Node::decrement | ( | void |  | ) |

Decrement reference count and possibly free memory.

Definition at line 116 of file float-expr.cpp.

## operator new()

void * Gecode::LinFloatExpr::Node::operator new | ( | size_t | size | ) |

inline static

Memory management.

Definition at line 106 of file float-expr.cpp.

## operator delete()

void Gecode::LinFloatExpr::Node::operator delete | ( | void * | p,
|  | size_t | size )

inline static

Memory management.

Definition at line 111 of file float-expr.cpp.

## Member Data Documentation

## use

unsigned int Gecode::LinFloatExpr::Node::use

Nodes are reference counted.

Definition at line 46 of file float-expr.cpp.

## n_float

int Gecode::LinFloatExpr::Node::n_float

Float variables in tree.

Definition at line 48 of file float-expr.cpp.

## t

NodeType Gecode::LinFloatExpr::Node::t

Type of expression.

Definition at line 50 of file float-expr.cpp.

## l

Node* Gecode::LinFloatExpr::Node::l

Subexpressions.

Definition at line 52 of file float-expr.cpp.

## r

Node * Gecode::LinFloatExpr::Node::r

Definition at line 52 of file float-expr.cpp.

## tf

Float::Linear::Term* Gecode::LinFloatExpr::Node::tf

Integer views and coefficients.

Definition at line 56 of file float-expr.cpp.

## ne

NonLinFloatExpr* Gecode::LinFloatExpr::Node::ne

Non-linear expression.

Definition at line 58 of file float-expr.cpp.

## [union]

union { ... } Gecode::LinFloatExpr::Node::sum

Sum of integer or Boolean variables, or non-linear expression.

## a

FloatVal Gecode::LinFloatExpr::Node::a

Coefficient and offset.

Definition at line 61 of file float-expr.cpp.

## c

FloatVal Gecode::LinFloatExpr::Node::c

Definition at line 61 of file float-expr.cpp.

## x_float

FloatVar Gecode::LinFloatExpr::Node::x_float

Float variable (potentially).

Definition at line 63 of file float-expr.cpp.

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

- gecode/minimodel/float-expr.cpp