void CUSBCECAdapterCommunication::Close(void)
{
+ SetAckMask(0);
CLockObject lock(m_mutex);
m_rcvCondition.Broadcast();
StopThread();
cec_adapter_message_state CUSBCECAdapterCommunication::Write(const cec_command &data, uint8_t iMaxTries, uint8_t iLineTimeout /* = 3 */, uint8_t iRetryLineTimeout /* = 3 */)
{
cec_adapter_message_state retVal(ADAPTER_MESSAGE_STATE_UNKNOWN);
+ if (!IsRunning())
+ return retVal;
CCECAdapterMessage *output = new CCECAdapterMessage(data);
bool CUSBCECAdapterCommunication::Read(cec_command &command, uint32_t iTimeout)
{
+ if (!IsRunning())
+ return false;
+
CCECAdapterMessage msg;
if (Read(msg, iTimeout))
{
uint16_t CUSBCECAdapterCommunication::GetFirmwareVersion(void)
{
- CLockObject lock(m_mutex);
uint16_t iReturn(m_iFirmwareVersion);
if (!IsRunning())
return iReturn;
if (iReturn == CEC_FW_VERSION_UNKNOWN)
{
+ CLockObject lock(m_mutex);
CLibCEC::AddLog(CEC_LOG_DEBUG, "requesting the firmware version");
CCECAdapterMessage *output = new CCECAdapterMessage;