diff --git a/occ_pass_through.hpp b/occ_pass_through.hpp
index a1e1e91..52a8f71 100644
--- a/occ_pass_through.hpp
+++ b/occ_pass_through.hpp
@@ -1,6 +1,7 @@
 #pragma once
 
 #include "occ_command.hpp"
+#include "powermode.hpp"
 #include "utils.hpp"
 
 #include <fmt/core.h>
@@ -39,7 +40,13 @@
     /** @brief Ctor to put pass-through d-bus object on the bus
      *  @param[in] path - Path to attach at
      */
-    explicit PassThrough(const char* path);
+    explicit PassThrough(
+        const char* path
+#ifdef POWER10
+        ,
+        std::unique_ptr<open_power::occ::powermode::PowerMode>& powerModeRef
+#endif
+    );
 
     /** @brief Pass through command to OCC from dbus
      *  @param[in] command - command to pass-through
@@ -53,10 +60,24 @@
      */
     std::vector<std::uint8_t> send(std::vector<std::uint8_t> command);
 
+    /** @brief Set a Power Mode
+     *
+     *  @param[in] mode - desired System Power Mode
+     *  @param[in] modeData - data associated some Power Modes
+     *
+     *  @returns true if mode change was accepted
+     */
+    bool setMode(const uint8_t mode, const uint16_t modeData);
+
   private:
     /** @brief Pass-through occ path on the bus */
     std::string path;
 
+#ifdef POWER10
+    /** @brief OCC PowerMode object */
+    std::unique_ptr<open_power::occ::powermode::PowerMode>& pmode;
+#endif
+
     /** @brief OCC device path
      *  For now, here is the hard-coded mapping until
      *  the udev rule is in.
