phaser-server  0.0.6
rfCavity.h
Go to the documentation of this file.
1 #ifndef RF_CAVITY_H
2 #define RF_CAVITY_H
8 #include <ca.h>
9 #include "types.h"
10 
13 class RfCavity
14 { public:
15  RfCavity(const std::string &);
16  void KickPhase(double);
17  static dbr_double_t InRange(dbr_double_t);
18 
19  public:
21  const std::string & Name(void) const { return m_name; }
23  double GetEnergy(void) const { return m_energy; }
25  Type::Region GetRegion(void) const { return m_region; }
27  double GetRegionEnergy(void) const { return m_regionEnergy; }
29  double GetPhase(void) const { return m_phase; }
31  const std::string & GetPhasePv(void) const { return m_phasePv; }
32 
33  private:
34  const std::string m_name;
35  ECA::ChannelAccess m_ca;
36  ECA::Item *m_item1;
37  double m_energy;
38  dbr_double_t m_regionEnergy;
39  dbr_double_t m_phase;
40  dbr_double_t m_phaseAdj;
41  Type::Region m_region;
42  std::string m_phasePv;
43 };
44 
45 #endif
One RF cavity for phase error measurement.
Definition: rfCavity.h:14
static dbr_double_t InRange(dbr_double_t)
Adjust the passed angle so that it falls within [-180, 180).
Definition: rfCavity.cpp:68
double GetRegionEnergy(void) const
Get the target energy (MeV) for cavity's region.
Definition: rfCavity.h:27
RfCavity(const std::string &)
Construct an instance.
Definition: rfCavity.cpp:24
const std::string & GetPhasePv(void) const
Get the cavity phase PV name.
Definition: rfCavity.h:31
Type::Region GetRegion(void) const
Get the cavity's associated region.
Definition: rfCavity.h:25
double GetPhase(void) const
Get the cavity phase setting.
Definition: rfCavity.h:29
void KickPhase(double)
Kick the cavity phase.
Definition: rfCavity.cpp:81
const std::string & Name(void) const
Get the cavity name.
Definition: rfCavity.h:21
double GetEnergy(void) const
Get the cavity energy setting (MeV).
Definition: rfCavity.h:23
Region
BEM region identifiers.
Definition: types.h:14
Application specific data types.