Implemented GETLASTDATA in server and aqhome-tool.

This commit is contained in:
Martin Preuss
2023-09-11 22:55:38 +02:00
parent 518a3a53f9
commit 71f5ce8c7e
14 changed files with 408 additions and 51 deletions

View File

@@ -225,27 +225,9 @@ int _doGetDataPoints(GWEN_DB_NODE *dbArgs)
code=GWEN_IpcMsg_GetCode(msg);
if (code==AQH_MSGTYPE_IPC_DATA_GETDATA_RSP) {
if (AQH_DataPointsDataIpcMsg_IsValid(msg)) {
const uint64_t *dataPoints;
const char *valueUnits;
uint32_t numValues;
uint32_t i;
dataPoints=AQH_DataPointsDataIpcMsg_GetDataPoints(msg);
valueUnits=AQH_DataPointsDataIpcMsg_GetUnits(msg);
numValues=AQH_DataPointsDataIpcMsg_GetNumValues(msg);
for(i=0; i<numValues; i++) {
uint64_t timestamp;
union {double f; uint64_t i;} u;
timestamp=*(dataPoints++);
u.i=*(dataPoints++);
fprintf(stdout, "%lu\t%lf\t%s\n",
(unsigned long int) timestamp,
u.f,
valueUnits?valueUnits:"");
}
Utils_PrintDataPoints(AQH_DataPointsDataIpcMsg_GetDataPoints(msg),
AQH_DataPointsDataIpcMsg_GetNumValues(msg),
AQH_DataPointsDataIpcMsg_GetUnits(msg));
if (AQH_DataPointsDataIpcMsg_GetFlags(msg) & AQH_MSGDATA_DATAPOINTS_FLAGS_LASTMSG) {
DBG_INFO(NULL, "Last message received");
break;