OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
|
Classes | |
struct | AttributeDef |
class | PyElement |
struct | PyElementGetProperty |
struct | PyElementSetProperty |
Enumerations | |
enum | AttributeType { DOUBLE , STRING , BOOL , INT } |
Variables | |
std::map< AttributeType, std::string > | attributeName |
PyElementNS namespace contains PyElement, a wrapper for OpalElement objects, and various supporting objects.
PyElement<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 PyElement 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 MyOpalElementClass, you need to:
PyElement<MyOpalElementType>.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 | |
---|---|
DOUBLE | |
STRING | |
BOOL | |
INT |
Definition at line 60 of file PyElement.h.
std::map< AttributeType, std::string > PyOpal::PyElementNS::attributeName |
Maps the AttributeType to a string representation for docstrings/etc
Definition at line 7 of file PyElement.cpp.
Referenced by H5PartWrapper::copyHeader(), H5PartWrapper::copyStepHeader(), PyOpal::PyElementNS::PyElement< C >::getDocString(), H5PartWrapperForPC::readHeader(), and H5PartWrapperForPT::readHeader().