cec: add GetDeviceCecVersion()/cec_get_device_cec_version() to the interface. mostly...
[deb_libcec.git] / src / lib / LibCECC.cpp
index 1c9ef4d3d8a68fa11027e830651d2c3ed5207bed..cdc27783d018f2c1401ea4e1f94f4374310d9639 100644 (file)
@@ -124,20 +124,27 @@ int cec_get_next_command(cec_command *command)
   return -1;
 }
 
-int cec_transmit(const CEC::cec_command &data, int bWaitForAck /* = true */)
+int cec_transmit(const CEC::cec_command &data)
 {
   if (cec_parser)
-    return cec_parser->Transmit(data, bWaitForAck == 1) ? 1 : 0;
+    return cec_parser->Transmit(data) ? 1 : 0;
   return -1;
 }
 
-int cec_set_logical_address(cec_logical_address iLogicalAddress)
+int cec_set_logical_address(cec_logical_address iLogicalAddress /* = CECDEVICE_PLAYBACKDEVICE1 */)
 {
   if (cec_parser)
     return cec_parser->SetLogicalAddress(iLogicalAddress) ? 1 : 0;
   return -1;
 }
 
+int cec_set_physical_address(uint16_t iPhysicalAddress /* = CEC_DEFAULT_PHYSICAL_ADDRESS */)
+{
+  if (cec_parser)
+    return cec_parser->SetPhysicalAddress(iPhysicalAddress) ? 1 : 0;
+  return -1;
+}
+
 int cec_power_on_devices(cec_logical_address address /* = CECDEVICE_TV */)
 {
   if (cec_parser)
@@ -166,4 +173,25 @@ int cec_set_inactive_view(void)
   return -1;
 }
 
+int cec_set_osd_string(cec_logical_address iLogicalAddress, cec_display_control duration, const char *strMessage)
+{
+  if (cec_parser)
+    return cec_parser->SetOSDString(iLogicalAddress, duration, strMessage) ? 1 : 0;
+  return -1;
+}
+
+int cec_switch_monitoring(int bEnable)
+{
+  if (cec_parser)
+    return cec_parser->SwitchMonitoring(bEnable == 1) ? 1 : 0;
+  return -1;
+}
+
+cec_version cec_get_device_cec_version(cec_logical_address iLogicalAddress)
+{
+  if (cec_parser)
+    return cec_parser->GetDeviceCecVersion(iLogicalAddress);
+  return CEC_VERSION_UNKNOWN;
+}
+
 //@}