cec: added callback methods to libCEC. enable them by calling EnableCallbacks(ICECCal...
[deb_libcec.git] / src / lib / LibCEC.h
index 7f604241e07618e5dfad47680c6c6c164c3f093a..dde69f4bae61afe55a24d38716a43d954e3f0d92 100644 (file)
@@ -53,6 +53,7 @@ namespace CEC
 
       virtual bool Open(const char *strPort, uint32_t iTimeout = 10000);
       virtual void Close(void);
+      virtual bool EnableCallbacks(ICECCallbacks *callbacks);
       virtual int8_t FindAdapters(cec_adapter *deviceList, uint8_t iBufSize, const char *strDevicePath = NULL);
       virtual bool PingAdapter(void);
       virtual bool StartBootloader(void);
@@ -92,8 +93,8 @@ namespace CEC
       virtual uint8_t VolumeUp(bool bSendRelease = true);
       virtual uint8_t VolumeDown(bool bSendRelease = true);
       virtual uint8_t MuteAudio(bool bSendRelease = true);
-      virtual bool SendKeypress(cec_logical_address iDestination, cec_user_control_code key, bool bWait = false);
-      virtual bool SendKeyRelease(cec_logical_address iDestination, bool bWait = false);
+      virtual bool SendKeypress(cec_logical_address iDestination, cec_user_control_code key, bool bWait = true);
+      virtual bool SendKeyRelease(cec_logical_address iDestination, bool bWait = true);
       virtual cec_osd_name GetDeviceOSDName(cec_logical_address iAddress);
       virtual bool EnablePhysicalAddressDetection(void);
       virtual cec_logical_address GetActiveSource(void);
@@ -126,5 +127,7 @@ namespace CEC
       CecBuffer<cec_log_message> m_logBuffer;
       CecBuffer<cec_keypress>    m_keyBuffer;
       CecBuffer<cec_command>     m_commandBuffer;
+      ICECCallbacks             *m_callbacks;
+      CMutex                     m_mutex;
   };
 };