cec: added ToString(cec_version)
[deb_libcec.git] / src / lib / devices / CECBusDevice.cpp
index 49ca7db7ce64592db298735d361d040f08b23149..dc6d4f8832c1ff477d74244279cd5f334a01a65d 100644 (file)
@@ -247,28 +247,10 @@ bool CCECBusDevice::MyLogicalAddressContains(cec_logical_address address) const
 //@{
 void CCECBusDevice::SetCecVersion(const cec_version newVersion)
 {
-  CStdString strLog;
   m_cecVersion = newVersion;
 
-  switch (newVersion)
-  {
-  case CEC_VERSION_1_2:
-    strLog.Format("%s (%X): CEC version 1.2", GetLogicalAddressName(), m_iLogicalAddress);
-    break;
-  case CEC_VERSION_1_2A:
-    strLog.Format("%s (%X): CEC version 1.2a", GetLogicalAddressName(), m_iLogicalAddress);
-    break;
-  case CEC_VERSION_1_3:
-    strLog.Format("%s (%X): CEC version 1.3", GetLogicalAddressName(), m_iLogicalAddress);
-    break;
-  case CEC_VERSION_1_3A:
-    strLog.Format("%s (%X): CEC version 1.3a", GetLogicalAddressName(), m_iLogicalAddress);
-    break;
-  default:
-    strLog.Format("%s (%X): unknown CEC version", GetLogicalAddressName(), m_iLogicalAddress);
-    m_cecVersion = CEC_VERSION_UNKNOWN;
-    break;
-  }
+  CStdString strLog;
+  strLog.Format("%s (%X): CEC version %s", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(newVersion));
   AddLog(CEC_LOG_DEBUG, strLog);
 }
 
@@ -315,7 +297,7 @@ void CCECBusDevice::SetPowerStatus(const cec_power_status powerStatus)
   if (m_powerStatus != powerStatus)
   {
     CStdString strLog;
-    strLog.Format(">> %s (%X): power status changed from %2x to %2x", GetLogicalAddressName(), m_iLogicalAddress, m_powerStatus, powerStatus);
+    strLog.Format(">> %s (%X): power status changed from '%s' to '%s'", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(m_powerStatus), CCECCommandHandler::ToString(powerStatus));
     m_processor->AddLog(CEC_LOG_DEBUG, strLog);
     m_powerStatus = powerStatus;
   }
@@ -368,7 +350,13 @@ void CCECBusDevice::SetVendorId(uint64_t iVendorId, uint8_t iVendorClass /* = 0
 //@{
 bool CCECBusDevice::TransmitActiveSource(void)
 {
-  if (m_bActiveSource)
+  if (m_powerStatus != CEC_POWER_STATUS_ON)
+  {
+    CStdString strLog;
+    strLog.Format("<< %s (%X) is not powered on", GetLogicalAddressName(), m_iLogicalAddress);
+    AddLog(CEC_LOG_DEBUG, strLog);
+  }
+  else if (m_bActiveSource)
   {
     CStdString strLog;
     strLog.Format("<< %s (%X) -> broadcast (F): active source (%4x)", GetLogicalAddressName(), m_iLogicalAddress, m_iPhysicalAddress);
@@ -394,30 +382,12 @@ bool CCECBusDevice::TransmitActiveSource(void)
 bool CCECBusDevice::TransmitCECVersion(cec_logical_address dest)
 {
   CStdString strLog;
-  strLog.Format("<< %s (%X) -> %s (%X): cec version ", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(dest), dest);
-  switch (m_cecVersion)
-  {
-  case CEC_VERSION_1_2:
-    strLog.append("1.2");
-    break;
-  case CEC_VERSION_1_2A:
-    strLog.append("1.2a");
-    break;
-  case CEC_VERSION_1_3:
-    strLog.append("1.3");
-    break;
-  case CEC_VERSION_1_3A:
-    strLog.append("1.3a");
-    break;
-  default:
-    strLog.append("unknown");
-    break;
-  }
+  strLog.Format("<< %s (%X) -> %s (%X): cec version %s", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(dest), dest, CCECCommandHandler::ToString(m_cecVersion));
   AddLog(CEC_LOG_NOTICE, strLog);
 
   cec_command command;
   cec_command::format(command, m_iLogicalAddress, dest, CEC_OPCODE_CEC_VERSION);
-  command.parameters.push_back(m_cecVersion);
+  command.parameters.push_back((uint8_t)m_cecVersion);
 
   return m_processor->Transmit(command);
 }
@@ -524,31 +494,9 @@ bool CCECBusDevice::TransmitPoll(cec_logical_address dest)
 bool CCECBusDevice::TransmitPowerState(cec_logical_address dest)
 {
   CStdString strLog;
-  strLog.Format("<< %s (%X) -> %s (%X): ", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(dest), dest);
-
-  switch (m_powerStatus)
-  {
-  case CEC_POWER_STATUS_ON:
-    strLog.append("powered on");
-    break;
-  case CEC_POWER_STATUS_STANDBY:
-    strLog.append("in standby mode");
-    break;
-  case CEC_POWER_STATUS_IN_TRANSITION_ON_TO_STANDBY:
-    strLog.append("in transition from on to standby");
-    break;
-  case CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON:
-    strLog.append("in transition from standby to on");
-    break;
-  default:
-    strLog.append("power state unknown");
-    break;
-  }
+  strLog.Format("<< %s (%X) -> %s (%X): %s", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(dest), dest, CCECCommandHandler::ToString(m_powerStatus));
   AddLog(CEC_LOG_NOTICE, strLog.c_str());
 
-  strLog.Format("<< reporting power status '%d'", m_powerStatus);
-  AddLog(CEC_LOG_NOTICE, strLog);
-
   cec_command command;
   cec_command::format(command, m_iLogicalAddress, dest, CEC_OPCODE_REPORT_POWER_STATUS);
   command.parameters.push_back((uint8_t) m_powerStatus);