|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
Classes | |
| struct | AttributeDef |
| class | PyOpalObject |
| struct | PyOpalObjectGetProperty |
| struct | PyOpalObjectSetProperty |
Enumerations | |
| enum | AttributeType { STRING , PREDEFINED_STRING , UPPER_CASE_STRING , STRING_LIST , DOUBLE , BOOL , INT , FLOAT_LIST } |
Functions | |
| template<class C > | |
| void | update (PyOpalObjectNS::PyOpalObject< C > pyelement) |
Variables | |
| std::map< AttributeType, std::string > | attributeName |
PyOpalObjectNS namespace contains PyOpalObject, a wrapper for Object objects, and various supporting objects.
PyOpalObject<C>: basic element wrapper for C, which should be a subclass of OpalElement. AttributeType: enumeration of Opal Attribute Types (real, string, etc) AttributeDef: struct containing all of the things PyOpalObject needs to know about each attribute that should be exposed to the python api. PyElementGetProperty: call policy to handle access of an Attribute for a python property PyElementSetProperty: call policy to handle setting of an Attribute for a python property
To wrap an OpalElement, say MyOpalObjectClass, you need to:
PyOpalObject<MyOpalObjectType>.make_class()Nb: apologies, this is heavy template stuff so almost everything has to go in the header file.
AttributeType is used to control conversion from python to OpalAttribute
| Enumerator | |
|---|---|
| STRING | |
| PREDEFINED_STRING | |
| UPPER_CASE_STRING | |
| STRING_LIST | |
| DOUBLE | |
| BOOL | |
| INT | |
| FLOAT_LIST | |
Definition at line 80 of file PyOpalObject.h.
| void PyOpal::PyOpalObjectNS::update | ( | PyOpalObjectNS::PyOpalObject< C > | pyelement | ) |
Call update on a pyelement
Note that C must be a subtype of OpalElement or some other class that has an C::update() method (i.e. not OpalObject).
Definition at line 340 of file PyOpalObject.h.
References PyOpal::PyOpalObjectNS::PyOpalObject< C >::getOpalShared().

| std::map< AttributeType, std::string > PyOpal::PyOpalObjectNS::attributeName |
Maps the AttributeType to a string representation for docstrings/etc
Definition at line 22 of file PyOpalObject.cpp.
Referenced by PyOpal::PyOpalObjectNS::PyOpalObject< C >::getAttribute(), PyOpal::PyOpalObjectNS::PyOpalObject< C >::getDocString(), and PyOpal::PyOpalObjectNS::PyOpalObject< C >::setAttribute().