cec: added SetStreamPath()/cec_set_stream_path_logical()/cec_set_stream_path_physical...
[deb_libcec.git] / include / cec.h
index 0e463eb91fb4a88359f0a3b723dcc90681b81ac6..97e75a46f8e778b7d05471c9ea1e3f58afa81c97 100644 (file)
@@ -2,7 +2,7 @@
 /*
  * This file is part of the libCEC(R) library.
  *
- * libCEC(R) is Copyright (C) 2011 Pulse-Eight Limited.  All rights reserved.
+ * libCEC(R) is Copyright (C) 2011-2012 Pulse-Eight Limited.  All rights reserved.
  * libCEC(R) is an original work, containing original code.
  *
  * libCEC(R) is a trademark of Pulse-Eight Limited.
@@ -60,10 +60,11 @@ namespace CEC
 
     /*!
      * @brief Set and enable the callback methods. If this method is not called, the GetNext...() methods will have to be used.
+     * @param cbParam Parameter to pass to callback methods.
      * @param callbacks The callbacks to set.
      * @return True when enabled, false otherwise.
      */
-    virtual bool EnableCallbacks(ICECCallbacks *callbacks) = 0;
+    virtual bool EnableCallbacks(void *cbParam, ICECCallbacks *callbacks) = 0;
 
     /*!
      * @brief Try to find all connected CEC adapters. Only implemented on Linux and Windows at the moment.
@@ -349,6 +350,20 @@ namespace CEC
      */
     virtual bool IsActiveSource(cec_logical_address iAddress) = 0;
 
+    /*!
+     * @brief Sets the stream path to the device on the given logical address.
+     * @param iAddress The address to activate.
+     * @return True when the command was sent, false otherwise.
+     */
+    virtual bool SetStreamPath(cec_logical_address iAddress) = 0;
+
+    /*!
+     * @brief Sets the stream path to the device on the given logical address.
+     * @param iPhysicalAddress The address to activate.
+     * @return True when the command was sent, false otherwise.
+     */
+    virtual bool SetStreamPath(uint16_t iPhysicalAddress) = 0;
+
     virtual const char *ToString(const cec_menu_state state) = 0;
     virtual const char *ToString(const cec_version version) = 0;
     virtual const char *ToString(const cec_power_status status) = 0;