| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #ifndef DATASTORAGECLIENT_H
- #define DATASTORAGECLIENT_H
- #include <memory>
- #include <string>
- namespace MySQL {
- class MySQLClient;
- } // namespace MySQL
- namespace DataStorage {
- class DataStorageClientImpl;
- class IDataStorageClient
- {
- public:
- virtual ~IDataStorageClient() {}
- public:
- virtual void LogValue(int deviceId, const std::string& dataName, int timestamp, int value) = 0;
- virtual void LogValue(int deviceId, const std::string& dataName, int timestamp, double value) = 0;
- virtual void LogValue(int deviceId, const std::string& dataName, int timestamp, const std::string& value) = 0;
- virtual void LogValueTimed(int deviceId, const std::string& dataName, int value) = 0;
- virtual void LogValueTimed(int deviceId, const std::string& dataName, double value) = 0;
- virtual void LogValueTimed(int deviceId, const std::string& dataName, const std::string& value) = 0;
- };
- class DataStorageClient : public IDataStorageClient
- {
- public:
- DataStorageClient(const std::shared_ptr<MySQL::MySQLClient>& pMySQLClient, const std::string& table);
- ~DataStorageClient();
- public:
- virtual void LogValue(int deviceId, const std::string& dataName, int timestamp, int value);
- virtual void LogValue(int deviceId, const std::string& dataName, int timestamp, double value);
- virtual void LogValue(int deviceId, const std::string& dataName, int timestamp, const std::string& value);
- virtual void LogValueTimed(int deviceId, const std::string& dataName, int value);
- virtual void LogValueTimed(int deviceId, const std::string& dataName, double value);
- virtual void LogValueTimed(int deviceId, const std::string& dataName, const std::string& value);
- public:
- void MetronomeCallback();
- private:
- std::unique_ptr<DataStorageClientImpl> m_pDataStorageClientImpl;
- };
- } // namespace DataStorage
- #endif // DATASTORAGECLIENT_H
|