19 #include "oxforddriver.h"
24 XPS120(
const char *name,
bool runtime,
25 Transaction &tr_meas,
const shared_ptr<XMeasure> &meas);
29 virtual void toNonPersistent();
30 virtual void toPersistent();
31 virtual void toZero();
32 virtual void toSetPoint();
33 virtual double getTargetField();
34 virtual double getSweepRate();
35 virtual double getOutputField();
36 virtual double getPersistentField();
37 virtual double getOutputVolt();
38 virtual double getOutputCurrent();
46 virtual double fieldResolution() {
return 0.001;}
48 virtual void setPoint(
double field);
49 virtual void setRate(
double hpm);
51 virtual double currentResolution() {
return 0.01;}
52 virtual double voltageResolution() {
return 0.01;}
61 XIPS120(
const char *name,
bool runtime,
62 Transaction &tr_meas,
const shared_ptr<XMeasure> &meas) :
63 XPS120(name, runtime, ref(tr_meas), meas) {}
65 virtual double fieldResolution() {
return 0.0001;}
70 virtual double currentResolution() {
return 0.001;}
71 virtual double voltageResolution() {
return 0.001;}
72 virtual double getTargetField();
73 virtual double getSweepRate();
74 virtual double getOutputField();
75 virtual double getPersistentField();
76 virtual double getOutputVolt();
77 virtual double getOutputCurrent();
78 virtual void setPoint(
double field);
79 virtual void setRate(
double hpm);
86 Transaction &tr_meas,
const shared_ptr<XMeasure> &meas);
92 virtual void toNonPersistent();
93 virtual void toPersistent();
94 virtual void toZero();
95 virtual void toSetPoint();
96 virtual double getTargetField();
97 virtual double getSweepRate();
98 virtual double getOutputField();
99 virtual double getPersistentField();
100 virtual double getOutputVolt();
101 virtual double getOutputCurrent();
108 virtual bool canChangePolarityDuringSweep() {
return false;}
110 virtual double fieldResolution();
112 virtual void setPoint(
double field);
113 virtual void setRate(
double hpm);
115 void changePauseState(
bool pause);
116 void changePolarity(
int p);
117 void ramp(
const char *str);
119 std::string receiveMessage(
const char *title,
bool is_stamp_required =
false);
121 double teslaPerAmp()
const {
return m_tpa;}
122 bool isOutputPositive();