return bReturn;
}
+bool CCECProcessor::IsInitialised(void)
+{
+ CLockObject lock(m_mutex);
+ return m_bInitialised;
+}
+
void CCECProcessor::SetInitialised(bool bSetTo /* = true */)
{
CLockObject lock(m_mutex);
void CCECProcessor::ReplaceHandlers(void)
{
+ if (!IsInitialised())
+ return;
for (uint8_t iPtr = 0; iPtr <= CECDEVICE_PLAYBACKDEVICE3; iPtr++)
m_busDevices[iPtr]->ReplaceHandler(m_bInitialised);
}
void CCECProcessor::HandlePoll(cec_logical_address initiator, cec_logical_address destination)
{
- m_busDevices[initiator]->GetHandler()->HandlePoll(initiator, destination);
+ m_busDevices[initiator]->HandlePoll(destination);
}
bool CCECProcessor::HandleReceiveFailed(cec_logical_address initiator)
{
- return !m_busDevices[initiator]->GetHandler()->HandleReceiveFailed();
+ return !m_busDevices[initiator]->HandleReceiveFailed();
}
virtual uint64_t GetLastTransmission(void) const { return m_iLastTransmission; }
virtual cec_logical_address GetActiveSource(void);
virtual bool IsActiveSource(cec_logical_address iAddress);
- virtual bool IsInitialised(void) const { return m_bInitialised; }
+ virtual bool IsInitialised(void);
virtual bool SetActiveView(void);
virtual bool SetActiveSource(cec_device_type type = CEC_DEVICE_TYPE_RESERVED);
return m_handler->ActivateSource();
}
+void CCECBusDevice::HandlePoll(cec_logical_address destination)
+{
+ CLockObject lock(m_handlerMutex);
+ m_handler->HandlePoll(m_iLogicalAddress, destination);
+}
+
+bool CCECBusDevice::HandleReceiveFailed(void)
+{
+ CLockObject lock(m_handlerMutex);
+ return m_handler->HandleReceiveFailed();
+}
+
//@}
virtual bool IsActiveSource(void) const { return m_bActiveSource; }
virtual bool IsUnsupportedFeature(cec_opcode opcode) const;
virtual void SetUnsupportedFeature(cec_opcode opcode);
+ virtual void HandlePoll(cec_logical_address initiator);
+ virtual bool HandleReceiveFailed(void);
virtual void SetInactiveSource(void);
virtual void SetActiveSource(void);