This library allows to parse and work with data sent by the Paradigma pelletti oven.

Committer:
leihen
Date:
Sat Jun 22 10:59:05 2013 +0000
Revision:
0:4873b21e0bca
Child:
1:9c48326ad8c9
Fixes

Who changed what in which revision?

UserRevisionLine numberNew contents of line
leihen 0:4873b21e0bca 1 #ifndef __PARADIGMADATETIME_H__
leihen 0:4873b21e0bca 2 #define __PARADIGMADATETIME_H__
leihen 0:4873b21e0bca 3
leihen 0:4873b21e0bca 4 #include <string>
leihen 0:4873b21e0bca 5
leihen 0:4873b21e0bca 6 __packed class ParadigmaDateTime
leihen 0:4873b21e0bca 7 {
leihen 0:4873b21e0bca 8 protected:
leihen 0:4873b21e0bca 9 int bcdToDec(char n) const { return (((unsigned)n)>>4)*10 + (n&0x0f); }
leihen 0:4873b21e0bca 10
leihen 0:4873b21e0bca 11 private:
leihen 0:4873b21e0bca 12 unsigned char m_Date;
leihen 0:4873b21e0bca 13 unsigned char m_Month;
leihen 0:4873b21e0bca 14 unsigned char m_Minute;
leihen 0:4873b21e0bca 15 unsigned char m_Hour;
leihen 0:4873b21e0bca 16
leihen 0:4873b21e0bca 17
leihen 0:4873b21e0bca 18 public:
leihen 0:4873b21e0bca 19 ParadigmaDateTime() : m_Date(0), m_Month(0), m_Minute(0), m_Hour(0) {}
leihen 0:4873b21e0bca 20
leihen 0:4873b21e0bca 21 operator string() const { char Buffer[15]; sprintf(Buffer, "%02d.%02d, %02d:%02d", getDate(), getMonth(), getHour(), getMinute()); return Buffer; }
leihen 0:4873b21e0bca 22
leihen 0:4873b21e0bca 23 std::string getDateString() { char Buffer[15]; sprintf(Buffer, "%02d.%02d", getDate(), getMonth()); return Buffer; }
leihen 0:4873b21e0bca 24 std::string getTimeString() { char Buffer[15]; sprintf(Buffer, "%02d:%02d", getHour(), getMinute()); return Buffer; }
leihen 0:4873b21e0bca 25
leihen 0:4873b21e0bca 26 unsigned char getDate() const { return bcdToDec(m_Date); }
leihen 0:4873b21e0bca 27 unsigned char getMonth() const { return bcdToDec(m_Month); }
leihen 0:4873b21e0bca 28 unsigned char getMinute() const { return bcdToDec(m_Minute); }
leihen 0:4873b21e0bca 29 unsigned char getHour() const { return bcdToDec(m_Hour); }
leihen 0:4873b21e0bca 30 };
leihen 0:4873b21e0bca 31
leihen 0:4873b21e0bca 32 #endif // __PARADIGMADATETIME_H__