/**************************************************************************** * This file is part of the project AqHome. * AqHome (c) by 2025 Martin Preuss, all rights reserved. * * The license for this file can be found in the file COPYING which you * should have received along with this file. ****************************************************************************/ #ifndef AQH_M_IPCD_MULTIDATA_H #define AQH_M_IPCD_MULTIDATA_H #include #include #include #include #include #define AQH_MSGDATA_MULTIDATA_FLAGS_LASTMSG 0x0001 #define AQH_MSGDATA_MULTIDATA_TAGS_FLAGS 0x01 #define AQH_MSGDATA_MULTIDATA_TAGS_VALUE 0xc1 #define AQH_MSGDATA_MULTIDATA_TAGS_DATA 0xc2 AQHOME_API AQH_MESSAGE *AQH_IpcdMessageMultiData_new(uint16_t code, uint32_t msgId, uint32_t refMsgId, uint32_t flags, const AQH_VALUE *value, const uint64_t *i64Ptr, int numOfDataPoints); AQHOME_API AQH_MESSAGE *AQH_IpcdMessageMultiData_newForOne(uint16_t code, uint32_t msgId, uint32_t refMsgId, uint32_t flags, const AQH_VALUE *value, uint64_t timeStamp, double dataPoint); AQHOME_API uint32_t AQH_IpcdMessageMultiData_GetFlags(const GWEN_TAG16_LIST *tagList); AQHOME_API AQH_VALUE *AQH_IpcdMessageMultiData_ReadValue(const GWEN_TAG16_LIST *tagList); AQHOME_API void AQH_IpcdMessageMultiData_ReadDatapoints(const GWEN_TAG16_LIST *tagList, const uint64_t **pDataPtr, uint64_t *pNumberOfPoints); AQHOME_API void AQH_IpcdMessageMultiData_DumpToBuffer(const AQH_MESSAGE *msg, const GWEN_TAG16_LIST *tagList, GWEN_BUFFER *dbuf, const char *sText); #endif