|
OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
|
#include <Selector.h>
Public Member Functions | |
| Selector (const Beamline &, const RangeRep &range, const std::string &cName, const std::string &tName, const std::string &pString) | |
| Constructor. | |
| virtual | ~Selector () |
| virtual void | execute () |
| Execute the selection. | |
| int | getCount () const |
| Return the count of selected elements. | |
| virtual void | visitFlaggedElmPtr (const FlaggedElmPtr &) |
| Apply the visitor to an FlaggedElmPtr. | |
| virtual void | visitComponent (const Component &) |
| Apply the algorithm to an arbitrary component. | |
| virtual void | visitBeamline (const Beamline &) |
| Apply the algorithm to a beam line. | |
| virtual void | visitDrift (const Drift &) |
| Apply the algorithm to a drift space. | |
| virtual void | visitMarker (const Marker &) |
| Apply the algorithm to a marker. | |
| virtual void | visitMonitor (const Monitor &) |
| Apply the algorithm to a beam position monitor. | |
| virtual void | visitMultipole (const Multipole &) |
| Apply the algorithm to a multipole. | |
| virtual void | visitMultipoleT (const MultipoleT &) |
| Apply the algorithm to to an arbitrary multipole. | |
| virtual void | visitMultipoleTStraight (const MultipoleTStraight &) |
| Apply the algorithm to an arbitrary straight multipole. | |
| virtual void | visitMultipoleTCurvedConstRadius (const MultipoleTCurvedConstRadius &) |
| Apply the algorithm to an arbitrary curved multipole of constant radius. | |
| virtual void | visitMultipoleTCurvedVarRadius (const MultipoleTCurvedVarRadius &) |
| Apply the algorithm to an arbitrary curved multipole of variable radius. | |
| virtual void | visitOffset (const Offset &) |
| Apply the algorithm to an offset (placement). | |
| virtual void | visitRing (const Ring &) |
| Apply the algorithm to a Ring. | |
| virtual void | visitRFCavity (const RFCavity &) |
| Apply the algorithm to a RF cavity. | |
| virtual void | visitSolenoid (const Solenoid &) |
| Apply the algorithm to a Solenoid. | |
| virtual void | visitTravelingWave (const TravelingWave &) |
| Apply the algorithm to a traveling wave. | |
| virtual void | visitScalingFFAMagnet (const ScalingFFAMagnet &spiral) |
| Apply the algorithm to a scaling FFA magnet. | |
| virtual void | visitVerticalFFAMagnet (const VerticalFFAMagnet &) |
| Apply the algorithm to a vertical FFA magnet. | |
| virtual void | visitProbe (const Probe &prob) |
| Apply the algorithm to a Probe. | |
Protected Member Functions | |
| virtual void | handleElement (const FlaggedElmPtr &) |
| The operation to be done for elements. | |
| virtual void | handleBeamline (const FlaggedElmPtr &) |
| The operation to be done for beamlines. | |
Protected Attributes | |
| RangeRep | itsRange |
| Working data for range. | |
| const Beamline & | itsLine |
| bool | back_beam |
| bool | back_track |
| bool | back_path |
| double | flip_B |
| double | flip_s |
Private Member Functions | |
| Selector () | |
| Selector (const Selector &) | |
| void | operator= (const Selector &) |
| virtual void | applyDefault (const ElementBase &) |
Private Attributes | |
| const Element * | itsClass |
| const std::string | itsType |
| const RegularExpression * | itsPattern |
| int | itsCount |
| bool | local_flip |
Definition at line 28 of file Selector.h.
| Selector::Selector | ( | const Beamline & | bl, |
| const RangeRep & | range, | ||
| const std::string & | cName, | ||
| const std::string & | tName, | ||
| const std::string & | pString ) |
Constructor.
Definition at line 30 of file Selector.cpp.
References Element::find(), itsClass, itsCount, itsPattern, itsType, and RangeSelector::RangeSelector().
Referenced by operator=(), and Selector().
|
virtual |
Definition at line 48 of file Selector.cpp.
References itsPattern.
|
private |
|
private |
|
privatevirtualinherited |
Definition at line 146 of file DefaultVisitor.cpp.
Referenced by visitComponent(), visitDrift(), visitMarker(), visitMonitor(), visitMultipole(), visitMultipoleT(), visitMultipoleTCurvedConstRadius(), visitMultipoleTCurvedVarRadius(), visitMultipoleTStraight(), visitOffset(), visitProbe(), visitRFCavity(), visitRing(), visitScalingFFAMagnet(), visitSolenoid(), visitTravelingWave(), and visitVerticalFFAMagnet().
|
virtual |
Execute the selection.
Reimplemented from RangeSelector.
Definition at line 53 of file Selector.cpp.
References RangeSelector::execute(), and itsCount.
Referenced by Select::select().
| int Selector::getCount | ( | ) | const |
Return the count of selected elements.
Definition at line 86 of file Selector.cpp.
References itsCount.
Referenced by Select::select().
|
protectedvirtualinherited |
The operation to be done for beamlines.
Definition at line 64 of file RangeSelector.cpp.
References DefaultVisitor::visitFlaggedElmPtr().
Referenced by visitFlaggedElmPtr().
|
protectedvirtual |
The operation to be done for elements.
Reimplemented from RangeSelector.
Definition at line 59 of file Selector.cpp.
References Element::find(), ElmPtr::getElement(), ElementBase::getName(), OpalElement::getTypeName(), Object::isTreeMember(), itsClass, itsCount, itsPattern, RangeSelector::itsRange, itsType, and FlaggedElmPtr::setSelectionFlag().
|
private |
|
virtualinherited |
Apply the algorithm to a beam line.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 130 of file DefaultVisitor.cpp.
References Beamline::iterate(), and local_flip.
|
virtualinherited |
Apply the algorithm to an arbitrary component.
Implements BeamlineVisitor.
Reimplemented in Tracker.
Definition at line 61 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a drift space.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 65 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the visitor to an FlaggedElmPtr.
Reimplemented from DefaultVisitor.
Definition at line 46 of file RangeSelector.cpp.
References ElmPtr::getElement(), handleBeamline(), handleElement(), and itsRange.
|
virtualinherited |
Apply the algorithm to a marker.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 69 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a beam position monitor.
Implements BeamlineVisitor.
Definition at line 73 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a multipole.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 77 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to to an arbitrary multipole.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 81 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to an arbitrary curved multipole of constant radius.
Implements BeamlineVisitor.
Definition at line 89 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to an arbitrary curved multipole of variable radius.
Implements BeamlineVisitor.
Definition at line 94 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to an arbitrary straight multipole.
Implements BeamlineVisitor.
Definition at line 85 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to an offset (placement).
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 98 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a Probe.
Implements BeamlineVisitor.
Definition at line 126 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a RF cavity.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 106 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a Ring.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 102 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a scaling FFA magnet.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 118 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a Solenoid.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 110 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a traveling wave.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 114 of file DefaultVisitor.cpp.
References applyDefault().
|
virtualinherited |
Apply the algorithm to a vertical FFA magnet.
Implements BeamlineVisitor.
Reimplemented in ParallelTracker.
Definition at line 122 of file DefaultVisitor.cpp.
References applyDefault().
|
protectedinherited |
Definition at line 107 of file DefaultVisitor.h.
Referenced by DefaultVisitor(), execute(), and Tracker::visitComponent().
|
protectedinherited |
Definition at line 109 of file DefaultVisitor.h.
Referenced by DefaultVisitor().
|
protectedinherited |
Definition at line 108 of file DefaultVisitor.h.
Referenced by DefaultVisitor(), execute(), ParallelTracker::execute(), ParallelTracker::findStartPosition(), ParallelTracker::updateReferenceParticle(), and Tracker::visitComponent().
|
protectedinherited |
Definition at line 112 of file DefaultVisitor.h.
Referenced by DefaultVisitor().
|
protectedinherited |
Definition at line 113 of file DefaultVisitor.h.
Referenced by DefaultVisitor().
|
private |
Definition at line 60 of file Selector.h.
Referenced by handleElement(), and Selector().
|
private |
Definition at line 69 of file Selector.h.
Referenced by execute(), getCount(), handleElement(), and Selector().
|
protectedinherited |
Definition at line 104 of file DefaultVisitor.h.
Referenced by DefaultVisitor(), and execute().
|
private |
Definition at line 66 of file Selector.h.
Referenced by handleElement(), Selector(), and ~Selector().
|
protectedinherited |
Working data for range.
Definition at line 55 of file RangeSelector.h.
Referenced by execute(), handleElement(), Selector::handleElement(), RangeSelector(), and visitFlaggedElmPtr().
|
private |
Definition at line 63 of file Selector.h.
Referenced by handleElement(), and Selector().
|
privateinherited |
Definition at line 127 of file DefaultVisitor.h.
Referenced by DefaultVisitor(), execute(), visitBeamline(), and visitFlaggedElmPtr().