blob: c01c34a375fc57eaff8d24dcbc0498e11c792e5c [file] [log] [blame]
Krzysztof Grobelny64b75a52020-09-18 10:17:16 +02001#pragma once
2
3#include <sdbusplus/asio/object_server.hpp>
4
5#include <chrono>
6#include <memory>
7#include <vector>
8
9class ReportManager
10{
11 public:
12 ReportManager(
13 const std::shared_ptr<sdbusplus::asio::object_server>& objServer);
14 ~ReportManager();
15
16 ReportManager(const ReportManager&) = delete;
17 ReportManager& operator=(const ReportManager&) = delete;
18
19 private:
20 std::shared_ptr<sdbusplus::asio::object_server> objServer;
21 std::shared_ptr<sdbusplus::asio::dbus_interface> reportManagerIntf;
22
23 static constexpr uint32_t maxReports{20};
24 static constexpr std::chrono::milliseconds minInterval{1000};
25};