|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
Abstract base class for attribute values of different types. More...
#include <AttributeBase.h>
Public Member Functions | |
| AttributeBase () | |
| virtual | ~AttributeBase () |
| virtual AttributeBase * | clone () const =0 |
| Make clone. | |
| std::string | getImage () const |
| Convert to string. | |
| virtual bool | isExpression () const |
| Test for expression. | |
| virtual void | print (std::ostream &) const =0 |
| Print value. | |
| int | addReference () const |
| Increment reference count. | |
| int | removeReference () const |
| Decrement the reference count. | |
| bool | isShared () const |
| Test for sharing. | |
| virtual void | invalidate () |
| Force re-evaluation. | |
Private Member Functions | |
| AttributeBase (AttributeBase &) | |
| void | operator= (AttributeBase &) |
Private Attributes | |
| int | refCount |
Abstract base class for attribute values of different types.
Definition at line 32 of file AttributeBase.h.
| AttributeBase::AttributeBase | ( | ) |
Definition at line 25 of file AttributeBase.cpp.
References RCObject::RCObject().
Referenced by AttributeBase(), clone(), Expressions::SRefAttr< T >::evaluate(), operator=(), Expressions::SRefAttr< T >::set(), and Expressions::SRefAttr< T >::SRefAttr().
|
virtual |
Definition at line 30 of file AttributeBase.cpp.
|
private |
|
inlineinherited |
Increment reference count.
Definition at line 83 of file RCObject.h.
References refCount.
Referenced by Pointer< Object >::operator=(), Pointer< Object >::operator=(), and Pointer< Object >::unique().
|
pure virtual |
Make clone.
Implemented in Expressions::AAutomatic< T >, Expressions::ADeferred< T >, Expressions::AValue< T >, Expressions::SAutomatic< T >, Expressions::SDeferred< T >, Expressions::SRefAttr< T >, and Expressions::SValue< T >.
References AttributeBase().
| std::string AttributeBase::getImage | ( | ) | const |
Convert to string.
Definition at line 34 of file AttributeBase.cpp.
References print().
Referenced by Expressions::ADeferred< T >::evaluate(), Expressions::SDeferred< T >::evaluate(), and Expressions::SRefAttr< T >::evaluate().
|
virtualinherited |
Force re-evaluation.
Reimplemented in Expressions::AAutomatic< T >, Expressions::SAutomatic< T >, Expressions::SRefAttr< T >, and Expressions::SRefExpr< T >.
Definition at line 27 of file Invalidator.cpp.
|
virtual |
Test for expression.
Reimplemented in Expressions::ADeferred< T >, and Expressions::SDeferred< T >.
Definition at line 42 of file AttributeBase.cpp.
Referenced by OpalElement::printMultipoleStrength().
|
inlineinherited |
|
private |
|
pure virtual |
Print value.
Implemented in Expressions::ADeferred< T >, Expressions::AValue< T >, Expressions::AValue< T >, Expressions::AValue< T >, Expressions::AValue< T >, Expressions::AValue< T >, Expressions::SDeferred< T >, Expressions::SRefAttr< T >, Expressions::SValue< T >, Expressions::SValue< T >, Expressions::SValue< T >, and Expressions::SValue< T >.
Referenced by getImage(), and operator<<().
|
inlineinherited |
|
mutableprivateinherited |
Definition at line 76 of file RCObject.h.
Referenced by addReference(), isShared(), RCObject(), RCObject(), and removeReference().