summaryrefslogtreecommitdiffstats
path: root/occ_status.hpp
diff options
context:
space:
mode:
authorVishwanatha Subbanna <vishwa@linux.vnet.ibm.com>2017-06-28 15:56:09 +0530
committerVishwanatha Subbanna <vishwa@linux.vnet.ibm.com>2017-07-04 12:26:27 +0530
commit307d80b3d78efc669f38a63938371adcc6934391 (patch)
tree3435e2bc4c20cf4a62f514d92612c38a19a966d4 /occ_status.hpp
parent2180b2daa8f2207c37308a09e12d08ed3317205c (diff)
downloadopenpower-occ-control-307d80b3d78efc669f38a63938371adcc6934391.tar.gz
openpower-occ-control-307d80b3d78efc669f38a63938371adcc6934391.zip
Implement OCC status interface
Change-Id: I43822cb28bc2d23398fb09352c9876e169c666f7 Signed-off-by: Vishwanatha Subbanna <vishwa@linux.vnet.ibm.com>
Diffstat (limited to 'occ_status.hpp')
-rw-r--r--occ_status.hpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/occ_status.hpp b/occ_status.hpp
new file mode 100644
index 0000000..068f83b
--- /dev/null
+++ b/occ_status.hpp
@@ -0,0 +1,48 @@
+#pragma once
+
+#include <sdbusplus/bus.hpp>
+#include <sdbusplus/server/object.hpp>
+#include <org/open_power/OCC/Status/server.hpp>
+namespace open_power
+{
+namespace occ
+{
+
+namespace Base = sdbusplus::org::open_power::OCC::server;
+using Interface = sdbusplus::server::object::object<Base::Status>;
+
+/** @class Status
+ * @brief Implementation of OCC Active Status
+ */
+class Status : public Interface
+{
+ public:
+ Status() = delete;
+ ~Status() = default;
+ Status(const Status&) = delete;
+ Status& operator=(const Status&) = delete;
+ Status(Status&&) = default;
+ Status& operator=(Status&&) = default;
+
+ /** @brief Constructs the Status object
+ *
+ * @param[in] bus - DBus bus to attach to
+ * @param[in] path - DBus object path
+ */
+ Status(sdbusplus::bus::bus& bus, const char* path)
+ : Interface(bus, path)
+ {
+ // Nothing to do here
+ }
+
+ /** @brief SET OccActive to True or False
+ *
+ * @param[in] value - Intended value
+ *
+ * @return - Updated value of the property
+ */
+ bool occActive(bool value) override;
+};
+
+} // namespace occ
+} // namespace open_power
OpenPOWER on IntegriCloud