00001 #ifndef _Q_HEATER_DECODER_HH_
00002 #define _Q_HEATER_DECODER_HH_
00003
00004 #include "QCuore.hh"
00005 #include <list>
00006
00007 class QHeaterDecoder
00008 {
00009 public:
00016 QHeaterDecoder(const unsigned short& version);
00017
00019 virtual ~QHeaterDecoder();
00020
00021 bool SetWords(const std::list<unsigned long>& words);
00022
00023 virtual short GetPulseId() const { return fPulseId; }
00024 virtual short GetConfId() const { return fConfId; }
00025 virtual short GetAmplitude() const { return fAmplitude; }
00026 virtual short GetDuration() const { return fDuration; }
00027 virtual short GetAttenuation() const { return fAttenuation; }
00028 private:
00029 unsigned short fVersion;
00030
00031 short fPulseId;
00032 short fConfId;
00033 short fAmplitude;
00034 short fDuration;
00035 short fAttenuation;
00036
00037 void Reset();
00038
00039 bool SetWords_v0(const std::list<unsigned long>& words);
00040 bool SetWords_v1(const std::list<unsigned long>& words);
00041 };
00042
00043 #endif