OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Expressions::ATable Class Reference

An array expression generated from a TABLE() function. More...

#include <ATable.h>

Inheritance diagram for Expressions::ATable:
Inheritance graph
[legend]
Collaboration diagram for Expressions::ATable:
Collaboration graph
[legend]

Public Member Functions

 ATable (int n1, int n2, int n3)
 Constructor. More...
 
 ATable (const ATable &)
 
 ~ATable ()
 
virtual OArray< double > * clone () const
 Make clone. More...
 
void defineExpression (PtrToScalar< double >)
 Store the generating expression. More...
 
virtual std::vector< double > evaluate () const
 Evaluate. More...
 
double getHash () const
 Return the current value of '#'. More...
 
virtual void print (std::ostream &os, int precedence=99) const
 Print expression. More...
 
- Public Member Functions inherited from Expressions::OArray< double >
 OArray ()
 
 OArray (const OArray &)
 
virtual ~OArray ()
 
virtual bool isConstant () const
 Test for constant. More...
 

Private Member Functions

 ATable ()
 
const ATableoperator= (const ATable &)
 

Private Attributes

PtrToScalar< double > itsExpr
 
int itsBegin
 
int itsEnd
 
int itsStep
 
int itsHash
 

Detailed Description

An array expression generated from a TABLE() function.

Definition at line 38 of file ATable.h.

Constructor & Destructor Documentation

Expressions::ATable::ATable ( int  n1,
int  n2,
int  n3 
)

Constructor.

Definition at line 36 of file ATable.cpp.

Expressions::ATable::ATable ( const ATable rhs)

Definition at line 30 of file ATable.cpp.

Expressions::ATable::~ATable ( )

Definition at line 41 of file ATable.cpp.

Expressions::ATable::ATable ( )
private

Referenced by clone().

Member Function Documentation

OArray< double > * Expressions::ATable::clone ( ) const
virtual

Make clone.

Implements Expressions::OArray< double >.

Definition at line 45 of file ATable.cpp.

References ATable().

Here is the call graph for this function:

void Expressions::ATable::defineExpression ( PtrToScalar< double >  expr)

Store the generating expression.

Definition at line 50 of file ATable.cpp.

References itsExpr.

std::vector< double > Expressions::ATable::evaluate ( ) const
virtual

Evaluate.

Implements Expressions::OArray< double >.

Definition at line 55 of file ATable.cpp.

References itsBegin, itsEnd, itsExpr, itsHash, and itsStep.

double Expressions::ATable::getHash ( ) const

Return the current value of '#'.

Definition at line 66 of file ATable.cpp.

References itsHash.

Referenced by Expressions::SHash::clone(), and Expressions::SHash::evaluate().

const ATable& Expressions::ATable::operator= ( const ATable )
private
void Expressions::ATable::print ( std::ostream &  os,
int  precedence = 99 
) const
virtual

Print expression.

Implements Expressions::OArray< double >.

Definition at line 71 of file ATable.cpp.

References itsBegin, itsEnd, itsExpr, and itsStep.

Member Data Documentation

int Expressions::ATable::itsBegin
private

Definition at line 76 of file ATable.h.

Referenced by evaluate(), and print().

int Expressions::ATable::itsEnd
private

Definition at line 76 of file ATable.h.

Referenced by evaluate(), and print().

PtrToScalar<double> Expressions::ATable::itsExpr
private

Definition at line 73 of file ATable.h.

Referenced by defineExpression(), evaluate(), and print().

int Expressions::ATable::itsHash
mutableprivate

Definition at line 79 of file ATable.h.

Referenced by evaluate(), and getHash().

int Expressions::ATable::itsStep
private

Definition at line 76 of file ATable.h.

Referenced by evaluate(), and print().


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