cec: add a Close() method to the interface
[deb_libcec.git] / include / CECExportsCpp.h
index b49b1abdce050b02f7e52f8b93b4a0f34895018d..ac00190571599ea9510396faa83f489b25b79cb4 100644 (file)
@@ -41,6 +41,11 @@ namespace CEC
      */
     virtual bool Open(const char *strPort, int iTimeoutMs = 10000) = 0;
 
+    /*!
+     * @see cec_close
+     */
+    virtual bool Close(int iTimeoutMs = 2000) = 0;
+
     /*!
      * @see cec_find_devices
      */
@@ -91,15 +96,25 @@ namespace CEC
      */
     virtual bool GetNextKeypress(cec_keypress *key) = 0;
 
+    /*!
+     * @see cec_get_next_command
+     */
+    virtual bool GetNextCommand(cec_command *command) = 0;
+
     /*!
      * @see cec_transmit
      */
     virtual bool Transmit(const cec_frame &data, bool bWaitForAck = true, int64_t iTimeout = (int64_t) 5000) = 0;
 
     /*!
-     * @see cec_set_ack_mask
+     * @see cec_set_logical_address
+     */
+    virtual bool SetLogicalAddress(cec_logical_address iLogicalAddress) = 0;
+
+    /*!
+     * @deprecated use SetLogicalAddress() instead
      */
-    virtual bool SetAckMask(cec_logical_address ackmask) = 0;
+    virtual bool SetAckMask(uint16_t iMask) = 0;
 
     /*!
      * @see cec_get_min_version
@@ -128,7 +143,7 @@ static int g_iLibCECInstanceCount = 0;
  */
 inline CEC::ICECDevice *LoadLibCec(const char *strName, CEC::cec_logical_address iLogicalAddress = CEC::CECDEVICE_PLAYBACKDEVICE1, int iPhysicalAddress = CEC_DEFAULT_PHYSICAL_ADDRESS)
 {
-  typedef void* (__cdecl*_CreateLibCec)(const char *);
+  typedef void* (__cdecl*_CreateLibCec)(const char *, uint8_t, uint8_t);
   _CreateLibCec CreateLibCec;
 
   if (!g_libCEC)