Added datafile and handling of MQTT publish message.
This commit is contained in:
44
aqhome/data/datafile.h
Normal file
44
aqhome/data/datafile.h
Normal file
@@ -0,0 +1,44 @@
|
||||
/****************************************************************************
|
||||
* This file is part of the project Gwenhywfar.
|
||||
* Gwenhywfar (c) by 2023 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_DATAFILE_H
|
||||
#define AQH_DATAFILE_H
|
||||
|
||||
|
||||
#include "aqhome/data/storage.h"
|
||||
|
||||
#include <gwenhywfar/list.h>
|
||||
|
||||
|
||||
typedef struct AQH_DATAFILE AQH_DATAFILE;
|
||||
GWEN_LIST_FUNCTION_LIB_DEFS(AQH_DATAFILE, AQH_DataFile, AQHOME_API)
|
||||
|
||||
|
||||
AQHOME_API AQH_DATAFILE *AQH_DataFile_new(const char *fileName, uint64_t valueId);
|
||||
AQHOME_API void AQH_DataFile_free(AQH_DATAFILE *df);
|
||||
|
||||
AQHOME_API int AQH_DataFile_Create(AQH_DATAFILE *df);
|
||||
AQHOME_API int AQH_DataFile_Open(AQH_DATAFILE *df);
|
||||
AQHOME_API int AQH_DataFile_Close(AQH_DATAFILE *df);
|
||||
|
||||
AQHOME_API const char *AQH_DataFile_GetFileName(const AQH_DATAFILE *df);
|
||||
AQHOME_API uint64_t AQH_DataFile_GetValueId(const AQH_DATAFILE *df);
|
||||
|
||||
AQHOME_API uint64_t AQH_DataFile_GetNumberOfEntries(const AQH_DATAFILE *df);
|
||||
|
||||
AQHOME_API uint32_t AQH_DataFile_GetRuntimeFlags(const AQH_DATAFILE *df);
|
||||
|
||||
AQHOME_API int AQH_DataFile_ReadRecord(AQH_DATAFILE *df, uint64_t idx, uint64_t *pTimestamp, double *pValue);
|
||||
AQHOME_API int AQH_DataFile_AppendRecord(AQH_DATAFILE *df, uint64_t timestamp, double value);
|
||||
|
||||
AQHOME_API AQH_DATAFILE *AQH_DataFile_List_GetByValueId(AQH_DATAFILE_LIST *fileList, uint64_t id);
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user