27 double(RFCavityRep::*get)()
const;
28 void (RFCavityRep::*set)(double);
31 static const Entry entries[] = {
83 for(
const Entry *entry = entries; entry->name != 0; ++entry) {
84 if(aKey == entry->name) {
117 return field.getFrequency();
122 return field.getPhase();
127 field.setEz(amplitude);
132 field.setFrequency(frequency);
137 field.setPhase(phase);
OscillatingField< ConstEzField > AcceleratingField
The electromagnetic field of an RF cavity.
virtual Channel * getChannel(const std::string &aKey, bool create=false)
Construct a read/write channel.
virtual double getElementLength() const
Get design length.
virtual void setElementLength(double length)
Set design length.
ElementBase(const std::string &name)
Constructor with given name.
RFCavity(const std::string &name)
Constructor with given name.
RFCavityRep(const std::string &name)
Constructor with given name.
virtual void setPhase(double phi)
Set phase.
virtual void setFrequency(double f)
Set frequency.
virtual Channel * getChannel(const std::string &aKey, bool=false)
Construct a read/write channel.
virtual StraightGeometry & getGeometry()
Get geometry.
virtual double getPhase() const
Get phase.
virtual ElementBase * clone() const
Return clone.
virtual double getAmplitude() const
Get amplitude.
StraightGeometry geometry
The cavity's geometry.
virtual void setAmplitude(double V)
Set amplitude.
static bool ignoreCavities
Cavities are ignored (amplitude = 0) when this switch is set.
static void setIgnore(bool ignore=false)
Set ignore switch.
virtual AcceleratingField & getField()
Get field.
AcceleratingField field
The cavity's field.
virtual double getFrequency() const
Get frequency.
A geometry representing a straight line.
Abstract interface for read/write access to variable.
Access to a [b]double[/b] data member.