cec: rewrote an assignment within a condition, so the silly vs compiler understands...
[deb_libcec.git] / include / cectypes.h
index ab4dcd862de8faeb5ed264fe81bb1b55405851a0..3b81bdce41444c62a2b8280da875856e88e1b779 100644 (file)
@@ -64,6 +64,7 @@ namespace CEC {
 #define MSGESC                       0xFD
 #define ESCOFFSET                    3
 #define CEC_BUTTON_TIMEOUT           500
+#define CEC_POWER_STATE_REFRESH_TIME 30000
 
 #define CEC_DEFAULT_TRANSMIT_TIMEOUT 1000
 #define CEC_DEFAULT_TRANSMIT_WAIT    2000
@@ -599,13 +600,14 @@ typedef enum cec_bus_device_status
 
 typedef enum cec_vendor_id
 {
-  CEC_VENDOR_SAMSUNG   = 0x00F0,
-  CEC_VENDOR_LG        = 0xE091,
-  CEC_VENDOR_PANASONIC = 0x8045,
-  CEC_VENDOR_PIONEER   = 0xE036,
-  CEC_VENDOR_ONKYO     = 0x09B0,
-  CEC_VENDOR_YAMAHA    = 0xA0DE,
-  CEC_VENDOR_PHILIPS   = 0x903E,
+  CEC_VENDOR_SAMSUNG   = 0x0000F0,
+  CEC_VENDOR_LG        = 0x00E091,
+  CEC_VENDOR_PANASONIC = 0x008045,
+  CEC_VENDOR_PIONEER   = 0x00E036,
+  CEC_VENDOR_ONKYO     = 0x0009B0,
+  CEC_VENDOR_YAMAHA    = 0x00A0DE,
+  CEC_VENDOR_PHILIPS   = 0x00903E,
+  CEC_VENDOR_SONY      = 0x080046,
   CEC_VENDOR_UNKNOWN   = 0
 } cec_vendor_id;
 
@@ -864,6 +866,30 @@ typedef struct cec_logical_addresses
 #endif
 } cec_logical_addresses;
 
+struct ICECCallbacks
+{
+  /*!
+   * @brief Transfer a log message from libCEC to the client.
+   * @param message The message to transfer.
+   * @return 1 when ok, 0 otherwise.
+   */
+  int (*CecLogMessage)(const cec_log_message &message);
+
+  /*!
+   * @brief Transfer a keypress from libCEC to the client.
+   * @param key The keypress to transfer.
+   * @return 1 when ok, 0 otherwise.
+   */
+  int (*CecKeyPress)(const cec_keypress &key);
+
+  /*!
+   * @brief Transfer a CEC command from libCEC to the client.
+   * @param command The command to transfer.
+   * @return 1 when ok, 0 otherwise.
+   */
+  int (*CecCommand)(const cec_command &command);
+};
+
 #ifdef UNUSED
 #elif defined(__GNUC__)
 #define UNUSED(x) UNUSED_ ## x __attribute__((unused))