QSlowControlClient.hh

Go to the documentation of this file.
00001 
00009 #ifndef _Q_SLOW_CONTROL_CLIENT_HH_
00010 #define _Q_SLOW_CONTROL_CLIENT_HH_
00011 
00012 #include "QBaseClient.hh"
00013 #include "QSlowTypes.hh" 
00014 #include "QError.hh"
00015 
00016 class QSlowControlClient: public QBaseClient
00017 {
00018 public:
00019 
00021    QSlowControlClient();
00022 
00024    QSlowControlClient(const std::string& address, const std::string& port);
00025 
00026    virtual ~QSlowControlClient();
00027 
00035    bool SetWriteMode(bool canWrite);
00036 
00043    bool SetBaseMode();
00044 
00051    bool SetRunMode();
00052 
00060    bool SetTuningMode(unsigned int basket);
00061 
00069    bool GetMode(QSlowTypes::QSlowMode_t& mode);
00070 
00079    bool GetBasket(int& basket);
00080 
00090    bool LoadDevice(QSlowTypes::QSlowDevice_t dev, QSlowTypes::QSlowEleInterface_t iface);
00091 
00101    bool GetInterface(QSlowTypes::QSlowDevice_t dev, QSlowTypes::QSlowEleInterface_t& iface); 
00102                                       
00111    bool GetFEInterface(QSlowTypes::QSlowEleInterface_t& iface);
00112 
00121    bool GetBSInterface(QSlowTypes::QSlowEleInterface_t& iface);
00122 
00131    bool GetPSInterface(QSlowTypes::QSlowEleInterface_t& iface);
00132 
00133 
00142    bool SetFEInterface(QSlowTypes::QSlowEleInterface_t iface);
00143 
00152    bool SetBSInterface(QSlowTypes::QSlowEleInterface_t iface);
00153    
00162    bool SetPSInterface(QSlowTypes::QSlowEleInterface_t iface);
00163 
00164 
00176    bool WritePulser(unsigned short pulseId,
00177                     char           mem0,
00178                     char           mem1,
00179                     char           mem2,
00180                     char           mem3);
00181 
00190    bool GetPulserRegister(unsigned short id, size_t reg, int& value);
00191 
00200    bool SetEleRegister(unsigned short lg, size_t reg, int value);
00201 
00210    bool GetEleRegister(unsigned short lg, size_t reg, int& value);
00211 
00219    bool SetFEGain(unsigned short lg, int value);
00220 
00228    bool GetFEGain(unsigned short lg, int& value);
00229 
00237    bool SetFEBias(unsigned short lg, int value);
00238 
00246    bool GetFEBias(unsigned short lg, int& value);
00247 
00255    bool GetFEBiasPolarity(unsigned short lg, bool& pol);
00256 
00264    bool SetFEBiasPolarity(unsigned short lg, bool pol);
00265 
00272    bool InvertFEBiasPolarity(unsigned short lg);
00273 
00281    bool SetFELoadResistor(unsigned short lg, bool rload);
00282 
00283 
00292    bool GetFELoadResistor(unsigned short lg, bool& rload);
00293 
00294 
00302    bool SetFEInput(unsigned short lg, bool input);
00303 
00304 
00313    bool GetFEInput(unsigned short lg, bool& input);
00314 
00315 
00316 
00323    bool AdjustFEOffset(unsigned short lg);
00324 
00325 
00333    bool SetFEOffsetDAC(unsigned short lg, int value);
00334 
00335 
00344    bool GetFEOffsetDAC(unsigned short lg, int& value);
00345 
00353    bool SetFEOffsetMSB(unsigned short lg, int value);
00354 
00355 
00363    bool GetFEOffsetMSB(unsigned short lg, int& value);
00364 
00372    bool GetFEOffsetPolarity(unsigned short lg, bool& pol);
00373 
00381    bool SetFEOffsetPolarity(unsigned short lg, bool pol);
00382 
00389    bool InvertFEOffsetPolarity(unsigned short lg);
00390 
00391    
00399    bool GetFEOffsetSpecialBit(unsigned short lg, bool& status);
00400 
00408    bool SetFEOffsetSpecialBit(unsigned short lg, bool status);
00409 
00416    bool InvertFEOffsetSpecialBit(unsigned short lg);
00417 
00418 
00419 
00420 
00421 
00429    bool SetBSCutFreq(unsigned short lg, int cutFreq);
00430 
00431 
00439    bool GetBSCutFreq(unsigned short lg, int& cutFreq);
00440 
00448    bool SetBSFilterEnable(unsigned short lg, bool status);
00449 
00457    bool GetBSFilterEnable(unsigned short lg, bool& status);
00458 
00465    bool TurnBSFilterON(unsigned short lg);
00466 
00473    bool TurnBSFilterOFF(unsigned short lg);
00474    
00483    bool SetPSupplyInterface(QSlowTypes::QSlowEleInterface_t iface);
00484 
00493    bool GetPSupplyInterface(QSlowTypes::QSlowEleInterface_t& iface);
00494 
00495 
00503    bool SetPSupplyVset(unsigned short channel, double vset);
00504 
00505    
00513    bool SetPSupplyIset(unsigned short channel, double iset);
00514 
00515 
00525    bool SetPSupplyVsetDiff(double vset);
00526 
00536    bool GetPSupplyVsetDiff(double& vset);
00537 
00548    bool GetPSupplyVoutDiff(double& vout);
00549 
00557    bool GetPSupplyVset(unsigned short channel, double& vset);
00558 
00566    bool GetPSupplyIset(unsigned short channel, double& iset);
00567 
00575    bool GetPSupplyVout(unsigned short channel, double& vout);
00576 
00584    bool GetPSupplyIout(unsigned short channel, double& iout);
00585 
00586 
00594    bool SetPSupplyOutputEnable(unsigned short channel, bool status);
00595 
00603    bool GetPSupplyOutputEnable(unsigned short channel, bool& status);
00604 
00611    bool TurnPSupplyOutputON(unsigned short channel);
00612 
00619    bool TurnPSupplyOutputOFF(unsigned short channel);
00620 
00621    
00622 };
00623 
00624 #endif

Generated on Fri Mar 6 13:40:39 2009 for CUORE Software by  doxygen 1.5.1