summaryrefslogtreecommitdiffstats
path: root/occ_pass_through.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'occ_pass_through.hpp')
-rw-r--r--occ_pass_through.hpp128
1 files changed, 63 insertions, 65 deletions
diff --git a/occ_pass_through.hpp b/occ_pass_through.hpp
index 384a065..a28eb6a 100644
--- a/occ_pass_through.hpp
+++ b/occ_pass_through.hpp
@@ -1,9 +1,9 @@
#pragma once
-#include <string>
+#include <org/open_power/OCC/PassThrough/server.hpp>
#include <sdbusplus/bus.hpp>
#include <sdbusplus/server/object.hpp>
-#include <org/open_power/OCC/PassThrough/server.hpp>
+#include <string>
namespace open_power
{
@@ -21,69 +21,67 @@ namespace sdbusRule = sdbusplus::bus::match::rules;
*/
class PassThrough : public Iface
{
- public:
- PassThrough() = delete;
- PassThrough(const PassThrough&) = delete;
- PassThrough& operator=(const PassThrough&) = delete;
- PassThrough(PassThrough&&) = default;
- PassThrough& operator=(PassThrough&&) = default;
-
- /** @brief Ctor to put pass-through d-bus object on the bus
- * @param[in] bus - Bus to attach to
- * @param[in] path - Path to attach at
- */
- PassThrough(sdbusplus::bus::bus& bus,
- const char* path);
-
- ~PassThrough()
- {
- closeDevice();
- }
-
- /** @brief Pass through command to OCC
- * @param[in] command - command to pass-through
- * @returns OCC response as an array
- */
- std::vector<std::int32_t>
- send(std::vector<std::int32_t> command) override;
-
- private:
- /** @brief Pass-through occ path on the bus */
- std::string path;
-
- /** @brief OCC device path
- * For now, here is the hard-coded mapping until
- * the udev rule is in.
- * occ0 --> /dev/occ1
- * occ1 --> /dev/occ2
- * ...
- */
- std::string devicePath;
-
- /** @brief Indicates whether or not the OCC is currently active */
- bool occActive = false;
-
- /** brief file descriptor associated with occ device */
- int fd = -1;
-
- /** @brief Subscribe to OCC Status signal
- *
- * Once the OCC status gets to active, only then we will get /dev/occ2
- * populated and hence need to wait on that before opening that
- */
- sdbusplus::bus::match_t activeStatusSignal;
-
- /** Opens devicePath and populates file descritor */
- void openDevice();
-
- /** Closed the fd associated with opened device */
- void closeDevice();
-
- /** @brief Callback function on OCC Status change signals
- *
- * @param[in] msg - Data associated with subscribed signal
- */
- void activeStatusEvent(sdbusplus::message::message& msg);
+ public:
+ PassThrough() = delete;
+ PassThrough(const PassThrough&) = delete;
+ PassThrough& operator=(const PassThrough&) = delete;
+ PassThrough(PassThrough&&) = default;
+ PassThrough& operator=(PassThrough&&) = default;
+
+ /** @brief Ctor to put pass-through d-bus object on the bus
+ * @param[in] bus - Bus to attach to
+ * @param[in] path - Path to attach at
+ */
+ PassThrough(sdbusplus::bus::bus& bus, const char* path);
+
+ ~PassThrough()
+ {
+ closeDevice();
+ }
+
+ /** @brief Pass through command to OCC
+ * @param[in] command - command to pass-through
+ * @returns OCC response as an array
+ */
+ std::vector<std::int32_t> send(std::vector<std::int32_t> command) override;
+
+ private:
+ /** @brief Pass-through occ path on the bus */
+ std::string path;
+
+ /** @brief OCC device path
+ * For now, here is the hard-coded mapping until
+ * the udev rule is in.
+ * occ0 --> /dev/occ1
+ * occ1 --> /dev/occ2
+ * ...
+ */
+ std::string devicePath;
+
+ /** @brief Indicates whether or not the OCC is currently active */
+ bool occActive = false;
+
+ /** brief file descriptor associated with occ device */
+ int fd = -1;
+
+ /** @brief Subscribe to OCC Status signal
+ *
+ * Once the OCC status gets to active, only then we will get /dev/occ2
+ * populated and hence need to wait on that before opening that
+ */
+ sdbusplus::bus::match_t activeStatusSignal;
+
+ /** Opens devicePath and populates file descritor */
+ void openDevice();
+
+ /** Closed the fd associated with opened device */
+ void closeDevice();
+
+ /** @brief Callback function on OCC Status change signals
+ *
+ * @param[in] msg - Data associated with subscribed signal
+ */
+ void activeStatusEvent(sdbusplus::message::message& msg);
};
} // namespace occ
OpenPOWER on IntegriCloud