repositories
/
deb_libcec.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cec: reset m_bStop to false in CreateThread()
[deb_libcec.git]
/
src
/
lib
/
AdapterCommunication.cpp
diff --git
a/src/lib/AdapterCommunication.cpp
b/src/lib/AdapterCommunication.cpp
index d33ad2f84165b1fb52ddede687487430cf158ee9..faa15aa27100e2f1dcc32e9b86aafd047c999b53 100644
(file)
--- a/
src/lib/AdapterCommunication.cpp
+++ b/
src/lib/AdapterCommunication.cpp
@@
-33,12
+33,11
@@
#include "AdapterCommunication.h"
#include "CECProcessor.h"
#include "AdapterCommunication.h"
#include "CECProcessor.h"
-#include "platform/serialport.h"
-#include "util/StdString.h"
-#include "platform/timeutils.h"
+#include "platform/serialport/serialport.h"
using namespace std;
using namespace CEC;
using namespace std;
using namespace CEC;
+using namespace PLATFORM;
CCECAdapterMessage::CCECAdapterMessage(const cec_command &command)
{
CCECAdapterMessage::CCECAdapterMessage(const cec_command &command)
{
@@
-197,9
+196,9
@@
CStdString CCECAdapterMessage::ToString(void) const
case MSGCODE_HIGH_ERROR:
case MSGCODE_LOW_ERROR:
{
case MSGCODE_HIGH_ERROR:
case MSGCODE_LOW_ERROR:
{
-
int iLine
= (size() >= 3) ? (at(1) << 8) | at(2) : 0;
+
uint32_t iLine
= (size() >= 3) ? (at(1) << 8) | at(2) : 0;
uint32_t iTime = (size() >= 7) ? (at(3) << 24) | (at(4) << 16) | (at(5) << 8) | at(6) : 0;
uint32_t iTime = (size() >= 7) ? (at(3) << 24) | (at(4) << 16) | (at(5) << 8) | at(6) : 0;
- strMsg.AppendFormat(" line:%
i
", iLine);
+ strMsg.AppendFormat(" line:%
u
", iLine);
strMsg.AppendFormat(" time:%u", iTime);
}
break;
strMsg.AppendFormat(" time:%u", iTime);
}
break;
@@
-249,7
+248,7
@@
CAdapterCommunication::CAdapterCommunication(CCECProcessor *processor) :
m_processor(processor),
m_iLineTimeout(0)
{
m_processor(processor),
m_iLineTimeout(0)
{
- m_port = new CSerialPort;
+ m_port = new
PLATFORM::
CSerialPort;
}
CAdapterCommunication::~CAdapterCommunication(void)
}
CAdapterCommunication::~CAdapterCommunication(void)
@@
-268,7
+267,7
@@
bool CAdapterCommunication::Open(const char *strPort, uint16_t iBaudRate /* = 38
uint64_t iNow = GetTimeMs();
uint64_t iTimeout = iNow + iTimeoutMs;
uint64_t iNow = GetTimeMs();
uint64_t iTimeout = iNow + iTimeoutMs;
- CLockObject lock(
&
m_mutex);
+ CLockObject lock(m_mutex);
if (!m_port)
{
if (!m_port)
{
@@
-286,7
+285,7
@@
bool CAdapterCommunication::Open(const char *strPort, uint16_t iBaudRate /* = 38
bool bConnected(false);
while (!bConnected && iNow < iTimeout)
{
bool bConnected(false);
while (!bConnected && iNow < iTimeout)
{
- if (
!(bConnected = m_port->Open(strPort, iBaudRate))
)
+ if (
(bConnected = m_port->Open(strPort, iBaudRate)) == false
)
{
strError.Format("error opening serial port '%s': %s", strPort, m_port->GetError().c_str());
Sleep(250);
{
strError.Format("error opening serial port '%s': %s", strPort, m_port->GetError().c_str());
Sleep(250);
@@
-308,7
+307,7
@@
bool CAdapterCommunication::Open(const char *strPort, uint16_t iBaudRate /* = 38
if (CreateThread())
{
if (CreateThread())
{
- m_startCondition.Wait(
&
m_mutex);
+ m_startCondition.Wait(m_mutex);
m_processor->AddLog(CEC_LOG_DEBUG, "communication thread started");
return true;
}
m_processor->AddLog(CEC_LOG_DEBUG, "communication thread started");
return true;
}
@@
-322,7
+321,7
@@
bool CAdapterCommunication::Open(const char *strPort, uint16_t iBaudRate /* = 38
void CAdapterCommunication::Close(void)
{
void CAdapterCommunication::Close(void)
{
- CLockObject lock(
&
m_mutex);
+ CLockObject lock(m_mutex);
m_startCondition.Broadcast();
m_rcvCondition.Broadcast();
StopThread();
m_startCondition.Broadcast();
m_rcvCondition.Broadcast();
StopThread();
@@
-331,7
+330,7
@@
void CAdapterCommunication::Close(void)
void *CAdapterCommunication::Process(void)
{
{
void *CAdapterCommunication::Process(void)
{
{
- CLockObject lock(
&
m_mutex);
+ CLockObject lock(m_mutex);
m_startCondition.Signal();
}
m_startCondition.Signal();
}
@@
-372,8
+371,8
@@
bool CAdapterCommunication::ReadFromDevice(uint32_t iTimeout)
void CAdapterCommunication::AddData(uint8_t *data, uint8_t iLen)
{
void CAdapterCommunication::AddData(uint8_t *data, uint8_t iLen)
{
- CLockObject lock(
&
m_mutex);
- for (u
nsigned in
t iPtr = 0; iPtr < iLen; iPtr++)
+ CLockObject lock(m_mutex);
+ for (u
int8_
t iPtr = 0; iPtr < iLen; iPtr++)
m_inBuffer.Push(data[iPtr]);
m_rcvCondition.Signal();
m_inBuffer.Push(data[iPtr]);
m_rcvCondition.Signal();
@@
-388,8
+387,8
@@
void CAdapterCommunication::WriteNextCommand(void)
void CAdapterCommunication::SendMessageToAdapter(CCECAdapterMessage *msg)
{
void CAdapterCommunication::SendMessageToAdapter(CCECAdapterMessage *msg)
{
- CLockObject lock(
&
msg->mutex);
- if (m_port->Write(msg) != (int32_t) msg->size())
+ CLockObject lock(msg->mutex);
+ if (m_port->Write(msg
->packet.data, msg->size()
) != (int32_t) msg->size())
{
CStdString strError;
strError.Format("error writing to serial port: %s", m_port->GetError().c_str());
{
CStdString strError;
strError.Format("error writing to serial port: %s", m_port->GetError().c_str());
@@
-413,7
+412,7
@@
bool CAdapterCommunication::Write(CCECAdapterMessage *data)
bool CAdapterCommunication::Read(CCECAdapterMessage &msg, uint32_t iTimeout)
{
bool CAdapterCommunication::Read(CCECAdapterMessage &msg, uint32_t iTimeout)
{
- CLockObject lock(
&
m_mutex);
+ CLockObject lock(m_mutex);
msg.clear();
uint64_t iNow = GetTimeMs();
msg.clear();
uint64_t iNow = GetTimeMs();
@@
-427,7
+426,7
@@
bool CAdapterCommunication::Read(CCECAdapterMessage &msg, uint32_t iTimeout)
uint8_t buf = 0;
if (!m_inBuffer.Pop(buf))
{
uint8_t buf = 0;
if (!m_inBuffer.Pop(buf))
{
- if (!m_rcvCondition.Wait(
&
m_mutex, (uint32_t) (iTarget - iNow)))
+ if (!m_rcvCondition.Wait(m_mutex, (uint32_t) (iTarget - iNow)))
return false;
}
return false;
}
@@
-484,9
+483,9
@@
bool CAdapterCommunication::StartBootloader(void)
output->push_escaped(MSGCODE_START_BOOTLOADER);
output->push_back(MSGEND);
output->push_escaped(MSGCODE_START_BOOTLOADER);
output->push_back(MSGEND);
- CLockObject lock(
&
output->mutex);
+ CLockObject lock(output->mutex);
if (Write(output))
if (Write(output))
- output->condition.Wait(
&
output->mutex);
+ output->condition.Wait(output->mutex);
bReturn = output->state == ADAPTER_MESSAGE_STATE_SENT;
delete output;
bReturn = output->state == ADAPTER_MESSAGE_STATE_SENT;
delete output;
@@
-506,9
+505,9
@@
bool CAdapterCommunication::PingAdapter(void)
output->push_escaped(MSGCODE_PING);
output->push_back(MSGEND);
output->push_escaped(MSGCODE_PING);
output->push_back(MSGEND);
- CLockObject lock(
&
output->mutex);
+ CLockObject lock(output->mutex);
if (Write(output))
if (Write(output))
- output->condition.Wait(
&
output->mutex);
+ output->condition.Wait(output->mutex);
bReturn = output->state == ADAPTER_MESSAGE_STATE_SENT;
delete output;
bReturn = output->state == ADAPTER_MESSAGE_STATE_SENT;
delete output;
@@
-536,7
+535,7
@@
bool CAdapterCommunication::SetLineTimeout(uint8_t iTimeout)
return bReturn;
}
return bReturn;
}
-bool CAdapterCommunication::IsOpen(void)
const
+bool CAdapterCommunication::IsOpen(void)
{
return !IsStopped() && m_port->IsOpen() && IsRunning();
}
{
return !IsStopped() && m_port->IsOpen() && IsRunning();
}