template
class
TBeamline<class>
: public Beamline, public std::list<T>
(Return to index)
Template class for beam lines.
Instantiation with different T types allows attachment of additional
data to each position in the line.
Type: |
Instantiable |
Superclasses: |
public Beamline, public std::list<T> |
Include file: |
./Beamlines/TBeamline.hh |
Inheritance
Synopsis (including inherited members):
- Public members:
- Protected Members:
-
BeamlineGeometry itsGeometry
;
-
mutable bool shareFlag
;
-
RCObject& operator=
(const RCObject&)
;
Documentation:
- Public members:
-
TBeamline
()
;
- Default constructor.
-
TBeamline
(const string&)
;
- Constructor with given name.
-
virtual void accept
(BeamlineVisitor&)const
;
- Apply BeamlineVisitor to this line.
-
virtual void append
(const T&)
;
- Append a T object.
-
virtual TBeamline<T>* clone
()const
;
- Make clone.
-
virtual TBeamline<T>* copyStructure
()
;
- Make structure copy.
-
virtual double getArcLength
()const
;
- Get arc length.
Return the length of the geometry, measured along the design orbit.
-
virtual double getElementLength
()const
;
- Get design length.
Return the length of the geometry, measured along the design polygone.
-
virtual double getEntrance
()const
;
- Get entrance position.
Return the arc length from the origin to the entrance of the
geometry (non-positive).
-
virtual Euclid3D getEntranceFrame
()const
;
- Get transform.
Equivalent to getTransform(0.0, getEntrance()).
Return the transform of the local coordinate system from the
origin to the entrance of the element.
-
virtual double getExit
()const
;
- Get exit position.
Return the arc length from the origin to the exit of the
geometry (non-negative).
-
virtual Euclid3D getExitFrame
()const
;
- Get transform.
Equivalent to getTransform(0.0, getExit()).
Return the transform of the local coordinate system from the
origin to the exit of the element.
-
virtual BeamlineGeometry& getGeometry
()
;
- Get geometry.
Version for non-constant object.
-
virtual const BeamlineGeometry& getGeometry
()const
;
- Get geometry.
Version for constant object.
-
virtual ElementImage* getImage
()const
;
- Construct an image.
Return the image of the element, containing the name and type string
of the element, and a copy of the user-defined attributes.
-
virtual double getOrigin
()const
;
- Get origin position.
Return the arc length from the entrance to the origin of the
geometry (non-negative).
-
virtual Euclid3D getTotalTransform
()const
;
- Get transform.
Equivalent to getTransform(getEntrance(), getExit()).
Return the transform of the local coordinate system from the
entrance to the exit of the element.
-
virtual Euclid3D getTransform
(double,double)const
;
- Get transform.
Return the transform of the local coordinate system from the
position fromS to the position toS.
-
virtual Euclid3D getTransform
(double)const
;
- Get transform.
Equivalent to getTransform(0.0, s).
Return the transform of the local coordinate system from the
origin and s.
-
virtual const string& getType
()const
;
- Get beamline type string.
-
virtual void iterate
(BeamlineVisitor&,bool)const
;
- Apply visitor to all elements of the line.
If the parameter r2l is true, the line is traversed from
right (s=C) to left (s=0).
If any error occurs, this method may throw an exception.
-
virtual void makeSharable
()
;
- Set sharable flag.
The whole beamline and the elements depending on this are
marked as sharable. After this call a copyStructure() call
reuses the element.
-
virtual void prepend
(const T&)
;
- Prepend a T object.
- Protected members:
-
BeamlineGeometry itsGeometry
;
- The beamline geometry.
Exists to match the interface for ElementBase.
Documentation generated by fci on Mon Feb 7 11:41:54 2000