QEleNetworkInterface.hh
Go to the documentation of this file.00001
00007 #ifndef QELE_NETWORK_INTERFACE_HH
00008 #define QELE_NETWORK_INTERFACE_HH
00009
00010
00011
00012 #include <string>
00013
00014
00015 #include "QCuore.hh"
00016 #include "QError.hh"
00017 #include "QEleBaseInterface.hh"
00018 #include "QSlowBridgeClient.hh"
00019
00020 class QEleNetworkInterface: public QEleBaseInterface
00021 {
00022 public:
00023
00024
00026 QEleNetworkInterface();
00027
00029 virtual ~QEleNetworkInterface();
00030
00031
00032
00033 virtual void Open();
00034
00035
00036 virtual void Close();
00037
00038
00039 const bool IsOpen() const {return fIsOpen;}
00040
00041
00042
00043 virtual void WriteFrontEnd(const QEleLib::QEleAddress &Add, size_t Reg, char Data);
00044 virtual void ReadFrontEnd (const QEleLib::QEleAddress &Add, size_t Reg, char& Data);
00045
00046
00047 virtual void WriteBessel(const QEleLib::QEleAddress &Add, char Data);
00048 virtual void ReadBessel (const QEleLib::QEleAddress &Add, char& Data);
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058 virtual void WritePulserAttenuation(const QEleLib::QEleAddress &Add, char Attenuation);
00059 virtual void ReadPulserAttenuation (const QEleLib::QEleAddress &Add, char& Attenuation);
00060 virtual void WritePulserStatus(const QEleLib::QEleAddress &Add, char Time, char LowDAC, char Status);
00061 virtual void ReadPulserStatus (const QEleLib::QEleAddress &Add, char& Time, char& LowDAC, char& Status);
00062
00063
00064
00065 virtual const bool IsError() const {return fIsError;}
00066 virtual const std::string& GetErrorString()const {return fErrorString;}
00067 virtual const QError_ GetQErrorCode() const {return fQErrorCode;}
00068
00069 protected:
00070
00071 private:
00072
00073
00074 bool fIsOpen;
00075
00076
00077 bool fIsError;
00078 std::string fErrorString;
00079 QError_ fQErrorCode;
00080
00081 QSlowBridgeClient fClient;
00082
00083
00084 void ErrorReset();
00085
00086
00087 bool DecodeError(int Code);
00088
00089 };
00090
00091 #endif