/*
 * Copyright (c) 2024 Markus Lehr.
 * 
 *
 * SPDX-License-Identifier: Owend property of Markus Lehr
 * 
 */


#ifndef RTS_INCLUDE_ISENSORDESC_H_
#define RTS_INCLUDE_ISENSORDESC_H_

#include <string>
#include <list>
#include <json.hpp>


using json = nlohmann::json;
static const std::string RTSMONSENSOR("sensors");
static const std::string RTSMONCHANNELS("channels");
static const std::string RTSMONVALUES("values");



class ISensorDesc
{

public:
   virtual int GetDescription() = 0;

   virtual bool AddHW2Json(json& j) = 0; 
   virtual u_int32_t AddValues2Json(json& j, u_int32_t* values, u_int32_t actno, u_int32_t length) = 0; 
};

#endif /* RTS_INCLUDE_ISENSORDESC_H_ */