OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Surveyor Class Reference

Survey algorithm. More...

#include <Surveyor.h>

Inheritance diagram for Surveyor:
Inheritance graph
[legend]
Collaboration diagram for Surveyor:
Collaboration graph
[legend]

Public Member Functions

 Surveyor (Beamline &bl, bool revTrack)
 Constructor. More...
 
 Surveyor (Beamline &bl, double x0, double y0, double z0, double theta0, double phi0, double psi0, bool revTrack=false)
 Constructor. More...
 
 Surveyor (Beamline &bl, const Euclid3D &init, bool revTrack)
 Constructor. More...
 
virtual ~Surveyor ()
 
void getMap (Euclid3D &) const
 Return accumulated map. More...
 
void setMap (const Euclid3D &)
 Reset accumulated map for restart. More...
 
virtual void visitPatch (const Patch &pat)
 Apply the algorithm to a patch. More...
 
- Public Member Functions inherited from DefaultVisitor
 DefaultVisitor (const Beamline &beamline, bool backBeam, bool backTrack)
 Constructor. More...
 
virtual ~DefaultVisitor ()=0
 
virtual void execute ()
 Apply the algorithm to the top-level beamline. More...
 
virtual void visitBeamBeam (const BeamBeam &)
 Apply the algorithm to a beam-beam. More...
 
virtual void visitBeamStripping (const BeamStripping &)
 Apply the algorithm to a beam stripping. More...
 
virtual void visitCCollimator (const CCollimator &)
 Apply the algorithm to a collimator. More...
 
virtual void visitComponent (const Component &)
 Apply the algorithm to an arbitrary component. More...
 
virtual void visitCyclotron (const Cyclotron &)
 Apply the algorithm to an cyclotron. More...
 
virtual void visitRing (const Ring &)
 Apply the algorithm to an opal ring.. More...
 
virtual void visitCorrector (const Corrector &)
 Apply the algorithm to a corrector. More...
 
virtual void visitDegrader (const Degrader &)
 Apply the algorithm to a drift. More...
 
virtual void visitDiagnostic (const Diagnostic &)
 Apply the algorithm to a diagnostic. More...
 
virtual void visitDrift (const Drift &)
 Apply the algorithm to a drift. More...
 
virtual void visitFlexibleCollimator (const FlexibleCollimator &)
 Apply the algorithm to a flexible collimator. More...
 
virtual void visitLambertson (const Lambertson &)
 Apply the algorithm to a Lambertson. More...
 
virtual void visitMarker (const Marker &)
 Apply the algorithm to a marker. More...
 
virtual void visitMonitor (const Monitor &)
 Apply the algorithm to a monitor. More...
 
virtual void visitMultipole (const Multipole &)
 Apply the algorithm to a multipole. More...
 
virtual void visitMultipoleT (const MultipoleT &)
 Apply the algorithm to a multipoleT. More...
 
virtual void visitMultipoleTStraight (const MultipoleTStraight &)
 Apply the algorithm to a multipoleTStraight. More...
 
virtual void visitMultipoleTCurvedConstRadius (const MultipoleTCurvedConstRadius &)
 Apply the algorithm to a multipoleTCurvedConstRadius. More...
 
virtual void visitMultipoleTCurvedVarRadius (const MultipoleTCurvedVarRadius &)
 Apply the algorithm to a multipoleTCurvedVarRadius. More...
 
virtual void visitOffset (const Offset &)
 Apply the algorithm to an Offset. More...
 
virtual void visitProbe (const Probe &prob)
 Apply the algorithm to a probe. More...
 
virtual void visitRBend (const RBend &)
 Apply the algorithm to a rectangular bend. More...
 
virtual void visitRBend3D (const RBend3D &)
 Apply the algorithm to a rectangular bend. More...
 
virtual void visitVariableRFCavity (const VariableRFCavity &vcav)
 Apply the algorithm to a RF cavity. More...
 
virtual void visitVariableRFCavityFringeField (const VariableRFCavityFringeField &vcav)
 Apply the algorithm to a RF cavity. More...
 
virtual void visitRFCavity (const RFCavity &)
 Apply the algorithm to a RF cavity. More...
 
virtual void visitTravelingWave (const TravelingWave &)
 Apply the algorithm to a RF cavity. More...
 
virtual void visitRFQuadrupole (const RFQuadrupole &)
 Apply the algorithm to a RF quadrupole. More...
 
virtual void visitSBend (const SBend &)
 Apply the algorithm to a sector bend. More...
 
virtual void visitSBend3D (const SBend3D &)
 Apply the algorithm to a sector bend. More...
 
virtual void visitScalingFFAMagnet (const ScalingFFAMagnet &)
 Apply the algorithm to a scaling FFA magnet. More...
 
virtual void visitVerticalFFAMagnet (const VerticalFFAMagnet &)
 Apply the algorithm to a RF cavity. More...
 
virtual void visitSeparator (const Separator &)
 Apply the algorithm to a separator. More...
 
virtual void visitSeptum (const Septum &)
 Apply the algorithm to a septum. More...
 
virtual void visitSolenoid (const Solenoid &)
 Apply the algorithm to a solenoid. More...
 
virtual void visitSource (const Source &)
 Apply the algorithm to a source. More...
 
virtual void visitParallelPlate (const ParallelPlate &)
 Apply the algorithm to a ParallelPlate. More...
 
virtual void visitCyclotronValley (const CyclotronValley &)
 Apply the algorithm to a CyclotronValley. More...
 
virtual void visitStripper (const Stripper &)
 Apply the algorithm to a charge stripper. More...
 
virtual void visitBeamline (const Beamline &)
 Apply the algorithm to a beam line. More...
 
virtual void visitFlaggedElmPtr (const FlaggedElmPtr &)
 Apply the algorithm to a FlaggedElmPtr. More...
 
virtual void visitAlignWrapper (const AlignWrapper &)
 Apply the algorithm to an align wrapper.. More...
 
virtual void visitCorrectorWrapper (const CorrectorWrapper &)
 Apply the algorithm to an corrector wrapper.. More...
 
virtual void visitCyclotronWrapper (const CyclotronWrapper &)
 Apply the algorithm to an cyclotron wrapper.. More...
 
virtual void visitMultipoleWrapper (const MultipoleWrapper &)
 Apply the algorithm to an multipole wrapper.. More...
 
virtual void visitRBendWrapper (const RBendWrapper &)
 Apply the algorithm to an RBend wrapper.. More...
 
virtual void visitSBendWrapper (const SBendWrapper &)
 Apply the algorithm to an SBend wrapper.. More...
 
virtual void visitIntegrator (const Integrator &)
 Apply the algorithm to a generic integrator. More...
 
virtual void visitMapIntegrator (const MapIntegrator &)
 Apply the algorithm to an integrator capable of mapping. More...
 
virtual void visitTrackIntegrator (const TrackIntegrator &)
 Apply the algorithm to an integrator capable of tracking. More...
 
- Public Member Functions inherited from BeamlineVisitor
 BeamlineVisitor ()
 
virtual ~BeamlineVisitor ()
 

Private Member Functions

 Surveyor ()
 
 Surveyor (const Surveyor &)
 
void operator= (const Surveyor &)
 
virtual void applyDefault (const ElementBase &element)
 Default action. More...
 

Private Attributes

Euclid3D itsMap
 The accumulated survey map. More...
 

Additional Inherited Members

- Protected Attributes inherited from DefaultVisitor
const BeamlineitsLine
 
bool back_beam
 
bool back_track
 
bool back_path
 
double flip_B
 
double flip_s
 

Detailed Description

Survey algorithm.

Definition at line 32 of file Surveyor.h.

Constructor & Destructor Documentation

Surveyor::Surveyor ( Beamline bl,
bool  revTrack 
)

Constructor.

Definition at line 29 of file Surveyor.cpp.

Surveyor::Surveyor ( Beamline bl,
double  x0,
double  y0,
double  z0,
double  theta0,
double  phi0,
double  psi0,
bool  revTrack = false 
)

Constructor.

Definition at line 35 of file Surveyor.cpp.

Surveyor::Surveyor ( Beamline bl,
const Euclid3D init,
bool  revTrack 
)

Constructor.

Definition at line 43 of file Surveyor.cpp.

Surveyor::~Surveyor ( )
virtual

Definition at line 48 of file Surveyor.cpp.

Surveyor::Surveyor ( )
private
Surveyor::Surveyor ( const Surveyor )
private

Member Function Documentation

void Surveyor::applyDefault ( const ElementBase element)
privatevirtual

Default action.

Reimplemented from DefaultVisitor.

Definition at line 69 of file Surveyor.cpp.

References DefaultVisitor::back_path, Euclid3D::dotBy(), ElementBase::getGeometry(), BGeometryBase::getTotalTransform(), Inverse(), and itsMap.

Here is the call graph for this function:

void Surveyor::getMap ( Euclid3D map) const

Return accumulated map.

Definition at line 52 of file Surveyor.cpp.

References itsMap.

Referenced by Survey::fill().

void Surveyor::operator= ( const Surveyor )
private
void Surveyor::setMap ( const Euclid3D map)

Reset accumulated map for restart.

Definition at line 57 of file Surveyor.cpp.

References itsMap.

Referenced by Survey::fill().

void Surveyor::visitPatch ( const Patch pat)
virtual

Apply the algorithm to a patch.

Reimplemented from DefaultVisitor.

Definition at line 62 of file Surveyor.cpp.

References DefaultVisitor::back_path, Euclid3D::dotBy(), Patch::getPatch(), Inverse(), and itsMap.

Here is the call graph for this function:

Member Data Documentation

Euclid3D Surveyor::itsMap
private

The accumulated survey map.

Definition at line 82 of file Surveyor.h.

Referenced by applyDefault(), getMap(), setMap(), and visitPatch().


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