class BaseLoop: query for negative results added.

This commit is contained in:
Roland Jax
2014-05-01 22:40:22 +02:00
parent 30c6d2e5e1
commit fa57297735
3 changed files with 12 additions and 5 deletions
+1
View File
@@ -51,6 +51,7 @@ get;vwx;RunTimeHeating;Kompressor Laufzeit Heizung;MS;08;B509;3;0D9B00;1;-;sd;4,
get;vwx;RunTimeHotWater;Kompressor Laufzeit Warmwasser;MS;08;B509;3;0D9C00;1;-;sd;4,3,2,1;ulg;-;h;-;-;;;;;;;;;;;;;;;;;;;;;;;;
get;vwx;ServiceMode;Servicezeit;MS;08;B509;3;0D6600;1;-;sd;1;uch;-;-;-;-;;;;;;;;;;;;;;;;;;;;;;;;
get;vwx;SoftwareState;Software Status;MS;08;B509;3;0DCF00;1;-;sd;4,3,2,1;ulg;-;-;-;-;;;;;;;;;;;;;;;;;;;;;;;;
get;vwx;HeatPumpState;Heizungspumpe Status;MS;08;B509;3;0DD000;1;-;sd;1;uch;-;-;-;-;;;;;;;;;;;;;;;;;;;;;;;;
get;vwx;SwitchValve;Umschaltventil Heizen = 0 / Warmwasser = 1;MS;08;B509;3;0D1000;1;-;sd;1;uch;-;-;-;-;;;;;;;;;;;;;;;;;;;;;;;;
get;vwx;TempOutside;Aussentemperatur;MS;08;B509;3;0D0600;2;temp;sd;1,2;d2c;1.0;°C;-;Temperatur;sensor;sd;3;uch;-;-;-;Fühler;;;;;;;;;;;;;;;;
get;vwx;TempSpreadMax;Zulässige Temperaturspreizung T6 zu T7;MS;08;B509;3;0D6E00;1;-;sd;1,2;d2c;1.0;°C;-;-;;;;;;;;;;;;;;;;;;;;;;;;
1 # type class cmd comment msg type ZZ PBSB NN D1D2D3 elements sub part position datatype factor unit valid comment sub part position datatype factor unit valid comment sub part position datatype factor unit valid comment sub part position datatype factor unit valid comment
51 get vwx RunTimeHotWater Kompressor Laufzeit Warmwasser MS 08 B509 3 0D9C00 1 - sd 4,3,2,1 ulg - h - -
52 get vwx ServiceMode Servicezeit MS 08 B509 3 0D6600 1 - sd 1 uch - - - -
53 get vwx SoftwareState Software Status MS 08 B509 3 0DCF00 1 - sd 4,3,2,1 ulg - - - -
54 get vwx HeatPumpState Heizungspumpe Status MS 08 B509 3 0DD000 1 - sd 1 uch - - - -
55 get vwx SwitchValve Umschaltventil Heizen = 0 / Warmwasser = 1 MS 08 B509 3 0D1000 1 - sd 1 uch - - - -
56 get vwx TempOutside Aussentemperatur MS 08 B509 3 0D0600 2 temp sd 1,2 d2c 1.0 °C - Temperatur sensor sd 3 uch - - - Fühler
57 get vwx TempSpreadMax Zulässige Temperaturspreizung T6 zu T7 MS 08 B509 3 0D6E00 1 - sd 1,2 d2c 1.0 °C - -
Binary file not shown.
+11 -5
View File
@@ -98,13 +98,19 @@ std::string BaseLoop::decodeMessage(const std::string& data)
m_ebusloop->addBusCommand(new BusCommand(type, ebusCommand));
busCommand = m_ebusloop->getBusCommand();
// decode data
Command* command = new Command(index, (*m_commands)[index], busCommand->getResult().c_str());
if (busCommand->getResult().c_str()[0] != '-') {
// decode data
Command* command = new Command(index, (*m_commands)[index], busCommand->getResult().c_str());
// return result
result << command->calcResult(cmd);
delete command;
} else {
result << busCommand->getResult().c_str();
}
// return result
result << command->calcResult(cmd);
delete command;
delete busCommand;
} else {