OPALX (Object Oriented Parallel Accelerator Library for Exascale) MINIorX
OPALX
Expressions::AAutomatic< T > Class Template Reference

Object attribute with an `‘automatic’' array value. More...

#include <AAutomatic.h>

Inheritance diagram for Expressions::AAutomatic< T >:
Inheritance graph
Collaboration diagram for Expressions::AAutomatic< T >:
Collaboration graph

Public Member Functions

 AAutomatic (PtrToArray< T > expr)
 Constructor. More...
 
 AAutomatic (ArrayOfPtrs< T > expr)
 Constructor. More...
 
 AAutomatic (const AAutomatic &)
 
virtual ~AAutomatic ()
 
virtual AAutomatic< T > * clone () const
 Make a clone. More...
 
virtual std::vector< Tevaluate ()
 Evaluate. More...
 
virtual void invalidate ()
 Invalidate. More...
 
virtual bool isExpression () const
 Get expression flag. More...
 
virtual void print (std::ostream &) const
 Print the attribute value. More...
 
void setComponent (int i, const PtrToScalar< T > expr)
 Set a component of the value. More...
 
std::string getImage () const
 Convert to string. More...
 
int addReference () const
 Increment reference count. More...
 
int removeReference () const
 Decrement the reference count. More...
 
bool isShared () const
 Test for sharing. More...
 

Protected Attributes

PtrToArray< TitsLaw
 The generating law for the array expression. More...
 
ArrayOfPtrs< TitsOverrides
 Overrides for single components. More...
 
std::vector< Tvalue
 The value of the attribute. More...
 

Private Member Functions

 AAutomatic ()
 
void operator= (const AAutomatic &)
 

Private Attributes

bool is_known
 
bool in_evaluation
 
int refCount
 

Detailed Description

template<class T>
class Expressions::AAutomatic< T >

Object attribute with an `‘automatic’' array value.

Definition at line 39 of file AAutomatic.h.

Constructor & Destructor Documentation

◆ AAutomatic() [1/4]

template<class T >
Expressions::AAutomatic< T >::AAutomatic ( PtrToArray< T expr)
explicit

Constructor.

Definition at line 88 of file AAutomatic.h.

References OpalData::getInstance(), and OpalData::registerExpression().

Here is the call graph for this function:

◆ AAutomatic() [2/4]

template<class T >
Expressions::AAutomatic< T >::AAutomatic ( ArrayOfPtrs< T expr)
explicit

Constructor.

Definition at line 96 of file AAutomatic.h.

References OpalData::getInstance(), and OpalData::registerExpression().

Here is the call graph for this function:

◆ AAutomatic() [3/4]

template<class T >
Expressions::AAutomatic< T >::AAutomatic ( const AAutomatic< T > &  )

◆ ~AAutomatic()

template<class T >
Expressions::AAutomatic< T >::~AAutomatic
virtual

Definition at line 104 of file AAutomatic.h.

References OpalData::getInstance(), and OpalData::unregisterExpression().

Here is the call graph for this function:

◆ AAutomatic() [4/4]

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

Member Function Documentation

◆ addReference()

int RCObject::addReference ( ) const
inlineinherited

Increment reference count.

Definition at line 83 of file RCObject.h.

References RCObject::refCount.

Referenced by Pointer< Object >::operator=(), and Pointer< Object >::unique().

◆ clone()

template<class T >
AAutomatic< T > * Expressions::AAutomatic< T >::clone
virtual

Make a clone.

Reimplemented from Expressions::ADeferred< T >.

Definition at line 111 of file AAutomatic.h.

◆ evaluate()

template<class T >
std::vector< T > Expressions::AAutomatic< T >::evaluate
virtual

Evaluate.

Reimplemented from Expressions::ADeferred< T >.

Definition at line 117 of file AAutomatic.h.

References Expressions::ADeferred< T >::evaluate().

Here is the call graph for this function:

◆ getImage()

std::string AttributeBase::getImage ( ) const
inherited

Convert to string.

Definition at line 34 of file AttributeBase.cpp.

References AttributeBase::print().

Here is the call graph for this function:

◆ invalidate()

template<class T >
void Expressions::AAutomatic< T >::invalidate
virtual

Invalidate.

Reimplemented from Invalidator.

Definition at line 128 of file AAutomatic.h.

◆ isExpression()

template<class T >
bool Expressions::ADeferred< T >::isExpression
virtualinherited

Get expression flag.

Reimplemented from AttributeBase.

Definition at line 213 of file ADeferred.h.

◆ isShared()

bool RCObject::isShared ( ) const
inlineinherited

Test for sharing.

Definition at line 93 of file RCObject.h.

References RCObject::refCount.

◆ operator=()

template<class T >
void Expressions::AAutomatic< T >::operator= ( const AAutomatic< T > &  )
private

◆ print()

template<class T >
void Expressions::ADeferred< T >::print ( std::ostream &  os) const
virtualinherited

Print the attribute value.

Reimplemented from Expressions::AValue< T >.

Definition at line 219 of file ADeferred.h.

◆ removeReference()

int RCObject::removeReference ( ) const
inlineinherited

Decrement the reference count.

Definition at line 88 of file RCObject.h.

References RCObject::refCount.

◆ setComponent()

template<class T >
void Expressions::ADeferred< T >::setComponent ( int  i,
const PtrToScalar< T expr 
)
inherited

Set a component of the value.

Definition at line 242 of file ADeferred.h.

Referenced by Attributes::BoolArray::parseComponent(), and Attributes::RealArray::parseComponent().

Member Data Documentation

◆ in_evaluation

template<class T >
bool Expressions::ADeferred< T >::in_evaluation
mutableprivateinherited

Definition at line 99 of file ADeferred.h.

◆ is_known

template<class T >
bool Expressions::AAutomatic< T >::is_known
mutableprivate

Definition at line 72 of file AAutomatic.h.

◆ itsLaw

template<class T >
PtrToArray<T> Expressions::ADeferred< T >::itsLaw
protectedinherited

The generating law for the array expression.

Definition at line 85 of file ADeferred.h.

◆ itsOverrides

template<class T >
ArrayOfPtrs<T> Expressions::ADeferred< T >::itsOverrides
protectedinherited

Overrides for single components.

Definition at line 91 of file ADeferred.h.

Referenced by Expressions::ADeferred< T >::ADeferred().

◆ refCount

int RCObject::refCount
mutableprivateinherited

◆ value

template<class T >
std::vector<T> Expressions::AValue< T >::value
mutableprotectedinherited

The value of the attribute.

Definition at line 63 of file AValue.h.


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