OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
Expressions::ASUnary< T > Class Template Reference

A scalar expression with one array operand. More...

#include <ASUnary.h>

Inheritance diagram for Expressions::ASUnary< T >:
Inheritance graph
[legend]
Collaboration diagram for Expressions::ASUnary< T >:
Collaboration graph
[legend]

Public Member Functions

 ASUnary (const TFunction1< T, const std::vector< T > & > &function, PtrToArray< T > &oper)
 Constructor. More...
 
 ASUnary (const ASUnary< T > &)
 
virtual ~ASUnary ()
 
virtual Scalar< T > * clone () const
 Make clone. More...
 
virtual T evaluate () const
 Evaluate expression. More...
 
virtual void print (std::ostream &, int precedence=99) const
 Print expression. More...
 
- Public Member Functions inherited from Expressions::Scalar< T >
 Scalar ()
 
 Scalar (const Scalar &)
 
virtual ~Scalar ()
 
virtual bool isConstant () const
 Test for constant. More...
 

Static Public Member Functions

static PtrToScalar< Tmake (const TFunction1< T, const std::vector< T > & > &function, PtrToArray< T > &oper)
 Make new expression. More...
 

Private Member Functions

 ASUnary ()
 
void operator= (const ASUnary &)
 

Private Attributes

const TFunction1< T, const
std::vector< T > & > & 
fun
 
PtrToArray< Topr
 

Detailed Description

template<class T>
class Expressions::ASUnary< T >

A scalar expression with one array operand.

Definition at line 41 of file ASUnary.h.

Constructor & Destructor Documentation

template<class T >
Expressions::ASUnary< T >::ASUnary ( const TFunction1< T, const std::vector< T > & > &  function,
PtrToArray< T > &  oper 
)
inline

Constructor.

Definition at line 94 of file ASUnary.h.

template<class T >
Expressions::ASUnary< T >::ASUnary ( const ASUnary< T > &  rhs)
inline

Definition at line 87 of file ASUnary.h.

template<class T >
Expressions::ASUnary< T >::~ASUnary ( )
inlinevirtual

Definition at line 101 of file ASUnary.h.

template<class T>
Expressions::ASUnary< T >::ASUnary ( )
private

Member Function Documentation

template<class T >
Scalar< T > * Expressions::ASUnary< T >::clone ( ) const
inlinevirtual

Make clone.

Implements Expressions::Scalar< T >.

Definition at line 106 of file ASUnary.h.

template<class T >
T Expressions::ASUnary< T >::evaluate ( ) const
inlinevirtual

Evaluate expression.

Implements Expressions::Scalar< T >.

Definition at line 112 of file ASUnary.h.

References arg(), and T.

Here is the call graph for this function:

template<class T >
PtrToScalar< T > Expressions::ASUnary< T >::make ( const TFunction1< T, const std::vector< T > & > &  function,
PtrToArray< T > &  oper 
)
inlinestatic

Make new expression.

Definition at line 138 of file ASUnary.h.

References OwnPtr< Scalar< T > >::release().

Here is the call graph for this function:

template<class T>
void Expressions::ASUnary< T >::operator= ( const ASUnary< T > &  )
private
template<class T >
void Expressions::ASUnary< T >::print ( std::ostream &  os,
int  precedence = 99 
) const
inlinevirtual

Print expression.

Implements Expressions::Scalar< T >.

Definition at line 158 of file ASUnary.h.

Member Data Documentation

template<class T>
const TFunction1<T, const std::vector<T>&>& Expressions::ASUnary< T >::fun
private

Definition at line 76 of file ASUnary.h.

template<class T>
PtrToArray<T> Expressions::ASUnary< T >::opr
private

Definition at line 79 of file ASUnary.h.


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