本文整理汇总了C++中CCECBusDevice::TransmitPowerState方法的典型用法代码示例。如果您正苦于以下问题:C++ CCECBusDevice::TransmitPowerState方法的具体用法?C++ CCECBusDevice::TransmitPowerState怎么用?C++ CCECBusDevice::TransmitPowerState使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CCECBusDevice
的用法示例。
在下文中一共展示了CCECBusDevice::TransmitPowerState方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: InitHandler
bool CSLCommandHandler::InitHandler(void)
{
if (m_bHandlerInited)
return true;
m_bHandlerInited = true;
if (m_busDevice->GetLogicalAddress() != CECDEVICE_TV)
return true;
CCECBusDevice *primary = m_processor->GetPrimaryDevice();
if (primary && primary->GetLogicalAddress() != CECDEVICE_UNREGISTERED)
{
/* imitate LG devices */
if (m_busDevice->GetLogicalAddress() != primary->GetLogicalAddress())
{
primary->SetVendorId(CEC_VENDOR_LG);
primary->ReplaceHandler(false);
}
if (m_busDevice->GetLogicalAddress() == CECDEVICE_TV)
{
/* start as 'in transition standby->on' */
primary->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON);
primary->TransmitPowerState(CECDEVICE_TV, false);
/* send the vendor id */
primary->TransmitVendorID(CECDEVICE_BROADCAST, false, false);
}
}
return true;
}
示例2: HandleGiveDevicePowerStatus
int CSLCommandHandler::HandleGiveDevicePowerStatus(const cec_command &command)
{
if (m_processor->CECInitialised() && m_processor->IsHandledByLibCEC(command.destination) && command.initiator == CECDEVICE_TV)
{
CCECBusDevice *device = GetDevice(command.destination);
if (device && device->GetCurrentPowerStatus() != CEC_POWER_STATUS_ON)
{
device->TransmitPowerState(command.initiator, true);
device->SetPowerStatus(CEC_POWER_STATUS_ON);
}
else
{
if (!ActiveSourceSent())
{
device->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON);
device->TransmitPowerState(command.initiator, true);
ActivateSource();
}
else if (m_resetPowerState.IsSet() && m_resetPowerState.TimeLeft() > 0)
{
/* TODO assume that we've bugged out. the return button no longer works after this */
LIB_CEC->AddLog(CEC_LOG_WARNING, "FIXME: LG seems to have bugged out. resetting to 'in transition standby to on'. the return button will not work");
{
CLockObject lock(m_SLMutex);
m_bActiveSourceSent = false;
}
device->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON);
device->TransmitPowerState(command.initiator, true);
device->SetPowerStatus(CEC_POWER_STATUS_ON);
m_resetPowerState.Init(5000);
}
else
{
device->TransmitPowerState(command.initiator, true);
m_resetPowerState.Init(5000);
}
}
return COMMAND_HANDLED;
}
return CEC_ABORT_REASON_NOT_IN_CORRECT_MODE_TO_RESPOND;
}
示例3: HandleVendorCommandPowerOnStatus
void CSLCommandHandler::HandleVendorCommandPowerOnStatus(const cec_command &command)
{
if (command.destination != CECDEVICE_BROADCAST)
{
CCECBusDevice *device = m_processor->m_busDevices[m_processor->GetLogicalAddresses().primary];
device->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON);
device->TransmitPowerState(command.initiator);
device->SetPowerStatus(CEC_POWER_STATUS_ON);
}
}
示例4: HandleVendorCommandPowerOnStatus
void CSLCommandHandler::HandleVendorCommandPowerOnStatus(const cec_command &command)
{
if (command.destination != CECDEVICE_BROADCAST)
{
CCECBusDevice *device = m_processor->GetPrimaryDevice();
if (device)
{
device->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON);
device->TransmitPowerState(command.initiator, true);
device->SetPowerStatus(CEC_POWER_STATUS_ON);
}
}
}
示例5: HandleVendorCommandPowerOn
void CSLCommandHandler::HandleVendorCommandPowerOn(const cec_command &command)
{
if (command.initiator != CECDEVICE_TV)
return;
CCECBusDevice *device = m_processor->GetPrimaryDevice();
if (device)
{
SetSLInitialised();
device->MarkAsActiveSource();
device->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON);
device->TransmitPowerState(command.initiator, true);
CEvent::Sleep(2000);
device->SetPowerStatus(CEC_POWER_STATUS_ON);
device->TransmitPowerState(command.initiator, false);
device->TransmitPhysicalAddress(false);
{
CLockObject lock(m_SLMutex);
m_bActiveSourceSent = false;
}
}
}
示例6: HandleVendorCommandPowerOn
void CSLCommandHandler::HandleVendorCommandPowerOn(const cec_command &command)
{
CCECBusDevice *device = m_processor->GetPrimaryDevice();
if (device)
{
m_bSLEnabled = true;
device->SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON); //XXX
device->TransmitPowerState(command.initiator);
device->SetPowerStatus(CEC_POWER_STATUS_ON);
SetLGDeckStatus();
device->SetActiveSource();
TransmitImageViewOn(device->GetLogicalAddress(), command.initiator);
}
}