cec: added the new methods to LibCecSharp
[deb_libcec.git] / include / cec.h
index 44bf0244abdb8e6f5dbe29f59be811a28431223f..98adaf9309b7bc9119122b9eaf2419230deeb95a 100644 (file)
@@ -251,6 +251,13 @@ namespace CEC
      */
     virtual cec_power_status GetDevicePowerStatus(cec_logical_address iAddress) = 0;
 
+    /*!
+     * @brief Get the physical address of the device with the given logical address.
+     * @param iLogicalAddress The device to get the vendor id for.
+     * @return The physical address or 0 if it wasn't found.
+     */
+    virtual uint16_t GetDevicePhysicalAddress(cec_logical_address iAddress) = 0;
+
     /*!
      * @brief Sends a POLL message to a device.
      * @param iAddress The device to send the message to.
@@ -322,6 +329,19 @@ namespace CEC
      */
     virtual cec_osd_name GetOSDName(cec_logical_address iAddress) = 0;
 
+    /*!
+     * @brief Get the logical address of the device that is currently the active source on the CEC bus.
+     * @return The active source or CECDEVICE_UNKNOWN when unknown.
+     */
+    virtual cec_logical_address GetActiveSource(void) = 0;
+
+    /*!
+     * @brief Check whether a device is currently the active source on the CEC bus.
+     * @param iAddress The address to check.
+     * @return True when it is the active source, false otherwise.
+     */
+    virtual bool IsActiveSource(cec_logical_address iAddress) = 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;