39 itsDesign(rhs.itsDesign),
40 itsError(rhs.itsError),
virtual void accept(BeamlineVisitor &) const
Apply visitor to modified bend.
Interface for basic beam line object.
Interface for a Cyclotron.
virtual BGeometryBase & getGeometry()=0
Get geometry.
A simple arc in the XZ plane.
Pointer< Cyclotron > itsDesign
virtual double getStepsize() const =0
Get stepsize.
virtual ElementBase * clone() const
Make clone.
virtual BMultipoleField & errorField() const
Get multipole field error.
virtual PlanarArcGeometry & getGeometry()
Get geometry.
virtual void makeSharable()
Set sharable flag.
virtual const Cyclotron & getDesign() const
Get design Cyclotron.
virtual ElementBase * makeFieldWrapper()
Make wrapper for this bend.
Representation of a perturbed cyclotron.
virtual double getSlices() const
Get number of slices.
virtual ElementBase * copyStructure()
Make a structural copy.
virtual ~CyclotronWrapper()
virtual void makeSharable()
Set sharable flag.
virtual ElementBase * clone() const =0
Return clone.
virtual ElementBase * removeWrappers()
Remove all wrappers.
virtual ElementBase * copyStructure()
Make structural copy.
virtual void visitCyclotronWrapper(const CyclotronWrapper &)=0
Apply the algorithm to an corrector wrapper.
BMultipoleField itsError
The error field.
The magnetic field of a multipole.
virtual ElementBase::ElementType getType() const
Get element type string.
virtual ElementBase * removeFieldWrapper()
Remove field wrapper.
bool isSharable() const
Test if the element can be shared.
virtual double getStepsize() const
Get stepsize.
virtual BMultipoleField & getField()
Get field.
virtual double getSlices() const =0
Get number of slices.
BMultipoleField tempField