36 static const Entry entries[] = {
51 Septum(), field(), geometry(), active(true)
56 Septum(right), field(), geometry(right.geometry), active(true)
61 Septum(name), field(), geometry(), active(true)
75 for(
const Entry *entry = entries; entry->name != 0; ++entry) {
76 if(aKey == entry->name) {
104 for(
const Entry *entry = entries; entry->name != 0; ++entry) {
105 image->
setAttribute(entry->name, (this->*(entry->get))());
virtual ElementBase * clone() const
Return clone.
StraightGeometry geometry
The septa's geometry.
Interface for basic beam line object.
Interface for septum magnet.
virtual void setElementLength(double length)
Set design length.
virtual Channel * getChannel(const std::string &aKey, bool create=false)
Construct a read/write channel.
virtual void setActive(bool=true)
Set active flag.
A zero electromagnetic field.
NullField field
The zero magnetic field.
virtual StraightGeometry & getGeometry()
Get geometry.
virtual ElementImage * getImage() const
Construct an image.
virtual double getElementLength() const
Get design length.
virtual ElementImage * getImage() const
Construct an image.
void setAttribute(const std::string &aKey, double val)
Set value of an attribute.
A geometry representing a straight line.
Abstract interface for read/write access to variable.
virtual Channel * getChannel(const std::string &aKey, bool=false)
Construct a read/write channel.
Representation for Septum.
bool active
The active/inactive flag.
virtual NullField & getField()
Get field.
Access to a [b]double[/b] data member.