//@{
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);
}
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;
}
//@{
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);
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);
}
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);