|
OPAL (Object Oriented Parallel Accelerator Library)
2024.1
OPAL
|
#include <ParticleMatterInteraction.h>


Public Member Functions | |
| ParticleMatterInteraction () | |
| Exemplar constructor. More... | |
| virtual | ~ParticleMatterInteraction () |
| virtual bool | canReplaceBy (Object *object) |
| Test if replacement is allowed. More... | |
| virtual ParticleMatterInteraction * | clone (const std::string &name) |
| Make clone. More... | |
| virtual void | execute () |
| Check the PARTICLEMATTERINTERACTION data. More... | |
| virtual void | update () |
| Update the PARTICLEMATTERINTERACTION data. More... | |
| void | print (std::ostream &os) const |
| Print the object. More... | |
| void | initParticleMatterInteractionHandler (ElementBase &element) |
| void | updateElement (ElementBase *element) |
Public Member Functions inherited from Definition | |
| virtual | ~Definition () |
| virtual const std::string | getCategory () const |
| Return the object category as a string. More... | |
| virtual bool | shouldTrace () const |
| Trace flag. More... | |
| virtual bool | shouldUpdate () const |
| Update flag. More... | |
Public Member Functions inherited from Object | |
| virtual | ~Object () |
| void | copyAttributes (const Object &) |
| Copy attributes from another object. More... | |
| virtual Attribute * | findAttribute (const std::string &name) |
| Find an attribute by name. More... | |
| virtual const Attribute * | findAttribute (const std::string &name) const |
| Find an attribute by name. More... | |
| virtual Object * | makeTemplate (const std::string &, TokenStream &, Statement &) |
| Macro handler function. More... | |
| virtual Object * | makeInstance (const std::string &name, Statement &, const Parser *) |
| Macro handler function. More... | |
| virtual void | parse (Statement &) |
| Parse the object. More... | |
| virtual void | parseShortcut (Statement &, bool eval=true) |
| Parser for single-attribute commands. More... | |
| virtual void | printValue (std::ostream &) const |
| virtual void | printHelp (std::ostream &) const |
| Print help. More... | |
| virtual void | replace (Object *oldObject, Object *newObject) |
| Replace references. More... | |
| bool | isBuiltin () const |
| True, if [b]this[/b] is a built-in object. More... | |
| virtual bool | isShared () const |
| Shared flag. More... | |
| virtual void | setShared (bool) |
| Set/reset shared flag. More... | |
| void | setDirty (bool) |
| Set/reset the [b]modified[/b] flag. More... | |
| bool | isDirty () const |
| True, if the [b]modified[/b] flag is set. More... | |
| void | setFlag (bool) |
| Flag/unflag this object, e. g. to control output of objects for. More... | |
| bool | isFlagged () const |
| True, if [b]this[/b] is flagged by setFlag(true). More... | |
| const Object * | getBaseObject () const |
| Return the object's base type object. More... | |
| const std::string & | getOpalName () const |
| Return object name. More... | |
| Object * | getParent () const |
| Return parent pointer. More... | |
| bool | isTreeMember (const Object *subTree) const |
| Test for tree membership. More... | |
| void | setOpalName (const std::string &name) |
| Set object name. More... | |
| void | setParent (Object *) |
| Set parent object. More... | |
| void | clear () |
| Clear the occurrence counter. More... | |
| int | increment () |
| Increment and return the occurrence counter. More... | |
| int | occurrenceCount () |
| Return the occurrence counter. More... | |
| void | registerReference (Invalidator *a) |
| Register a reference to this object. More... | |
| void | unregisterReference (Invalidator *a) |
| Unegister a reference to this object. More... | |
| void | registerOwnership (const AttributeHandler::OwnerType &itsClass) const |
Public Member Functions inherited from RCObject | |
| int | addReference () const |
| Increment reference count. More... | |
| int | removeReference () const |
| Decrement the reference count. More... | |
| bool | isShared () const |
| Test for sharing. More... | |
Static Public Member Functions | |
| static ParticleMatterInteraction * | find (const std::string &name) |
| Find named PARTICLEMATTERINTERACTION. More... | |
Public Attributes | |
| ParticleMatterInteractionHandler * | handler_m |
Public Attributes inherited from Object | |
| std::vector< Attribute > | itsAttr |
| The object attributes. More... | |
Private Types | |
| enum | InteractionType : unsigned short { InteractionType::SCATTERING, InteractionType::BEAMSTRIPPING } |
Private Member Functions | |
| ParticleMatterInteraction (const ParticleMatterInteraction &) | |
| void | operator= (const ParticleMatterInteraction &) |
| ParticleMatterInteraction (const std::string &name, ParticleMatterInteraction *parent) | |
| void | getInteractionType () |
Private Attributes | |
| InteractionType | type_m |
Additional Inherited Members | |
Protected Member Functions inherited from Definition | |
| Definition (int size, const char *name, const char *help) | |
| Constructor for exemplars. More... | |
| Definition (const std::string &name, Definition *parent) | |
| Constructor for clones. More... | |
Protected Member Functions inherited from Object | |
| Object (int size, const char *name, const char *help) | |
| Constructor for exemplars. More... | |
| Object (const std::string &name, Object *parent) | |
| Constructor for clones. More... | |
Protected Member Functions inherited from RCObject | |
| RCObject () | |
| Default constructor. More... | |
| RCObject (const RCObject &) | |
| Copy constructor. More... | |
| virtual | ~RCObject ()=0 |
| RCObject & | operator= (const RCObject &right) |
Protected Attributes inherited from Object | |
| bool | builtin |
| Built-in flag. More... | |
| bool | modified |
| Dirty flag. More... | |
| bool | flagged |
| Object flag. More... | |
Definition at line 34 of file ParticleMatterInteraction.h.
|
strongprivate |
| Enumerator | |
|---|---|
| SCATTERING | |
| BEAMSTRIPPING | |
Definition at line 66 of file ParticleMatterInteraction.h.
| ParticleMatterInteraction::ParticleMatterInteraction | ( | ) |
Exemplar constructor.
Definition at line 50 of file ParticleMatterInteraction.cpp.
References Object::builtin, clone(), OpalData::define(), OpalData::getInstance(), Object::itsAttr, Attributes::makeBool(), Attributes::makePredefinedString(), Attributes::makeReal(), Object::registerOwnership(), AttributeHandler::STATEMENT, Attrib::Distribution::TYPE, and update().
Referenced by clone().

|
virtual |
Definition at line 102 of file ParticleMatterInteraction.cpp.
References handler_m.
|
private |
|
private |
Definition at line 96 of file ParticleMatterInteraction.cpp.
|
virtual |
Test if replacement is allowed.
Reimplemented from Object.
Definition at line 108 of file ParticleMatterInteraction.cpp.
|
virtual |
Make clone.
Implements Object.
Definition at line 114 of file ParticleMatterInteraction.cpp.
References ParticleMatterInteraction().
Referenced by ParticleMatterInteraction(), OpalSBend::update(), OpalRBend::update(), OpalDegrader::update(), OpalECollimator::update(), OpalRCollimator::update(), OpalSlit::update(), OpalFlexibleCollimator::update(), OpalPepperPot::update(), OpalCCollimator::update(), OpalRBend3D::update(), OpalDrift::update(), OpalQuadrupole::update(), and OpalVacuum::update().

|
virtual |
Check the PARTICLEMATTERINTERACTION data.
Reimplemented from Object.
Definition at line 119 of file ParticleMatterInteraction.cpp.
References update().

|
static |
Find named PARTICLEMATTERINTERACTION.
Definition at line 124 of file ParticleMatterInteraction.cpp.
References OpalData::find(), and OpalData::getInstance().
Referenced by OpalRBend::update(), OpalSBend::update(), OpalDegrader::update(), OpalECollimator::update(), OpalRCollimator::update(), OpalSlit::update(), OpalFlexibleCollimator::update(), OpalPepperPot::update(), OpalCCollimator::update(), OpalRBend3D::update(), OpalDrift::update(), OpalQuadrupole::update(), and OpalVacuum::update().

|
private |
Definition at line 141 of file ParticleMatterInteraction.cpp.
References BEAMSTRIPPING, Attributes::getString(), Object::itsAttr, SCATTERING, type, Attrib::Distribution::TYPE, and type_m.
Referenced by initParticleMatterInteractionHandler().

| void ParticleMatterInteraction::initParticleMatterInteractionHandler | ( | ElementBase & | element | ) |
Definition at line 156 of file ParticleMatterInteraction.cpp.
References BEAMSTRIPPING, endl(), Attributes::getBool(), getInteractionType(), Object::getOpalName(), Attributes::getReal(), Attributes::getString(), handler_m, Object::itsAttr, SCATTERING, and type_m.
Referenced by OpalRBend::update(), OpalSBend::update(), OpalDegrader::update(), OpalECollimator::update(), OpalRCollimator::update(), OpalSlit::update(), OpalFlexibleCollimator::update(), OpalPepperPot::update(), OpalCCollimator::update(), OpalRBend3D::update(), OpalDrift::update(), OpalQuadrupole::update(), and OpalVacuum::update().

|
private |
|
virtual |
Print the object.
Reimplemented from Object.
Definition at line 184 of file ParticleMatterInteraction.cpp.
References Util::boolToUpperString(), endl(), Attributes::getBool(), ParticleMatterInteractionHandler::getElement(), ElementBase::getName(), Object::getOpalName(), Attributes::getReal(), Attributes::getString(), handler_m, Object::itsAttr, SCATTERING, Attrib::Distribution::TYPE, and type_m.
Referenced by operator<<().

|
virtual |
Update the PARTICLEMATTERINTERACTION data.
Reimplemented from Object.
Definition at line 136 of file ParticleMatterInteraction.cpp.
References Object::getOpalName(), and Object::setOpalName().
Referenced by execute(), and ParticleMatterInteraction().

| void ParticleMatterInteraction::updateElement | ( | ElementBase * | element | ) |
Definition at line 180 of file ParticleMatterInteraction.cpp.
References handler_m, and ParticleMatterInteractionHandler::updateElement().

| ParticleMatterInteractionHandler* ParticleMatterInteraction::handler_m |
Definition at line 63 of file ParticleMatterInteraction.h.
Referenced by initParticleMatterInteractionHandler(), print(), OpalSBend::update(), OpalRBend::update(), OpalDegrader::update(), OpalECollimator::update(), OpalRCollimator::update(), OpalSlit::update(), OpalFlexibleCollimator::update(), OpalPepperPot::update(), OpalCCollimator::update(), OpalRBend3D::update(), OpalDrift::update(), OpalQuadrupole::update(), OpalVacuum::update(), updateElement(), and ~ParticleMatterInteraction().
|
private |
Definition at line 80 of file ParticleMatterInteraction.h.
Referenced by getInteractionType(), initParticleMatterInteractionHandler(), and print().
1.8.5