diff options
Diffstat (limited to 'control/manager.hpp')
-rw-r--r-- | control/manager.hpp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/control/manager.hpp b/control/manager.hpp new file mode 100644 index 0000000..44f445e --- /dev/null +++ b/control/manager.hpp @@ -0,0 +1,55 @@ +#pragma once + +#include <memory> +#include <vector> +#include <sdbusplus/bus.hpp> +#include "types.hpp" + +namespace phosphor +{ +namespace fan +{ +namespace control +{ + +/** + * @class Fan control manager + */ +class Manager +{ + public: + + Manager() = delete; + Manager(const Manager&) = delete; + Manager(Manager&&) = default; + Manager& operator=(const Manager&) = delete; + Manager& operator=(Manager&&) = delete; + ~Manager() = default; + + /** + * Constructor + * Creates the Zone objects based on the + * _zoneLayouts data. + * + * @param[in] bus - The dbus object + */ + Manager(sdbusplus::bus::bus& bus); + + private: + + /** + * The dbus object + */ + sdbusplus::bus::bus& _bus; + + /** + * The fan zone layout for the system. + * This is generated data. + */ + static const std::vector<ZoneGroup> _zoneLayouts; +}; + + +} +} +} |