Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
tmp
OS-2.10.2
Couenne
src
expression
CouenneExprStore.hpp
Go to the documentation of this file.
1
/* $Id: CouenneExprStore.hpp 645 2011-06-14 10:04:49Z pbelotti $
2
*
3
* Name: exprStore.hpp
4
* Author: Pietro Belotti
5
* Purpose: definition of a storage class for expressions
6
*
7
* (C) Carnegie-Mellon University, 2007.
8
* This file is licensed under the Eclipse Public License (EPL)
9
*/
10
11
#ifndef COUENNE_EXPRSTORE_HPP
12
#define COUENNE_EXPRSTORE_HPP
13
14
#include <iostream>
15
16
#include "
CouenneTypes.hpp
"
17
#include "
CouenneExprCopy.hpp
"
18
19
namespace
Couenne {
20
22
23
class
exprStore
:
public
exprCopy
{
24
25
protected
:
26
28
CouNumber
value_
;
29
30
public
:
31
33
exprStore
(
expression
*copy):
34
exprCopy
(copy) {}
35
37
exprStore
(
const
exprStore
&
e
,
Domain
*d = NULL):
38
exprCopy
(e, d) {
39
//copy_ = e.Original () -> clone ();
40
}
41
43
virtual
~exprStore
()
44
{
copy_
= NULL;}
45
47
virtual
void
print
(std::ostream &out = std::cout,
48
bool
descend =
false
)
const
;
49
51
virtual
inline
expression
*
clone
(
Domain
*d = NULL)
const
52
{
return
new
exprStore
(*
this
, d);}
53
57
virtual
inline
CouNumber
operator ()
()
58
{
return
(
copy_
->
Value
());}
59
};
60
61
}
62
63
#endif
Couenne::exprStore::operator()
virtual CouNumber operator()()
function for evaluating the expression – returns value of exprCopy pointed to, which returns a value ...
Definition:
CouenneExprStore.hpp:57
Couenne::exprStore::print
virtual void print(std::ostream &out=std::cout, bool descend=false) const
Printing.
Definition:
expression.cpp:238
Couenne::exprStore::exprStore
exprStore(const exprStore &e, Domain *d=NULL)
Store constructor – Must go.
Definition:
CouenneExprStore.hpp:37
e
void fint fint fint real fint real real real real real real real real real * e
Definition:
BonBqpdSolver.cpp:27
Couenne::exprStore::~exprStore
virtual ~exprStore()
Destructor.
Definition:
CouenneExprStore.hpp:43
Couenne::exprStore::clone
virtual expression * clone(Domain *d=NULL) const
Cloning method.
Definition:
CouenneExprStore.hpp:51
Couenne::exprStore::value_
CouNumber value_
Value of the (previously evaluated) expression.
Definition:
CouenneExprStore.hpp:28
Couenne::exprCopy::copy_
expression * copy_
the expression this object is a (reference) copy of
Definition:
CouenneExprCopy.hpp:30
Couenne::exprCopy
Definition:
CouenneExprCopy.hpp:25
CouenneExprCopy.hpp
Couenne::CouNumber
double CouNumber
main number type in Couenne
Definition:
CouenneTypes.hpp:100
Couenne::exprStore
storage class for previously evaluated expressions
Definition:
CouenneExprStore.hpp:23
Couenne::expression
Expression base class.
Definition:
CouenneExpression.hpp:48
CouenneTypes.hpp
Couenne::exprStore::exprStore
exprStore(expression *copy)
Constructor.
Definition:
CouenneExprStore.hpp:33
Couenne::exprCopy::Value
virtual CouNumber Value() const
value
Definition:
CouenneExprCopy.hpp:112
Couenne::Domain
Define a dynamic point+bounds, with a way to save and restore previous points+bounds through a LIFO s...
Definition:
CouenneDomain.hpp:104
Generated by
1.8.5