#include "CECCommandHandler.h"
#include "../devices/CECBusDevice.h"
+#include "../devices/CECAudioSystem.h"
#include "../CECProcessor.h"
using namespace CEC;
case CEC_OPCODE_USER_CONTROL_RELEASE:
HandleUserControlRelease(command);
break;
+ case CEC_OPCODE_GIVE_AUDIO_STATUS:
+ HandleGiveAudioStatus(command);
+ break;
default:
UnhandledCommand(command);
m_busDevice->GetProcessor()->AddCommand(command);
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->ReportCECVersion(command.initiator);
+ return device->TransmitCECVersion(command.initiator);
+
+ return false;
+}
+
+bool CCECCommandHandler::HandleGiveAudioStatus(const cec_command &command)
+{
+ CCECBusDevice *device = GetDevice(command.destination);
+ if (device && device->GetType() == CEC_DEVICE_TYPE_AUDIO_SYSTEM)
+ return ((CCECAudioSystem *) device)->TransmitAudioStatus(command.initiator);
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->ReportDeckStatus(command.initiator);
+ return device->TransmitDeckStatus(command.initiator);
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->ReportPowerState(command.initiator);
+ return device->TransmitPowerState(command.initiator);
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->ReportVendorID(command.initiator);
+ return device->TransmitVendorID(command.initiator);
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->ReportOSDName(command.initiator);
+ return device->TransmitOSDName(command.initiator);
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->BroadcastPhysicalAddress();
+ return device->TransmitPhysicalAddress();
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->ReportMenuState(command.initiator);
+ return device->TransmitMenuState(command.initiator);
}
return false;
}
m_busDevice->AddLog(CEC_LOG_DEBUG, strLog.c_str());
CCECBusDevice *device = m_busDevice->GetProcessor()->m_busDevices[m_busDevice->GetMyLogicalAddress()];
if (device)
- return device->BroadcastActiveSource();
+ return device->TransmitActiveSource();
return false;
}
{
CCECBusDevice *device = GetDevice(command.destination);
if (device)
- return device->BroadcastActiveSource();
+ return device->TransmitActiveSource();
return false;
}
}