|
OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
|
#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 | visitConstantEFieldCavity (const ConstantEFieldCavity &) |
| Apply the algorithm to a constant E-field cavity element. | |
| virtual void | visitDrift (const Drift &) |
| Apply the algorithm to a drift. | |
| virtual void | visitLaser (const Laser &) |
| Apply the algorithm to a laser. | |
| 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 | 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 81 of file SpecificElementVisitor.h.
| typedef ElementList_t::const_iterator SpecificElementVisitor< ELEM >::const_iterator_t |
Definition at line 201 of file SpecificElementVisitor.h.
| typedef ElementList_t::const_reference SpecificElementVisitor< ELEM >::const_reference_t |
Definition at line 204 of file SpecificElementVisitor.h.
| typedef std::list<const ELEM*> SpecificElementVisitor< ELEM >::ElementList_t |
Definition at line 199 of file SpecificElementVisitor.h.
| typedef ElementList_t::iterator SpecificElementVisitor< ELEM >::iterator_t |
Definition at line 200 of file SpecificElementVisitor.h.
| typedef ElementList_t::reference SpecificElementVisitor< ELEM >::reference_t |
Definition at line 203 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::SpecificElementVisitor | ( | const Beamline & | beamline | ) |
Definition at line 220 of file SpecificElementVisitor.h.
References Beamline::iterate().

| SpecificElementVisitor< ELEM >::iterator_t SpecificElementVisitor< ELEM >::begin | ( | ) |
Definition at line 420 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::const_iterator_t SpecificElementVisitor< ELEM >::begin | ( | ) | const |
Definition at line 425 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::iterator_t SpecificElementVisitor< ELEM >::end | ( | ) |
Definition at line 431 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::const_iterator_t SpecificElementVisitor< ELEM >::end | ( | ) | const |
Definition at line 436 of file SpecificElementVisitor.h.
|
virtual |
Execute the algorithm on the attached beam line.
Implements BeamlineVisitor.
Definition at line 226 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::reference_t SpecificElementVisitor< ELEM >::front | ( | ) |
Definition at line 441 of file SpecificElementVisitor.h.
| SpecificElementVisitor< ELEM >::const_reference_t SpecificElementVisitor< ELEM >::front | ( | ) | const |
Definition at line 446 of file SpecificElementVisitor.h.
| size_t SpecificElementVisitor< ELEM >::size | ( | ) | const |
Definition at line 415 of file SpecificElementVisitor.h.
|
virtual |
Apply the algorithm to a beam line.
Implements BeamlineVisitor.
Definition at line 229 of file SpecificElementVisitor.h.
References Beamline::iterate().

|
virtual |
Apply the algorithm to a collimator.
Definition at line 234 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to an arbitrary component.
Implements BeamlineVisitor.
Definition at line 239 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a constant E-field cavity element.
Implements BeamlineVisitor.
Definition at line 259 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a closed orbit corrector.
Definition at line 244 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to an cyclotron.
Definition at line 249 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a degrader.
Definition at line 254 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a drift.
Implements BeamlineVisitor.
Definition at line 264 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a FlaggedElmPtr.
Implements BeamlineVisitor.
Definition at line 274 of file SpecificElementVisitor.h.
References ElementBase::accept(), and ElmPtr::getElement().

|
virtual |
Apply the algorithm to a flexible collimator.
Definition at line 280 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a laser.
Implements BeamlineVisitor.
Definition at line 269 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a marker.
Implements BeamlineVisitor.
Definition at line 285 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a beam position monitor.
Implements BeamlineVisitor.
Definition at line 290 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a multipole.
Implements BeamlineVisitor.
Definition at line 295 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to an arbitrary multipole.
Implements BeamlineVisitor.
Definition at line 300 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to an arbitrary curved multipole of constant radius.
Definition at line 310 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to an arbitrary curved multipole of variable radius.
Definition at line 316 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to an arbitrary straight multipole.
Definition at line 305 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a probe.
Implements BeamlineVisitor.
Definition at line 322 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a rectangular bend.
Implements BeamlineVisitor.
Definition at line 327 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a rectangular bend.
Definition at line 332 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a RF cavity.
Implements BeamlineVisitor.
Definition at line 337 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a ring.
Implements BeamlineVisitor.
Definition at line 342 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a sector bend.
Implements BeamlineVisitor.
Definition at line 347 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a sector bend with 3D field map.
Definition at line 352 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a scaling FFA magnet.
Implements BeamlineVisitor.
Definition at line 357 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a septum.
Definition at line 362 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a solenoid.
Implements BeamlineVisitor.
Definition at line 367 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a source.
Definition at line 372 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a particle stripper.
Definition at line 377 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a traveling wave.
Implements BeamlineVisitor.
Definition at line 382 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a vacuum space.
Definition at line 394 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a variable RF cavity.
Implements BeamlineVisitor.
Definition at line 399 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a variable RF cavity with Fringe Field..
Definition at line 404 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
virtual |
Apply the algorithm to a vertical FFA magnet.
Implements BeamlineVisitor.
Definition at line 410 of file SpecificElementVisitor.h.
References CastsTrait< ELEM1, ELEM2 >::apply().

|
private |
Definition at line 216 of file SpecificElementVisitor.h.