OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
RangeSelector Class Reference

#include <RangeSelector.h>

Inheritance diagram for RangeSelector:
Inheritance graph
Collaboration diagram for RangeSelector:
Collaboration graph

Public Member Functions

 RangeSelector (const Beamline &, const RangeRep &range)
 Constructor.
 
virtual ~RangeSelector ()
 
virtual void execute ()
 Execute the algorithm.
 
virtual void visitFlaggedElmPtr (const FlaggedElmPtr &)
 Apply the visitor to an FlaggedElmPtr.
 
void visitComponent (const Component &) override
 Apply the algorithm to an arbitrary component.
 
void visitBeamline (const Beamline &) override
 Apply the algorithm to a beam line.
 
void visitConstantEFieldCavity (const ConstantEFieldCavity &) override
 Apply the algorithm to a constant E-field cavity element.
 
void visitDrift (const Drift &) override
 Apply the algorithm to a drift space.
 
void visitLaser (const Laser &) override
 Apply the algorithm to a laser.
 
void visitMarker (const Marker &) override
 Apply the algorithm to a marker.
 
void visitMonitor (const Monitor &) override
 Apply the algorithm to a beam position monitor.
 
void visitMultipole (const Multipole &) override
 Apply the algorithm to a multipole.
 
void visitMultipoleT (const MultipoleT &) override
 Apply the algorithm to an arbitrary multipole.
 
void visitRBend (const RBend &) override
 Apply the algorithm to a rectangular bend.
 
void visitRing (const Ring &) override
 Apply the algorithm to a Ring.
 
void visitSBend (const SBend &) override
 Apply the algorithm to a sector bend.
 
void visitRFCavity (const RFCavity &) override
 Apply the algorithm to a RF cavity.
 
void visitSolenoid (const Solenoid &) override
 Apply the algorithm to a Solenoid.
 
void visitTravelingWave (const TravelingWave &) override
 Apply the algorithm to a traveling wave.
 
void visitScalingFFAMagnet (const ScalingFFAMagnet &spiral) override
 Apply the algorithm to a scaling FFA magnet.
 
void visitVerticalFFAMagnet (const VerticalFFAMagnet &) override
 Apply the algorithm to a vertical FFA magnet.
 
void visitVariableRFCavity (const VariableRFCavity &) override
 Apply the algorithm to a variable RF cavity.
 
void visitProbe (const Probe &prob) override
 Apply the algorithm to a Probe.
 

Protected Member Functions

virtual void handleBeamline (const FlaggedElmPtr &)
 The operation to be done for beamlines.
 
virtual void handleElement (const FlaggedElmPtr &)
 The operation to be done for elements.
 

Protected Attributes

RangeRep itsRange
 Working data for range.
 
const BeamlineitsLine
 
bool back_beam
 
bool back_track
 
bool back_path
 
double flip_B
 
double flip_s
 

Private Member Functions

 RangeSelector ()
 
 RangeSelector (const RangeSelector &)
 
void operator= (const RangeSelector &)
 
virtual void applyDefault (const ElementBase &)
 

Private Attributes

bool local_flip
 

Detailed Description

Definition at line 28 of file RangeSelector.h.

Constructor & Destructor Documentation

◆ RangeSelector() [1/3]

RangeSelector::RangeSelector ( const Beamline beamline,
const RangeRep range 
)

Constructor.

Definition at line 30 of file RangeSelector.cpp.

◆ ~RangeSelector()

RangeSelector::~RangeSelector ( )
virtual

Definition at line 33 of file RangeSelector.cpp.

◆ RangeSelector() [2/3]

RangeSelector::RangeSelector ( )
private

◆ RangeSelector() [3/3]

RangeSelector::RangeSelector ( const RangeSelector )
private

Member Function Documentation

◆ applyDefault()

◆ execute()

void RangeSelector::execute ( )
virtual

Execute the algorithm.

Reimplemented from DefaultVisitor.

Reimplemented in Selector.

Definition at line 35 of file RangeSelector.cpp.

References DefaultVisitor::execute(), RangeRep::initialize(), and itsRange.

Referenced by Selector::execute().

Here is the call graph for this function:

◆ handleBeamline()

void RangeSelector::handleBeamline ( const FlaggedElmPtr fep)
protectedvirtual

The operation to be done for beamlines.

Definition at line 57 of file RangeSelector.cpp.

References DefaultVisitor::visitFlaggedElmPtr().

Referenced by visitFlaggedElmPtr().

Here is the call graph for this function:

◆ handleElement()

void RangeSelector::handleElement ( const FlaggedElmPtr fep)
protectedvirtual

The operation to be done for elements.

Reimplemented in Selector.

Definition at line 61 of file RangeSelector.cpp.

References RangeRep::isActive(), itsRange, and DefaultVisitor::visitFlaggedElmPtr().

Referenced by visitFlaggedElmPtr().

Here is the call graph for this function:

◆ operator=()

void RangeSelector::operator= ( const RangeSelector )
private

◆ visitBeamline()

void DefaultVisitor::visitBeamline ( const Beamline bl)
overridevirtualinherited

Apply the algorithm to a beam line.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 97 of file DefaultVisitor.cpp.

References Beamline::iterate(), and DefaultVisitor::local_flip.

Here is the call graph for this function:

◆ visitComponent()

void DefaultVisitor::visitComponent ( const Component )
overridevirtualinherited

Apply the algorithm to an arbitrary component.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker, and Tracker.

Definition at line 59 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitConstantEFieldCavity()

void DefaultVisitor::visitConstantEFieldCavity ( const ConstantEFieldCavity cav)
overridevirtualinherited

Apply the algorithm to a constant E-field cavity element.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 61 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitDrift()

void DefaultVisitor::visitDrift ( const Drift drf)
overridevirtualinherited

Apply the algorithm to a drift space.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 65 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitFlaggedElmPtr()

void RangeSelector::visitFlaggedElmPtr ( const FlaggedElmPtr fep)
virtual

Apply the visitor to an FlaggedElmPtr.

Reimplemented from DefaultVisitor.

Definition at line 40 of file RangeSelector.cpp.

References RangeRep::enter(), ElmPtr::getElement(), handleBeamline(), handleElement(), itsRange, and RangeRep::leave().

Here is the call graph for this function:

◆ visitLaser()

void DefaultVisitor::visitLaser ( const Laser laser)
overridevirtualinherited

Apply the algorithm to a laser.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 67 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitMarker()

void DefaultVisitor::visitMarker ( const Marker mark)
overridevirtualinherited

Apply the algorithm to a marker.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 69 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitMonitor()

void DefaultVisitor::visitMonitor ( const Monitor mon)
overridevirtualinherited

Apply the algorithm to a beam position monitor.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 71 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitMultipole()

void DefaultVisitor::visitMultipole ( const Multipole mult)
overridevirtualinherited

Apply the algorithm to a multipole.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 73 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitMultipoleT()

void DefaultVisitor::visitMultipoleT ( const MultipoleT multT)
overridevirtualinherited

Apply the algorithm to an arbitrary multipole.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 75 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitProbe()

void DefaultVisitor::visitProbe ( const Probe prob)
overridevirtualinherited

Apply the algorithm to a Probe.

Implements BeamlineVisitor.

Definition at line 95 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitRBend()

void DefaultVisitor::visitRBend ( const RBend bend)
overridevirtualinherited

Apply the algorithm to a rectangular bend.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 77 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitRFCavity()

void DefaultVisitor::visitRFCavity ( const RFCavity cav)
overridevirtualinherited

Apply the algorithm to a RF cavity.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 81 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitRing()

void DefaultVisitor::visitRing ( const Ring ring)
overridevirtualinherited

Apply the algorithm to a Ring.

Implements BeamlineVisitor.

Definition at line 79 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitSBend()

void DefaultVisitor::visitSBend ( const SBend bend)
overridevirtualinherited

Apply the algorithm to a sector bend.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 83 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitScalingFFAMagnet()

void DefaultVisitor::visitScalingFFAMagnet ( const ScalingFFAMagnet spiral)
overridevirtualinherited

Apply the algorithm to a scaling FFA magnet.

Implements BeamlineVisitor.

Definition at line 89 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitSolenoid()

void DefaultVisitor::visitSolenoid ( const Solenoid so)
overridevirtualinherited

Apply the algorithm to a Solenoid.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 85 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitTravelingWave()

void DefaultVisitor::visitTravelingWave ( const TravelingWave trw)
overridevirtualinherited

Apply the algorithm to a traveling wave.

Implements BeamlineVisitor.

Reimplemented in ParallelTracker.

Definition at line 87 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitVariableRFCavity()

void DefaultVisitor::visitVariableRFCavity ( const VariableRFCavity cavity)
overridevirtualinherited

Apply the algorithm to a variable RF cavity.

Implements BeamlineVisitor.

Definition at line 93 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

◆ visitVerticalFFAMagnet()

void DefaultVisitor::visitVerticalFFAMagnet ( const VerticalFFAMagnet mag)
overridevirtualinherited

Apply the algorithm to a vertical FFA magnet.

Implements BeamlineVisitor.

Definition at line 91 of file DefaultVisitor.cpp.

References DefaultVisitor::applyDefault().

Here is the call graph for this function:

Member Data Documentation

◆ back_beam

bool DefaultVisitor::back_beam
protectedinherited

◆ back_path

bool DefaultVisitor::back_path
protectedinherited

Definition at line 112 of file DefaultVisitor.h.

Referenced by DefaultVisitor::DefaultVisitor().

◆ back_track

bool DefaultVisitor::back_track
protectedinherited

◆ flip_B

double DefaultVisitor::flip_B
protectedinherited

Definition at line 115 of file DefaultVisitor.h.

Referenced by DefaultVisitor::DefaultVisitor().

◆ flip_s

double DefaultVisitor::flip_s
protectedinherited

Definition at line 116 of file DefaultVisitor.h.

Referenced by DefaultVisitor::DefaultVisitor().

◆ itsLine

const Beamline& DefaultVisitor::itsLine
protectedinherited

Definition at line 107 of file DefaultVisitor.h.

Referenced by DefaultVisitor::execute().

◆ itsRange

RangeRep RangeSelector::itsRange
protected

Working data for range.

Definition at line 51 of file RangeSelector.h.

Referenced by execute(), handleElement(), Selector::handleElement(), and visitFlaggedElmPtr().

◆ local_flip

bool DefaultVisitor::local_flip
privateinherited

The documentation for this class was generated from the following files: