|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
#include <SpecificElementVisitor.h>
Public Types | |
| typedef std::list< const ELEM * > | ElementList_t |
| typedef ElementList_t::iterator | iterator_t |
| typedef ElementList_t::const_iterator | const_iterator_t |
| typedef ElementList_t::reference | reference_t |
| typedef ElementList_t::const_reference | const_reference_t |
Public Member Functions | |
| SpecificElementVisitor (const Beamline &beamline) | |
| virtual void | execute () |
| Execute the algorithm on the attached beam line. | |
| virtual void | visitBeamline (const Beamline &) |
| Apply the algorithm to a beam line. | |
| virtual void | visitCCollimator (const CCollimator &) |
| Apply the algorithm to a collimator. | |
| virtual void | visitComponent (const Component &) |
| Apply the algorithm to an arbitrary component. | |
| virtual void | visitCorrector (const Corrector &) |
| Apply the algorithm to a closed orbit corrector. | |
| virtual void | visitCyclotron (const Cyclotron &) |
| Apply the algorithm to an cyclotron. | |
| virtual void | visitDegrader (const Degrader &) |
| Apply the algorithm to a degrader. | |
| virtual void | visitDrift (const Drift &) |
| Apply the algorithm to a drift. | |
| virtual void | visitFlaggedElmPtr (const FlaggedElmPtr &) |
| Apply the algorithm to a FlaggedElmPtr. | |
| virtual void | visitFlexibleCollimator (const FlexibleCollimator &) |
| Apply the algorithm to a flexible collimator. | |
| 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 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 | visitOutputPlane (const OutputPlane &) |
| Apply the algorithm to an output plane. | |
| virtual void | visitProbe (const Probe &prob) |
| Apply the algorithm to a probe. | |
| virtual void | visitRBend (const RBend &) |
| Apply the algorithm to a rectangular bend. | |
| virtual void | visitRBend3D (const RBend3D &) |
| Apply the algorithm to a rectangular bend. | |
| virtual void | visitRFCavity (const RFCavity &) |
| Apply the algorithm to a RF cavity. | |
| virtual void | visitRing (const Ring &) |
| Apply the algorithm to a ring. | |
| virtual void | visitSBend (const SBend &) |
| Apply the algorithm to a sector bend. | |
| virtual void | visitSBend3D (const SBend3D &) |
| Apply the algorithm to a sector bend with 3D field map. | |
| virtual void | visitScalingFFAMagnet (const ScalingFFAMagnet &) |
| Apply the algorithm to a scaling FFA magnet. | |
| virtual void | visitSeptum (const Septum &) |
| Apply the algorithm to a septum. | |
| virtual void | visitSolenoid (const Solenoid &) |
| Apply the algorithm to a solenoid. | |
| virtual void | visitSource (const Source &) |
| Apply the algorithm to a source. | |
| virtual void | visitStripper (const Stripper &) |
| Apply the algorithm to a particle stripper. | |
| virtual void | visitTravelingWave (const TravelingWave &) |
| Apply the algorithm to a traveling wave. | |
| virtual void | visitVacuum (const Vacuum &) |
| Apply the algorithm to a vacuum space. | |
| virtual void | visitVariableRFCavity (const VariableRFCavity &vcav) |
| Apply the algorithm to a variable RF cavity. | |
| virtual void | visitVariableRFCavityFringeField (const VariableRFCavityFringeField &vcav) |
| Apply the algorithm to a variable RF cavity with Fringe Field.. | |
| virtual void | visitVerticalFFAMagnet (const VerticalFFAMagnet &) |
| Apply the algorithm to a vertical FFA magnet. | |
| size_t | size () const |
| iterator_t | begin () |
| const_iterator_t | begin () const |
| iterator_t | end () |
| const_iterator_t | end () const |
| reference_t | front () |
| const_reference_t | front () const |
Private Attributes | |
| ElementList_t | allElementsOfTypeE |
Definition at line 83 of file SpecificElementVisitor.h.
| typedef ElementList_t::const_iterator SpecificElementVisitor< ELEM >::const_iterator_t |
Definition at line 205 of file SpecificElementVisitor.h.
| typedef ElementList_t::const_reference SpecificElementVisitor< ELEM >::const_reference_t |
Definition at line 208 of file SpecificElementVisitor.h.
| typedef std::list<const ELEM*> SpecificElementVisitor< ELEM >::ElementList_t |
Definition at line 203 of file SpecificElementVisitor.h.
| typedef ElementList_t::iterator SpecificElementVisitor< ELEM >::iterator_t |
Definition at line 204 of file SpecificElementVisitor.h.
| typedef ElementList_t::reference SpecificElementVisitor< ELEM >::reference_t |
Definition at line 207 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::SpecificElementVisitor | ( | const Beamline & | beamline | ) |
Definition at line 224 of file SpecificElementVisitor.h.
References allElementsOfTypeE, BeamlineVisitor::BeamlineVisitor(), and Beamline::iterate().
| SpecificElementVisitor< ELEM >::iterator_t SpecificElementVisitor< ELEM >::begin | ( | ) |
Definition at line 427 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
| SpecificElementVisitor< ELEM >::const_iterator_t SpecificElementVisitor< ELEM >::begin | ( | ) | const |
Definition at line 432 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
| SpecificElementVisitor< ELEM >::iterator_t SpecificElementVisitor< ELEM >::end | ( | ) |
Definition at line 437 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
| SpecificElementVisitor< ELEM >::const_iterator_t SpecificElementVisitor< ELEM >::end | ( | ) | const |
Definition at line 442 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
|
virtual |
Execute the algorithm on the attached beam line.
Implements BeamlineVisitor.
Definition at line 232 of file SpecificElementVisitor.h.
Referenced by Distribution::createMatchedGaussDistribution().
| SpecificElementVisitor< ELEM >::reference_t SpecificElementVisitor< ELEM >::front | ( | ) |
Definition at line 447 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
Referenced by Distribution::createMatchedGaussDistribution().
| SpecificElementVisitor< ELEM >::const_reference_t SpecificElementVisitor< ELEM >::front | ( | ) | const |
Definition at line 452 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
| size_t SpecificElementVisitor< ELEM >::size | ( | ) | const |
Definition at line 422 of file SpecificElementVisitor.h.
References allElementsOfTypeE.
Referenced by Distribution::createMatchedGaussDistribution().
|
virtual |
Apply the algorithm to a beam line.
Implements BeamlineVisitor.
Definition at line 236 of file SpecificElementVisitor.h.
References Beamline::iterate().
|
virtual |
Apply the algorithm to a collimator.
Implements BeamlineVisitor.
Definition at line 241 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an arbitrary component.
Implements BeamlineVisitor.
Definition at line 246 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a closed orbit corrector.
Implements BeamlineVisitor.
Definition at line 251 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an cyclotron.
Implements BeamlineVisitor.
Definition at line 256 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a degrader.
Implements BeamlineVisitor.
Definition at line 261 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a drift.
Implements BeamlineVisitor.
Definition at line 266 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a FlaggedElmPtr.
Implements BeamlineVisitor.
Definition at line 271 of file SpecificElementVisitor.h.
References ElementBase::accept(), and ElmPtr::getElement().
|
virtual |
Apply the algorithm to a flexible collimator.
Implements BeamlineVisitor.
Definition at line 277 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a marker.
Implements BeamlineVisitor.
Definition at line 282 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a beam position monitor.
Implements BeamlineVisitor.
Definition at line 287 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a multipole.
Implements BeamlineVisitor.
Definition at line 292 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an arbitrary multipole.
Implements BeamlineVisitor.
Definition at line 297 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an arbitrary curved multipole of constant radius.
Definition at line 307 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an arbitrary curved multipole of variable radius.
Definition at line 312 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an arbitrary straight multipole.
Definition at line 302 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an offset (placement).
Implements BeamlineVisitor.
Definition at line 317 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to an output plane.
Implements BeamlineVisitor.
Definition at line 322 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a probe.
Implements BeamlineVisitor.
Definition at line 327 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a rectangular bend.
Implements BeamlineVisitor.
Definition at line 332 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a rectangular bend.
Reimplemented from BeamlineVisitor.
Definition at line 337 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a RF cavity.
Implements BeamlineVisitor.
Definition at line 342 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a ring.
Implements BeamlineVisitor.
Definition at line 347 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a sector bend.
Implements BeamlineVisitor.
Definition at line 352 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a sector bend with 3D field map.
Implements BeamlineVisitor.
Definition at line 357 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a scaling FFA magnet.
Implements BeamlineVisitor.
Definition at line 362 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a septum.
Implements BeamlineVisitor.
Definition at line 367 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a solenoid.
Implements BeamlineVisitor.
Definition at line 372 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a source.
Implements BeamlineVisitor.
Definition at line 377 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a particle stripper.
Implements BeamlineVisitor.
Definition at line 382 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a traveling wave.
Implements BeamlineVisitor.
Definition at line 387 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a vacuum space.
Implements BeamlineVisitor.
Definition at line 399 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a variable RF cavity.
Implements BeamlineVisitor.
Definition at line 404 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a variable RF cavity with Fringe Field..
Implements BeamlineVisitor.
Definition at line 410 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
virtual |
Apply the algorithm to a vertical FFA magnet.
Implements BeamlineVisitor.
Definition at line 417 of file SpecificElementVisitor.h.
References allElementsOfTypeE, and CastsTrait< ELEM1, ELEM2 >::apply().
|
private |
Definition at line 220 of file SpecificElementVisitor.h.
Referenced by begin(), begin(), end(), end(), front(), front(), size(), SpecificElementVisitor(), visitCCollimator(), visitComponent(), visitCorrector(), visitCyclotron(), visitDegrader(), visitDrift(), visitFlexibleCollimator(), visitMarker(), visitMonitor(), visitMultipole(), visitMultipoleT(), visitMultipoleTCurvedConstRadius(), visitMultipoleTCurvedVarRadius(), visitMultipoleTStraight(), visitOffset(), visitOutputPlane(), visitProbe(), visitRBend(), visitRBend3D(), visitRFCavity(), visitRing(), visitSBend(), visitSBend3D(), visitScalingFFAMagnet(), visitSeptum(), visitSolenoid(), visitSource(), visitStripper(), visitTravelingWave(), visitVacuum(), visitVariableRFCavity(), visitVariableRFCavityFringeField(), and visitVerticalFFAMagnet().