|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
An abstract sequence of beam line components. More...
#include <Beamline.h>
Public Member Functions | |
| Beamline (const std::string &name) | |
| Constructor with given name. | |
| Beamline () | |
| Beamline (const Beamline &) | |
| virtual | ~Beamline () |
| virtual void | iterate (BeamlineVisitor &, bool reverse) const =0 |
| Apply visitor to all elements of the line. | |
| virtual Vector_t | getOrigin3D () const |
| virtual Quaternion | getInitialDirection () const |
| virtual bool | getRelativeFlag () const |
| virtual const std::string & | getName () const |
| Get element name. | |
| virtual void | setName (const std::string &name) |
| Set element name. | |
| virtual ElementType | getType () const =0 |
| Get element type std::string. | |
| std::string | getTypeString () const |
| virtual BGeometryBase & | getGeometry ()=0 |
| Get geometry. | |
| virtual const BGeometryBase & | getGeometry () const =0 |
| Get geometry. | |
| virtual double | getArcLength () const |
| Get arc length. | |
| virtual double | getElementLength () const |
| Get design length. | |
| virtual void | setElementLength (double length) |
| Set design length. | |
| virtual void | getElementDimensions (double &begin, double &end) const |
| virtual double | getOrigin () const |
| Get origin position. | |
| virtual double | getEntrance () const |
| Get entrance position. | |
| virtual double | getExit () const |
| Get exit position. | |
| virtual Euclid3D | getTransform (double fromS, double toS) const |
| Get transform. | |
| virtual Euclid3D | getTransform (double s) const |
| Get transform. | |
| virtual Euclid3D | getTotalTransform () const |
| Get transform. | |
| virtual Euclid3D | getEntranceFrame () const |
| Get transform. | |
| virtual Euclid3D | getExitFrame () const |
| Get transform. | |
| virtual Euclid3D | getEntrancePatch () const |
| Get patch. | |
| virtual Euclid3D | getExitPatch () const |
| Get patch. | |
| virtual double | getAttribute (const std::string &aKey) const |
| Get attribute value. | |
| virtual bool | hasAttribute (const std::string &aKey) const |
| Test for existence of an attribute. | |
| virtual void | removeAttribute (const std::string &aKey) |
| Remove an existing attribute. | |
| virtual void | setAttribute (const std::string &aKey, double val) |
| Set value of an attribute. | |
| virtual Channel * | getChannel (const std::string &aKey, bool create=false) |
| Construct a read/write channel. | |
| virtual const ConstChannel * | getConstChannel (const std::string &aKey) const |
| Construct a read-only channel. | |
| virtual void | accept (BeamlineVisitor &visitor) const =0 |
| Apply visitor. | |
| virtual ElementBase * | clone () const =0 |
| Return clone. | |
| virtual ElementBase * | copyStructure () |
| Make a structural copy. | |
| bool | isSharable () const |
| Test if the element can be shared. | |
| virtual void | makeSharable () |
| Set sharable flag. | |
| bool | update (const AttributeSet &) |
| Update element. | |
| virtual void | setBoundaryGeometry (BoundaryGeometry *geo) |
| virtual BoundaryGeometry * | getBoundaryGeometry () const |
| return the attached boundary geometrt object if there is any | |
| virtual bool | hasBoundaryGeometry () const |
| virtual void | setWake (WakeFunction *wf) |
| attach a wake field to the element | |
| virtual WakeFunction * | getWake () const |
| return the attached wake object if there is any | |
| virtual bool | hasWake () const |
| virtual void | setParticleMatterInteraction (ParticleMatterInteractionHandler *spys) |
| virtual ParticleMatterInteractionHandler * | getParticleMatterInteraction () const |
| virtual bool | hasParticleMatterInteraction () const |
| void | setCSTrafoGlobal2Local (const CoordinateSystemTrafo &ori) |
| CoordinateSystemTrafo | getCSTrafoGlobal2Local () const |
| void | releasePosition () |
| void | fixPosition () |
| bool | isPositioned () const |
| virtual CoordinateSystemTrafo | getEdgeToBegin () const |
| virtual CoordinateSystemTrafo | getEdgeToEnd () const |
| void | setAperture (const ApertureType &type, const std::vector< double > &args) |
| std::pair< ApertureType, std::vector< double > > | getAperture () const |
| virtual bool | isInside (const Vector_t &r) const |
| void | setMisalignment (const CoordinateSystemTrafo &cst) |
| void | getMisalignment (double &x, double &y, double &s) const |
| CoordinateSystemTrafo | getMisalignment () const |
| void | setActionRange (const std::queue< std::pair< double, double > > &range) |
| void | setCurrentSCoordinate (double s) |
| void | setRotationAboutZ (double rotation) |
| Set rotation about z axis in bend frame. | |
| double | getRotationAboutZ () const |
| virtual BoundingBox | getBoundingBoxInLabCoords () const |
| virtual int | getRequiredNumberOfTimeSteps () const |
| void | setOutputFN (std::string fn) |
| Set output filename. | |
| std::string | getOutputFN () const |
| Get output filename. | |
| void | setFlagDeleteOnTransverseExit (bool=true) |
| bool | getFlagDeleteOnTransverseExit () const |
| int | addReference () const |
| Increment reference count. | |
| int | removeReference () const |
| Decrement the reference count. | |
| bool | isShared () const |
| Test for sharing. | |
| void | setElementPosition (double elemedge) |
| Access to ELEMEDGE attribute. | |
| double | getElementPosition () const |
| bool | isElementPositionSet () const |
Static Public Member Functions | |
| static std::string | getTypeString (ElementType type) |
Protected Member Functions | |
| bool | isInsideTransverse (const Vector_t &r) const |
Protected Attributes | |
| bool | shareFlag |
| CoordinateSystemTrafo | csTrafoGlobal2Local_m |
| CoordinateSystemTrafo | misalignment_m |
| std::pair< ApertureType, std::vector< double > > | aperture_m |
| double | elementEdge_m |
| double | rotationZAxis_m |
Private Member Functions | |
| void | operator= (const Beamline &) |
Private Attributes | |
| std::string | elementID |
| AttributeSet | userAttribs |
| WakeFunction * | wake_m |
| BoundaryGeometry * | bgeometry_m |
| ParticleMatterInteractionHandler * | parmatint_m |
| bool | positionIsFixed |
| std::queue< std::pair< double, double > > | actionRange_m |
| std::string | outputfn_m |
| bool | deleteOnTransverseExit_m = true |
| int | refCount |
| double | elementPosition_m |
| ELEMEDGE attribute. | |
| bool | elemedgeSet_m |
Static Private Attributes | |
| static const std::map< ElementType, std::string > | elementTypeToString_s |
An abstract sequence of beam line components.
Definition at line 34 of file Beamline.h.
|
explicit |
Constructor with given name.
Definition at line 40 of file Beamline.cpp.
References ElementBase::ElementBase(), name, and ElementBase::shareFlag.
Referenced by Beamline(), operator=(), TBeamline< T >::TBeamline(), TBeamline< T >::TBeamline(), and TBeamline< T >::TBeamline().
| Beamline::Beamline | ( | ) |
Definition at line 28 of file Beamline.cpp.
References ElementBase::ElementBase(), and ElementBase::shareFlag.
| Beamline::Beamline | ( | const Beamline & | ) |
Definition at line 34 of file Beamline.cpp.
References Beamline(), ElementBase::ElementBase(), and ElementBase::shareFlag.
|
virtual |
Definition at line 46 of file Beamline.cpp.
|
pure virtualinherited |
Apply visitor.
Implemented in Bend2D, CCollimator, Corrector, Cyclotron, Degrader, Drift, FlexibleCollimator, Marker, Monitor, Multipole, MultipoleT, Offset, OutputPlane, Probe, RBend3D, RBend, RFCavity, Ring, SBend3D, SBend, ScalingFFAMagnet, Septum, Solenoid, Source, Stripper, TBeamline< T >, TBeamline< FlaggedElmPtr >, TBeamline< SequenceMember >, TravelingWave, Undulator, Vacuum, VariableRFCavity, VariableRFCavityFringeField, and VerticalFFAMagnet.
Referenced by DefaultVisitor::visitFlaggedElmPtr(), and SpecificElementVisitor< ELEM >::visitFlaggedElmPtr().
|
inlineinherited |
Increment reference count.
Definition at line 83 of file RCObject.h.
References refCount.
Referenced by Pointer< Object >::operator=(), Pointer< Object >::operator=(), and Pointer< Object >::unique().
|
pure virtualinherited |
Return clone.
Implemented in CCollimatorRep, CorrectorRep, CyclotronRep, DegraderRep, DriftRep, FlexibleCollimatorRep, MarkerRep, MonitorRep, MultipoleRep, MultipoleT, Offset, OutputPlane, ProbeRep, RBend3D, RBendRep, RFCavityRep, Ring, SBend3D, SBendRep, ScalingFFAMagnet, SeptumRep, SingleMultipole< order >, SingleMultipole< -2 >, SingleMultipole< -3 >, SingleMultipole< -4 >, SingleMultipole< 2 >, SingleMultipole< 3 >, SingleMultipole< 4 >, SolenoidRep, SourceRep, StripperRep, TBeamline< T >, TBeamline< FlaggedElmPtr >, TBeamline< SequenceMember >, TravelingWaveRep, UndulatorRep, VacuumRep, VariableRFCavity, VariableRFCavityFringeField, VerticalFFAMagnet, XCorrectorRep, and YCorrectorRep.
References ElementBase().
Referenced by Ring::appendElement(), Sequence::copy(), RingSection::operator=(), ParallelCyclotronTracker::ParallelCyclotronTracker(), OpalBeamline::visit(), ParallelCyclotronTracker::visitCCollimator(), ParallelCyclotronTracker::visitCorrector(), ParallelCyclotronTracker::visitCyclotron(), ParallelCyclotronTracker::visitDrift(), ParallelCyclotronTracker::visitMarker(), ParallelCyclotronTracker::visitMonitor(), ParallelCyclotronTracker::visitMultipole(), ParallelCyclotronTracker::visitProbe(), ParallelCyclotronTracker::visitRBend(), ParallelCyclotronTracker::visitRFCavity(), ParallelCyclotronTracker::visitSBend(), ParallelCyclotronTracker::visitSeptum(), ParallelCyclotronTracker::visitSolenoid(), ParallelCyclotronTracker::visitStripper(), and ParallelCyclotronTracker::visitVacuum().
|
virtualinherited |
Make a structural copy.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 244 of file ElementBase.cpp.
References ElementBase(), and isSharable().
Referenced by Sequence::copy(), Line::parse(), and SequenceParser::parseMember().
|
inlineinherited |
Definition at line 551 of file ElementBase.h.
References positionIsFixed.
Referenced by OpalElement::update(), OpalRBend3D::update(), OpalRBend::update(), and OpalSBend::update().
|
inlineinherited |
Definition at line 525 of file ElementBase.h.
References aperture_m.
Referenced by MeshGenerator::add(), and Offset::operator=().
|
inlinevirtualinherited |
Get arc length.
Reimplemented in MarkerRep, TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 411 of file ElementBase.h.
References BGeometryBase::getArcLength(), and getGeometry().
Referenced by TBeamline< T >::getTransform().
|
virtualinherited |
Get attribute value.
Definition at line 187 of file ElementBase.cpp.
References getConstChannel().
|
inlinevirtualinherited |
return the attached boundary geometrt object if there is any
Definition at line 475 of file ElementBase.h.
References bgeometry_m.
|
virtualinherited |
Reimplemented in Bend2D.
Definition at line 313 of file ElementBase.cpp.
References csTrafoGlobal2Local_m, and getEdgeToBegin().
|
virtualinherited |
Construct a read/write channel.
Reimplemented in CCollimatorRep, CorrectorRep, CyclotronRep, DegraderRep, DriftRep, FlexibleCollimatorRep, MonitorRep, MultipoleRep, ProbeRep, RBendRep, RFCavityRep, SBendRep, SeptumRep, SingleMultipole< order >, SingleMultipole< -2 >, SingleMultipole< -3 >, SingleMultipole< -4 >, SingleMultipole< 2 >, SingleMultipole< 3 >, SingleMultipole< 4 >, SolenoidRep, SourceRep, StripperRep, TravelingWaveRep, UndulatorRep, VacuumRep, XCorrectorRep, and YCorrectorRep.
Definition at line 228 of file ElementBase.cpp.
References userAttribs.
Referenced by CCollimatorRep::getChannel(), CorrectorRep::getChannel(), CyclotronRep::getChannel(), DegraderRep::getChannel(), DriftRep::getChannel(), FlexibleCollimatorRep::getChannel(), MonitorRep::getChannel(), MultipoleRep::getChannel(), ProbeRep::getChannel(), RBendRep::getChannel(), RFCavityRep::getChannel(), SBendRep::getChannel(), SeptumRep::getChannel(), SingleMultipole< order >::getChannel(), SolenoidRep::getChannel(), SourceRep::getChannel(), StripperRep::getChannel(), TravelingWaveRep::getChannel(), UndulatorRep::getChannel(), VacuumRep::getChannel(), XCorrectorRep::getChannel(), YCorrectorRep::getChannel(), getConstChannel(), and setAttribute().
|
virtualinherited |
Construct a read-only channel.
Definition at line 233 of file ElementBase.cpp.
References ElementBase(), and getChannel().
Referenced by getAttribute(), and hasAttribute().
|
inlineinherited |
Definition at line 498 of file ElementBase.h.
References csTrafoGlobal2Local_m.
Referenced by MeshGenerator::add(), ParallelTTracker::computeParticleMatterInteraction(), Monitor::driftToCorrectPositionAndSave(), OpalRBend3D::update(), OpalRBend::update(), and OpalSBend::update().
|
inlinevirtualinherited |
Reimplemented in RFCavity, Solenoid, and TravelingWave.
Definition at line 503 of file ElementBase.h.
Referenced by Bend2D::getBoundingBoxInLabCoords(), getBoundingBoxInLabCoords(), and SingleMultipole< 4 >::update().
|
inlinevirtualinherited |
Reimplemented in Bend2D, RFCavity, Solenoid, and TravelingWave.
Definition at line 511 of file ElementBase.h.
References getElementLength().
|
inlinevirtualinherited |
Reimplemented in RFCavity, Solenoid, and TravelingWave.
Definition at line 174 of file ElementBase.h.
References begin(), end(), and getElementLength().
Referenced by MeshGenerator::add().
|
inlinevirtualinherited |
Get design length.
Reimplemented in MarkerRep, RFCavity, TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 415 of file ElementBase.h.
References BGeometryBase::getElementLength(), and getGeometry().
Referenced by Component::apply(), Corrector::apply(), Multipole::apply(), Multipole::apply(), Solenoid::apply(), Undulator::apply(), Component::applyToReferenceParticle(), Multipole::applyToReferenceParticle(), Solenoid::applyToReferenceParticle(), Vacuum::checkPoint(), RBend::findChordLength(), SBend::findChordLength(), CCollimator::getDimensions(), Corrector::getDimensions(), Degrader::getDimensions(), Drift::getDimensions(), FlexibleCollimator::getDimensions(), Multipole::getDimensions(), RBend3D::getDimensions(), Solenoid::getDimensions(), Vacuum::getDimensions(), getEdgeToEnd(), Solenoid::getEdgeToEnd(), getElementDimensions(), Solenoid::getElementDimensions(), RFCavity::getElementLength(), Corrector::initialise(), Degrader::initialise(), Drift::initialise(), FlexibleCollimator::initialise(), Multipole::initialise(), RBend3D::initialise(), Solenoid::initialise(), Source::initialise(), Vacuum::initialise(), Degrader::isInside(), isInside(), Monitor::isInside(), Multipole::isInside(), FlexibleCollimator::isStopped(), Bend2D::setupDefaultFieldMap(), SingleMultipole< 4 >::update(), ParallelCyclotronTracker::visitCorrector(), ParallelCyclotronTracker::visitDrift(), ThickTracker::visitDrift(), ParallelCyclotronTracker::visitMultipole(), ThickTracker::visitMultipole(), ParallelCyclotronTracker::visitRBend(), ParallelCyclotronTracker::visitSBend(), and ThickTracker::visitSBend().
|
inlineinherited |
Definition at line 589 of file ElementBase.h.
References elemedgeSet_m, elementPosition_m, and getName().
|
inlinevirtualinherited |
Get entrance position.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 427 of file ElementBase.h.
References BGeometryBase::getEntrance(), and getGeometry().
|
inlinevirtualinherited |
Get transform.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 447 of file ElementBase.h.
References BGeometryBase::getEntranceFrame(), and getGeometry().
|
inlinevirtualinherited |
Get patch.
Definition at line 455 of file ElementBase.h.
References BGeometryBase::getEntrancePatch(), and getGeometry().
|
inlinevirtualinherited |
Get exit position.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 431 of file ElementBase.h.
References BGeometryBase::getExit(), and getGeometry().
|
inlinevirtualinherited |
Get transform.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 451 of file ElementBase.h.
References BGeometryBase::getExitFrame(), and getGeometry().
|
inlinevirtualinherited |
Get patch.
Definition at line 459 of file ElementBase.h.
References BGeometryBase::getExitPatch(), and getGeometry().
|
inlineinherited |
Definition at line 614 of file ElementBase.h.
References deleteOnTransverseExit_m.
Referenced by Bend2D::apply(), Corrector::apply(), Multipole::apply(), Multipole::apply(), MultipoleT::apply(), RFCavity::apply(), Solenoid::apply(), TravelingWave::apply(), and FlexibleCollimator::isStopped().
|
pure virtualinherited |
Get geometry.
Implemented in CCollimatorRep, Corrector, CorrectorRep, CyclotronRep, DegraderRep, DriftRep, FlexibleCollimatorRep, MarkerRep, Monitor, MonitorRep, Multipole, MultipoleRep, MultipoleT, Offset, OutputPlane, ProbeRep, RBend3D, RBend, RBendRep, RFCavityRep, Ring, SBend3D, SBend, SBendRep, ScalingFFAMagnet, SeptumRep, SingleMultipole< order >, SingleMultipole< -2 >, SingleMultipole< -3 >, SingleMultipole< -4 >, SingleMultipole< 2 >, SingleMultipole< 3 >, SingleMultipole< 4 >, SolenoidRep, SourceRep, StripperRep, TBeamline< T >, TBeamline< FlaggedElmPtr >, TBeamline< SequenceMember >, TravelingWaveRep, UndulatorRep, VacuumRep, VariableRFCavity, and VerticalFFAMagnet.
|
pure virtualinherited |
Get geometry.
Implemented in CCollimatorRep, Corrector, CorrectorRep, CyclotronRep, DegraderRep, DriftRep, FlexibleCollimatorRep, MarkerRep, Monitor, MonitorRep, Multipole, MultipoleRep, MultipoleT, Offset, OutputPlane, ProbeRep, RBend3D, RBend, RBendRep, RFCavityRep, Ring, SBend3D, SBend, SBendRep, ScalingFFAMagnet, SeptumRep, SingleMultipole< order >, SingleMultipole< -2 >, SingleMultipole< -3 >, SingleMultipole< -4 >, SingleMultipole< 2 >, SingleMultipole< 3 >, SingleMultipole< 4 >, SolenoidRep, SourceRep, StripperRep, TBeamline< T >, TBeamline< FlaggedElmPtr >, TBeamline< SequenceMember >, TravelingWaveRep, UndulatorRep, VacuumRep, VariableRFCavity, and VerticalFFAMagnet.
Referenced by Ring::appendElement(), getArcLength(), getElementLength(), getEntrance(), getEntranceFrame(), getEntrancePatch(), getExit(), getExitFrame(), getExitPatch(), getOrigin(), getTotalTransform(), getTransform(), getTransform(), and setElementLength().
|
virtual |
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 53 of file Beamline.cpp.
Referenced by ThickTracker::ThickTracker(), and ThickTracker::ThickTracker().
|
inlineinherited |
Definition at line 541 of file ElementBase.h.
References misalignment_m.
|
inherited |
Referenced by ParallelTTracker::computeParticleMatterInteraction().
|
virtualinherited |
Get element name.
Definition at line 162 of file ElementBase.cpp.
References elementID.
Referenced by Ring::appendElement(), Cyclotron::apply(), Ring::apply(), Bend2D::calculateRefTrajectory(), OutputPlane::checkOne(), Vacuum::checkPressure(), TBeamline< T >::clone(), TBeamline< T >::copyStructure(), Stripper::doCheck(), CCollimator::doFinalise(), Stripper::doFinalise(), OutputPlane::doGoOffline(), Probe::doGoOffline(), PlaceRep::enter(), Cyclotron::finalise(), Degrader::finalise(), FlexibleCollimator::finalise(), Vacuum::finalise(), PyOpal::Field::getElementName(), getElementPosition(), RFCavity::getMomentaKick(), Bend2D::getOutline(), getOutputFN(), CavityAutophaser::getPhaseAtMaxEnergy(), Selector::handleElement(), Bend2D::initialise(), RBend3D::initialise(), RFCavity::initialise(), Ring::initialise(), Solenoid::initialise(), CSRIGFWakeFunction::initialize(), CSRWakeFunction::initialize(), OpalWake::initWakefunction(), PlaceRep::leave(), Offset::Offset(), operator<<(), Offset::operator=(), VariableRFCavity::operator=(), operator==(), Line::parse(), Sequence::print(), Vacuum::print(), Bend2D::readFieldMap(), PyOpal::PyLine_< TBeamline< FlaggedElmPtr > >::registerObject(), Ring::Ring(), ClassicField::SortAsc(), Component::trackBunch(), Component::trackMap(), RBend3D::trackRefParticleThrough(), OpalRBend3D::update(), OpalRBend::update(), OpalSBend::update(), Sequence::updateList(), ParallelTTracker::updateRFElement(), ParallelCyclotronTracker::visitCCollimator(), Replacer::visitFlaggedElmPtr(), ParallelCyclotronTracker::visitProbe(), ParallelCyclotronTracker::visitRFCavity(), ParallelCyclotronTracker::visitSeptum(), ParallelCyclotronTracker::visitStripper(), and ParallelTTracker::writePhaseSpace().
|
inlinevirtualinherited |
Get origin position.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 423 of file ElementBase.h.
References getGeometry(), and BGeometryBase::getOrigin().
|
virtual |
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 49 of file Beamline.cpp.
Referenced by ThickTracker::ThickTracker(), and ThickTracker::ThickTracker().
|
inherited |
Get output filename.
Definition at line 177 of file ElementBase.cpp.
References getName(), and outputfn_m.
Referenced by Probe::doInitialise(), Cyclotron::initialise(), FlexibleCollimator::initialise(), FlexibleCollimator::initialise(), Monitor::initialise(), PluginElement::initialise(), and Source::initialise().
|
inlinevirtualinherited |
Definition at line 483 of file ElementBase.h.
References parmatint_m.
Referenced by Degrader::applyToReferenceParticle(), CCollimator::doInitialise(), FlexibleCollimator::initialise(), FlexibleCollimator::initialise(), and Vacuum::initialise().
|
virtual |
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 57 of file Beamline.cpp.
|
inlinevirtualinherited |
|
inlineinherited |
Definition at line 574 of file ElementBase.h.
References rotationZAxis_m.
Referenced by OpalBeamline::compute3DLattice(), and Bend2D::setFieldCalcParam().
|
inlinevirtualinherited |
Get transform.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 439 of file ElementBase.h.
References getGeometry(), and BGeometryBase::getTotalTransform().
|
inlinevirtualinherited |
Get transform.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 435 of file ElementBase.h.
References getGeometry(), and BGeometryBase::getTransform().
Referenced by TBeamline< T >::getTransform().
|
inlinevirtualinherited |
Get transform.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 443 of file ElementBase.h.
References getGeometry(), and BGeometryBase::getTransform().
|
pure virtualinherited |
Get element type std::string.
Implemented in Bend2D, CCollimator, Component, Corrector, Cyclotron, Degrader, Drift, FlexibleCollimator, Marker, Monitor, Multipole, OutputPlane, Probe, RBend3D, RBend, RFCavity, SBend, Septum, Solenoid, Source, Stripper, TBeamline< T >, TBeamline< FlaggedElmPtr >, TBeamline< SequenceMember >, TravelingWave, Undulator, and Vacuum.
Referenced by MeshGenerator::add(), and getTypeString().
|
inlineinherited |
Definition at line 579 of file ElementBase.h.
References getType(), and getTypeString().
Referenced by ParallelCyclotronTracker::execute(), getTypeString(), and OpalBeamline::visit().
|
staticinherited |
Definition at line 240 of file ElementBase.cpp.
References elementTypeToString_s.
|
inlinevirtualinherited |
return the attached wake object if there is any
Definition at line 467 of file ElementBase.h.
References wake_m.
|
virtualinherited |
Test for existence of an attribute.
Definition at line 200 of file ElementBase.cpp.
References getConstChannel().
Referenced by ParallelCyclotronTracker::visitSolenoid().
|
inlinevirtualinherited |
Definition at line 479 of file ElementBase.h.
References bgeometry_m.
|
inlinevirtualinherited |
Definition at line 487 of file ElementBase.h.
References parmatint_m.
|
inlinevirtualinherited |
Definition at line 471 of file ElementBase.h.
References wake_m.
|
inlineinherited |
Definition at line 598 of file ElementBase.h.
References elemedgeSet_m.
|
inlinevirtualinherited |
Reimplemented in Bend2D, Degrader, Monitor, Multipole, RBend3D, RFCavity, Solenoid, and TravelingWave.
Definition at line 530 of file ElementBase.h.
References getElementLength(), and isInsideTransverse().
|
protectedinherited |
Definition at line 287 of file ElementBase.cpp.
References aperture_m.
Referenced by Component::apply(), Corrector::apply(), Multipole::apply(), Multipole::apply(), Undulator::apply(), Component::applyToReferenceParticle(), Multipole::applyToReferenceParticle(), isInside(), Monitor::isInside(), Multipole::isInside(), RFCavity::isInside(), Solenoid::isInside(), TravelingWave::isInside(), and FlexibleCollimator::isStopped().
|
inlineinherited |
Definition at line 556 of file ElementBase.h.
References positionIsFixed.
Referenced by OpalRBend3D::update(), OpalRBend::update(), and OpalSBend::update().
|
inlineinherited |
Test if the element can be shared.
Definition at line 463 of file ElementBase.h.
References shareFlag.
Referenced by copyStructure(), TBeamline< T >::copyStructure(), and Sequence::updateList().
|
inlineinherited |
|
pure virtual |
Apply visitor to all elements of the line.
Implemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Referenced by SpecificElementVisitor< ELEM >::SpecificElementVisitor(), DefaultVisitor::visitBeamline(), and SpecificElementVisitor< ELEM >::visitBeamline().
|
virtualinherited |
Set sharable flag.
Reimplemented in TBeamline< T >, TBeamline< FlaggedElmPtr >, and TBeamline< SequenceMember >.
Definition at line 253 of file ElementBase.cpp.
References shareFlag.
Referenced by OpalMarker::OpalMarker().
|
private |
|
inlineinherited |
Definition at line 546 of file ElementBase.h.
References positionIsFixed.
Referenced by OpalRBend3D::update(), OpalRBend::update(), and OpalSBend::update().
|
virtualinherited |
Remove an existing attribute.
Definition at line 212 of file ElementBase.cpp.
References userAttribs.
|
inlineinherited |
|
inlineinherited |
Definition at line 561 of file ElementBase.h.
References actionRange_m, and elementEdge_m.
|
inlineinherited |
Definition at line 519 of file ElementBase.h.
References aperture_m.
Referenced by Component::Component(), Offset::operator=(), OpalElement::update(), OpalRBend3D::update(), OpalRBend::update(), OpalSBend::update(), and OpalSlit::update().
|
virtualinherited |
Set value of an attribute.
Definition at line 217 of file ElementBase.cpp.
References getChannel(), and Channel::isSettable().
Referenced by TBeamline< FlaggedElmPtr >::getChannel(), and OpalElement::updateUnknown().
|
virtualinherited |
attach a boundary geometry field to the element
Definition at line 270 of file ElementBase.cpp.
References bgeometry_m.
Referenced by OpalCavity::update(), OpalCyclotron::update(), and OpalDrift::update().
|
inlineinherited |
Definition at line 491 of file ElementBase.h.
References csTrafoGlobal2Local_m, and positionIsFixed.
Referenced by OpalElement::update(), OpalRBend3D::update(), OpalRBend::update(), and OpalSBend::update().
|
inherited |
Definition at line 278 of file ElementBase.cpp.
|
inlinevirtualinherited |
Set design length.
Reimplemented in MultipoleT.
Definition at line 419 of file ElementBase.h.
References getGeometry(), and BGeometryBase::setElementLength().
Referenced by Bend2D::initialise(), RBend3D::initialise(), RFCavity::initialise(), Solenoid::initialise(), TravelingWave::initialise(), MultipoleT::setElementLength(), SequenceMember::setLength(), OpalCavity::update(), OpalCCollimator::update(), OpalDrift::update(), OpalECollimator::update(), OpalFlexibleCollimator::update(), OpalHKicker::update(), OpalKicker::update(), OpalMonitor::update(), OpalMultipole::update(), OpalOctupole::update(), OpalPepperPot::update(), OpalProbe::update(), OpalQuadrupole::update(), OpalRBend3D::update(), OpalRCollimator::update(), OpalSeptum::update(), OpalSextupole::update(), OpalSlit::update(), OpalSolenoid::update(), OpalSource::update(), OpalStripper::update(), OpalTravelingWave::update(), OpalUndulator::update(), OpalVacuum::update(), and OpalVKicker::update().
|
inlineinherited |
Access to ELEMEDGE attribute.
Definition at line 583 of file ElementBase.h.
References elemedgeSet_m, and elementPosition_m.
Referenced by OpalElement::update().
|
inlineinherited |
Definition at line 608 of file ElementBase.h.
References deleteOnTransverseExit_m.
Referenced by OpalElement::update().
|
inlineinherited |
Definition at line 536 of file ElementBase.h.
References misalignment_m.
Referenced by OpalElement::update().
|
virtualinherited |
Set element name.
Definition at line 167 of file ElementBase.cpp.
References elementID, and name.
Referenced by Sequence::insertDrifts(), Offset::operator=(), and VariableRFCavity::operator=().
|
inherited |
Set output filename.
Definition at line 172 of file ElementBase.cpp.
References outputfn_m.
Referenced by OpalCCollimator::update(), OpalCyclotron::update(), OpalECollimator::update(), OpalFlexibleCollimator::update(), OpalMonitor::update(), OpalOutputPlane::update(), OpalPepperPot::update(), OpalProbe::update(), OpalRCollimator::update(), OpalSeptum::update(), OpalSlit::update(), OpalSource::update(), and OpalStripper::update().
|
virtualinherited |
Definition at line 274 of file ElementBase.cpp.
References parmatint_m.
Referenced by OpalCCollimator::update(), OpalDrift::update(), OpalECollimator::update(), OpalFlexibleCollimator::update(), OpalPepperPot::update(), OpalQuadrupole::update(), OpalRBend3D::update(), OpalRBend::update(), OpalRCollimator::update(), OpalSBend::update(), OpalSlit::update(), and OpalVacuum::update().
|
inlineinherited |
Set rotation about z axis in bend frame.
Definition at line 569 of file ElementBase.h.
References rotationZAxis_m.
Referenced by OpalElement::update().
|
virtualinherited |
attach a wake field to the element
Definition at line 266 of file ElementBase.cpp.
References wake_m.
Referenced by OpalCavity::update(), OpalDrift::update(), OpalProbe::update(), OpalRBend3D::update(), OpalRBend::update(), OpalSBend::update(), OpalSeptum::update(), and OpalTravelingWave::update().
|
inherited |
Update element.
Definition at line 258 of file ElementBase.cpp.
Referenced by Monitor::driftToCorrectPositionAndSave().
|
privateinherited |
Definition at line 399 of file ElementBase.h.
Referenced by setActionRange().
|
protectedinherited |
Definition at line 369 of file ElementBase.h.
Referenced by ElementBase(), getAperture(), Bend2D::getOutline(), Bend2D::getSurfaceMesh(), Bend2D::inMagnetCentralRegion(), Bend2D::inMagnetEntranceRegion(), Bend2D::inMagnetExitRegion(), isInsideTransverse(), setAperture(), Bend2D::setFieldCalcParam(), Bend2D::setupBendGeometry(), and Bend2D::setupFringeWidths().
|
privateinherited |
Definition at line 390 of file ElementBase.h.
Referenced by ElementBase(), getBoundaryGeometry(), hasBoundaryGeometry(), and setBoundaryGeometry().
|
protectedinherited |
Definition at line 366 of file ElementBase.h.
Referenced by Monitor::applyToReferenceParticle(), ElementBase(), Bend2D::getBoundingBoxInLabCoords(), getBoundingBoxInLabCoords(), getCSTrafoGlobal2Local(), and setCSTrafoGlobal2Local().
|
privateinherited |
Definition at line 403 of file ElementBase.h.
Referenced by ElementBase(), getFlagDeleteOnTransverseExit(), and setFlagDeleteOnTransverseExit().
|
privateinherited |
Definition at line 397 of file ElementBase.h.
Referenced by ElementBase(), getElementPosition(), isElementPositionSet(), and setElementPosition().
|
protectedinherited |
Definition at line 371 of file ElementBase.h.
Referenced by ElementBase(), Bend2D::getEffectiveCenter(), Bend2D::initialise(), Bend2D::print(), setActionRange(), and Bend2D::setupBendGeometry().
|
privateinherited |
Definition at line 381 of file ElementBase.h.
Referenced by ElementBase(), getName(), and setName().
|
privateinherited |
ELEMEDGE attribute.
Definition at line 396 of file ElementBase.h.
Referenced by ElementBase(), getElementPosition(), and setElementPosition().
|
staticprivateinherited |
Definition at line 71 of file ElementBase.h.
Referenced by getTypeString().
|
protectedinherited |
Definition at line 367 of file ElementBase.h.
Referenced by ElementBase(), getMisalignment(), and setMisalignment().
|
privateinherited |
The name of the outputfile
Definition at line 401 of file ElementBase.h.
Referenced by ElementBase(), getOutputFN(), and setOutputFN().
|
privateinherited |
Definition at line 392 of file ElementBase.h.
Referenced by ElementBase(), getParticleMatterInteraction(), hasParticleMatterInteraction(), and setParticleMatterInteraction().
|
privateinherited |
Definition at line 394 of file ElementBase.h.
Referenced by ElementBase(), fixPosition(), isPositioned(), releasePosition(), and setCSTrafoGlobal2Local().
|
mutableprivateinherited |
Definition at line 76 of file RCObject.h.
Referenced by addReference(), isShared(), RCObject(), RCObject(), and removeReference().
|
protectedinherited |
Definition at line 373 of file ElementBase.h.
Referenced by ElementBase(), Bend2D::findIdealBendParameters(), getRotationAboutZ(), RBend3D::initialise(), Bend2D::print(), and setRotationAboutZ().
|
mutableprotectedinherited |
Definition at line 364 of file ElementBase.h.
Referenced by Beamline::Beamline(), Beamline::Beamline(), Beamline::Beamline(), ElementBase(), isSharable(), makeSharable(), and TBeamline< T >::makeSharable().
|
privateinherited |
Definition at line 386 of file ElementBase.h.
Referenced by ElementBase(), getChannel(), and removeAttribute().
|
privateinherited |
Definition at line 388 of file ElementBase.h.
Referenced by ElementBase(), getWake(), hasWake(), and setWake().