Update physical LEDs as part of Lamp test
- Add the getSubTreePaths method for utils and update all physical
LEDs.
- Uses GetSubTreePath on Physical LED paths and interfaces and
updates all the LEDs to ON as part of start or restart of the test.
- When the lamp test is stopped or the timer expires, all the LEDs
are turned OFF.
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I27727db62fe963a1a7c8b391d73801bcaf9efeec
diff --git a/lamptest.hpp b/lamptest.hpp
index ab33887..ffce377 100644
--- a/lamptest.hpp
+++ b/lamptest.hpp
@@ -1,5 +1,6 @@
#pragma once
+#include "group.hpp"
#include "manager.hpp"
#include <sdeventplus/utility/timer.hpp>
@@ -34,16 +35,17 @@
*/
LampTest(const sdeventplus::Event& event, Manager& manager) :
timer(event, std::bind(std::mem_fn(&LampTest::timeOutHandler), this)),
- manager(manager)
+ manager(manager), groupObj(NULL)
{}
/** @brief the lamp test request handler
*
+ * @param[in] group - Pointer to Group object
* @param[in] value - true: start lamptest
* false: stop lamptest
* @return
*/
- void requestHandler(bool value);
+ void requestHandler(Group* group, bool value);
private:
/** @brief Timer used for LEDs lamp test period */
@@ -52,6 +54,15 @@
/** @brief Reference to Manager object */
Manager& manager;
+ /** DBusHandler class handles the D-Bus operations */
+ DBusHandler dBusHandler;
+
+ /** @brief Pointer to Group object */
+ Group* groupObj;
+
+ /** all the Physical paths */
+ std::vector<std::string> physicalLEDPaths;
+
/** @brief Start and restart lamp test depending on what is the current
* state. */
void start();