36 const Entry entries[] = {
64 geometry(right.geometry),
84 for(
const Entry *entry = entries; entry->name != 0; ++entry) {
85 if(aKey == entry->name) {
115 for(
const Entry *entry = entries; entry->name != 0; ++entry) {
116 image->
setAttribute(entry->name, (this->*(entry->get))());
virtual Channel * getChannel(const std::string &aKey, bool=false)
Construct a read/write channel.
Interface for basic beam line object.
virtual ElementImage * getImage() const
Construct an image.
virtual void setBz(double Bz)
Set field.
virtual void setElementLength(double length)
Set design length.
virtual Channel * getChannel(const std::string &aKey, bool create=false)
Construct a read/write channel.
virtual double getElementLength() const override
Get design length.
virtual ConstBzField & getField()
Get field.
Tepresentation for a solenoid magnet.
StraightGeometry geometry
The solenoid geometry.
virtual ElementImage * getImage() const
Construct an image.
ConstBzField field
The solenoid field.
void setAttribute(const std::string &aKey, double val)
Set value of an attribute.
virtual ElementBase * clone() const
Return clone.
A geometry representing a straight line.
virtual double getBz() const
Get component.
Abstract interface for read/write access to variable.
virtual double getBz() const
Get field.
A homogeneous magnetostatic field in z-direction.
virtual StraightGeometry & getGeometry()
Get geometry.
virtual void setBz(double Bz)
Set component.
Access to a [b]double[/b] data member.