| 
    OPAL (Object Oriented Parallel Accelerator Library) 2022.1
    
   OPAL 
   | 
 
#include <TBeamline.h>


Public Member Functions | |
| TBeamline () | |
| Default constructor.  More... | |
| TBeamline (const std::string &name) | |
| Constructor with given name.  More... | |
| TBeamline (const TBeamline< T > &right) | |
| virtual | ~TBeamline () | 
| virtual void | accept (BeamlineVisitor &) const | 
| Apply BeamlineVisitor to this line.  More... | |
| virtual void | iterate (BeamlineVisitor &, bool r2l) const | 
| Apply visitor to all elements of the line.  More... | |
| virtual TBeamline< T > * | clone () const | 
| Make clone.  More... | |
| virtual TBeamline< T > * | copyStructure () | 
| Make structure copy.  More... | |
| virtual void | makeSharable () | 
| Set sharable flag.  More... | |
| virtual BeamlineGeometry & | getGeometry () | 
| Get geometry.  More... | |
| virtual const BeamlineGeometry & | getGeometry () const | 
| Get geometry.  More... | |
| virtual double | getArcLength () const | 
| Get arc length.  More... | |
| virtual double | getElementLength () const | 
| Get design length.  More... | |
| virtual double | getOrigin () const | 
| Get origin position.  More... | |
| virtual double | getEntrance () const | 
| Get entrance position.  More... | |
| virtual double | getExit () const | 
| Get exit position.  More... | |
| virtual Euclid3D | getTransform (double fromS, double toS) const | 
| Get transform.  More... | |
| virtual Euclid3D | getTransform (double s) const | 
| Get transform.  More... | |
| virtual Euclid3D | getTotalTransform () const | 
| Get transform.  More... | |
| virtual Euclid3D | getEntranceFrame () const | 
| Get transform.  More... | |
| virtual Euclid3D | getExitFrame () const | 
| Get transform.  More... | |
| virtual ElementType | getType () const | 
| Get beamline type.  More... | |
| virtual void | append (const T &) | 
| Append a T object.  More... | |
| virtual void | prepend (const T &) | 
| Prepend a T object.  More... | |
| void | setOrigin3D (const Vector_t &ori) | 
| Vector_t | getOrigin3D () const | 
| void | setInitialDirection (const Quaternion &rot) | 
| Quaternion | getInitialDirection () const | 
| void | setRelativeFlag (bool flag) | 
| bool | getRelativeFlag () const | 
| size_t | size () const | 
| Get the number of elements in the TBeamline.  More... | |
  Public Member Functions inherited from Beamline | |
| Beamline (const std::string &name) | |
| Constructor with given name.  More... | |
| Beamline () | |
| Beamline (const Beamline &) | |
| virtual | ~Beamline () | 
| virtual void | iterate (BeamlineVisitor &, bool reverse) const =0 | 
| Apply visitor to all elements of the line.  More... | |
| virtual Vector_t | getOrigin3D () const | 
| virtual Quaternion | getInitialDirection () const | 
| virtual bool | getRelativeFlag () const | 
  Public Member Functions inherited from ElementBase | |
| ElementBase (const std::string &name) | |
| Constructor with given name.  More... | |
| ElementBase () | |
| ElementBase (const ElementBase &) | |
| virtual | ~ElementBase () | 
| virtual const std::string & | getName () const | 
| Get element name.  More... | |
| virtual void | setName (const std::string &name) | 
| Set element name.  More... | |
| virtual ElementType | getType () const =0 | 
| Get element type std::string.  More... | |
| std::string | getTypeString () const | 
| virtual BGeometryBase & | getGeometry ()=0 | 
| Get geometry.  More... | |
| virtual const BGeometryBase & | getGeometry () const =0 | 
| Get geometry.  More... | |
| virtual double | getArcLength () const | 
| Get arc length.  More... | |
| virtual double | getElementLength () const | 
| Get design length.  More... | |
| virtual void | setElementLength (double length) | 
| Set design length.  More... | |
| virtual void | getElementDimensions (double &begin, double &end) const | 
| virtual double | getOrigin () const | 
| Get origin position.  More... | |
| virtual double | getEntrance () const | 
| Get entrance position.  More... | |
| virtual double | getExit () const | 
| Get exit position.  More... | |
| virtual Euclid3D | getTransform (double fromS, double toS) const | 
| Get transform.  More... | |
| virtual Euclid3D | getTransform (double s) const | 
| Get transform.  More... | |
| virtual Euclid3D | getTotalTransform () const | 
| Get transform.  More... | |
| virtual Euclid3D | getEntranceFrame () const | 
| Get transform.  More... | |
| virtual Euclid3D | getExitFrame () const | 
| Get transform.  More... | |
| virtual Euclid3D | getEntrancePatch () const | 
| Get patch.  More... | |
| virtual Euclid3D | getExitPatch () const | 
| Get patch.  More... | |
| virtual double | getAttribute (const std::string &aKey) const | 
| Get attribute value.  More... | |
| virtual bool | hasAttribute (const std::string &aKey) const | 
| Test for existence of an attribute.  More... | |
| virtual void | removeAttribute (const std::string &aKey) | 
| Remove an existing attribute.  More... | |
| virtual void | setAttribute (const std::string &aKey, double val) | 
| Set value of an attribute.  More... | |
| virtual Channel * | getChannel (const std::string &aKey, bool create=false) | 
| Construct a read/write channel.  More... | |
| virtual const ConstChannel * | getConstChannel (const std::string &aKey) const | 
| Construct a read-only channel.  More... | |
| virtual void | accept (BeamlineVisitor &visitor) const =0 | 
| Apply visitor.  More... | |
| virtual ElementBase * | clone () const =0 | 
| Return clone.  More... | |
| virtual ElementBase * | copyStructure () | 
| Make a structural copy.  More... | |
| bool | isSharable () const | 
| Test if the element can be shared.  More... | |
| virtual void | makeSharable () | 
| Set sharable flag.  More... | |
| bool | update (const AttributeSet &) | 
| Update element.  More... | |
| virtual void | setBoundaryGeometry (BoundaryGeometry *geo) | 
| virtual BoundaryGeometry * | getBoundaryGeometry () const | 
| return the attached boundary geometrt object if there is any  More... | |
| virtual bool | hasBoundaryGeometry () const | 
| virtual void | setWake (WakeFunction *wf) | 
| attach a wake field to the element  More... | |
| virtual WakeFunction * | getWake () const | 
| return the attached wake object if there is any  More... | |
| 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.  More... | |
| double | getRotationAboutZ () const | 
| virtual BoundingBox | getBoundingBoxInLabCoords () const | 
| virtual int | getRequiredNumberOfTimeSteps () const | 
| void | setOutputFN (std::string fn) | 
| Set output filename.  More... | |
| std::string | getOutputFN () const | 
| Get output filename.  More... | |
| void | setFlagDeleteOnTransverseExit (bool=true) | 
| bool | getFlagDeleteOnTransverseExit () const | 
| void | setElementPosition (double elemedge) | 
| Access to ELEMEDGE attribute.  More... | |
| double | getElementPosition () const | 
| bool | isElementPositionSet () const | 
  Public Member Functions inherited from RCObject | |
| int | addReference () const | 
| Increment reference count.  More... | |
| int | removeReference () const | 
| Decrement the reference count.  More... | |
| bool | isShared () const | 
| Test for sharing.  More... | |
Protected Attributes | |
| BeamlineGeometry | itsGeometry | 
| The beamline geometry.  More... | |
| Vector_t | itsOrigin_m | 
| Quaternion | itsCoordTrafoTo_m | 
| bool | relativePositions_m | 
  Protected Attributes inherited from ElementBase | |
| bool | shareFlag | 
| CoordinateSystemTrafo | csTrafoGlobal2Local_m | 
| CoordinateSystemTrafo | misalignment_m | 
| std::pair< ApertureType, std::vector< double > > | aperture_m | 
| double | elementEdge_m | 
| double | rotationZAxis_m | 
Additional Inherited Members | |
  Static Public Member Functions inherited from ElementBase | |
| static std::string | getTypeString (ElementType type) | 
  Protected Member Functions inherited from ElementBase | |
| bool | isInsideTransverse (const Vector_t &r) const | 
  Protected Member Functions inherited from RCObject | |
| RCObject () | |
| Default constructor.  More... | |
| RCObject (const RCObject &) | |
| Copy constructor.  More... | |
| virtual | ~RCObject ()=0 | 
| RCObject & | operator= (const RCObject &right) | 
Definition at line 33 of file TBeamline.h.
| TBeamline< T >::TBeamline | 
Default constructor.
Definition at line 161 of file TBeamline.h.
      
  | 
  explicit | 
Constructor with given name.
Definition at line 172 of file TBeamline.h.
| TBeamline< T >::TBeamline | ( | const TBeamline< T > & | right | ) | 
Definition at line 183 of file TBeamline.h.
Definition at line 194 of file TBeamline.h.
      
  | 
  virtual | 
Apply BeamlineVisitor to this line.
Implements ElementBase.
Definition at line 199 of file TBeamline.h.
References BeamlineVisitor::visitBeamline().

      
  | 
  inlinevirtual | 
Append a T object.
Definition at line 417 of file TBeamline.h.
Referenced by TBeamline< T >::clone(), and TBeamline< T >::copyStructure().
Make clone.
Implements ElementBase.
Definition at line 221 of file TBeamline.h.
References TBeamline< T >::append(), begin(), end(), TBeamline< T >::itsCoordTrafoTo_m, TBeamline< T >::itsOrigin_m, TBeamline< T >::relativePositions_m, and Attrib::Legacy::Distribution::T.

Make structure copy.
Reimplemented from ElementBase.
Definition at line 241 of file TBeamline.h.
References TBeamline< T >::append(), begin(), end(), TBeamline< T >::itsCoordTrafoTo_m, TBeamline< T >::itsOrigin_m, TBeamline< T >::relativePositions_m, and Attrib::Legacy::Distribution::T.

      
  | 
  virtual | 
Get arc length.
Reimplemented from ElementBase.
Definition at line 288 of file TBeamline.h.
References begin(), and end().

      
  | 
  virtual | 
Get design length.
Reimplemented from ElementBase.
Definition at line 301 of file TBeamline.h.
References begin(), and end().

      
  | 
  virtual | 
      
  | 
  virtual | 
      
  | 
  inlinevirtual | 
      
  | 
  inlinevirtual | 
      
  | 
  inlinevirtual | 
Reimplemented from Beamline.
Definition at line 443 of file TBeamline.h.
Referenced by ParallelTTracker::visitBeamline(), and ThickTracker::visitBeamline().
      
  | 
  virtual | 
Reimplemented from Beamline.
Definition at line 433 of file TBeamline.h.
Referenced by ParallelTTracker::visitBeamline(), and ThickTracker::visitBeamline().
      
  | 
  inlinevirtual | 
Reimplemented from Beamline.
Definition at line 453 of file TBeamline.h.
Referenced by ParallelTTracker::visitBeamline(), and ThickTracker::visitBeamline().
Get transform.
Reimplemented from ElementBase.
Definition at line 380 of file TBeamline.h.
References begin(), Euclid3D::dotBy(), and end().

Get transform.
Reimplemented from ElementBase.
Definition at line 332 of file TBeamline.h.
References begin(), end(), ElementBase::getArcLength(), ElementBase::getTransform(), max(), and min().

      
  | 
  inlinevirtual | 
Get beamline type.
Implements ElementBase.
Definition at line 411 of file TBeamline.h.
References BEAMLINE.
      
  | 
  virtual | 
Apply visitor to all elements of the line.
Implements Beamline.
Definition at line 205 of file TBeamline.h.
References begin(), and end().
Referenced by ParallelCyclotronTracker::visitBeamline(), ParallelTTracker::visitBeamline(), and ThickTracker::visitBeamline().

      
  | 
  inlinevirtual | 
Set sharable flag.
Reimplemented from ElementBase.
Definition at line 265 of file TBeamline.h.
References begin(), and end().

      
  | 
  inlinevirtual | 
Prepend a T object.
Definition at line 423 of file TBeamline.h.
      
  | 
  inline | 
Definition at line 438 of file TBeamline.h.
Definition at line 428 of file TBeamline.h.
      
  | 
  inline | 
Definition at line 448 of file TBeamline.h.
| size_t TBeamline< T >::size | 
Get the number of elements in the TBeamline.
Definition at line 458 of file TBeamline.h.
References begin(), and end().

      
  | 
  protected | 
Definition at line 152 of file TBeamline.h.
Referenced by TBeamline< T >::clone(), and TBeamline< T >::copyStructure().
      
  | 
  protected | 
The beamline geometry.
Definition at line 149 of file TBeamline.h.
Definition at line 151 of file TBeamline.h.
Referenced by TBeamline< T >::clone(), and TBeamline< T >::copyStructure().
      
  | 
  protected | 
Definition at line 153 of file TBeamline.h.
Referenced by TBeamline< T >::clone(), and TBeamline< T >::copyStructure().