#include #include "ledlayout.hpp" #include "manager.hpp" #include "group.hpp" #include "config.h" #include "led-gen.hpp" int main(void) { /** @brief Group manager object */ phosphor::led::Manager manager(systemLedMap); /** @brief Dbus constructs used by LED Group manager */ sdbusplus::bus::bus bus = sdbusplus::bus::new_default(); /** @brief sd_bus object manager */ sdbusplus::server::manager::manager objManager(bus, OBJPATH); /** @brief vector of led groups */ std::vector> groups; /** Now create so many dbus objects as there are groups */ for (auto &grp: systemLedMap) { groups.emplace_back(std::make_unique( bus, grp.first, manager)); } /** @brief Claim the bus */ bus.request_name(BUSNAME); /** @brief Wait for client requests */ while(true) { /** @brief process dbus calls / signals discarding unhandled */ bus.process_discard(); bus.wait(); } return 0; }