break;
case CEC_OPCODE_SET_MENU_LANGUAGE:
HandleSetMenuLanguage(command);
+ /* pass to listeners */
m_busDevice->GetProcessor()->AddCommand(command);
break;
case CEC_OPCODE_GIVE_PHYSICAL_ADDRESS:
break;
default:
UnhandledCommand(command);
+ /* pass to listeners */
m_busDevice->GetProcessor()->AddCommand(command);
bHandled = false;
break;
{
case CEC_OPCODE_SET_MENU_LANGUAGE:
HandleSetMenuLanguage(command);
+ /* pass to listeners */
m_busDevice->GetProcessor()->AddCommand(command);
break;
case CEC_OPCODE_REQUEST_ACTIVE_SOURCE:
break;
case CEC_OPCODE_SET_STREAM_PATH:
HandleSetStreamPath(command);
- m_busDevice->GetProcessor()->AddCommand(command);
break;
case CEC_OPCODE_ROUTING_CHANGE:
HandleRoutingChange(command);
- m_busDevice->GetProcessor()->AddCommand(command);
break;
case CEC_OPCODE_DEVICE_VENDOR_ID:
HandleDeviceVendorId(command);
case CEC_OPCODE_VENDOR_COMMAND_WITH_ID:
HandleDeviceVendorCommandWithId(command);
break;
+ case CEC_OPCODE_STANDBY:
+ HandleStandby(command);
+ /* pass to listeners */
+ m_busDevice->GetProcessor()->AddCommand(command);
+ break;
default:
UnhandledCommand(command);
+ /* pass to listeners */
m_busDevice->GetProcessor()->AddCommand(command);
bHandled = false;
break;
return true;
}
+bool CCECCommandHandler::HandleStandby(const cec_command &command)
+{
+ CCECBusDevice *device = GetDevice(command.initiator);
+ if (device)
+ device->SetPowerStatus(CEC_POWER_STATUS_STANDBY);
+ return true;
+}
+
bool CCECCommandHandler::HandleGiveSystemAudioModeStatus(const cec_command &command)
{
CCECBusDevice *device = GetDevice(command.destination);
virtual bool HandleSetMenuLanguage(const cec_command &command);
virtual bool HandleSetStreamPath(const cec_command &command);
virtual bool HandleSetSystemAudioModeRequest(const cec_command &command);
+ virtual bool HandleStandby(const cec_command &command);
virtual bool HandleGiveSystemAudioModeStatus(const cec_command &command);
virtual bool HandleUserControlPressed(const cec_command &command);
virtual bool HandleUserControlRelease(const cec_command &command);