repositories
/
deb_libcec.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cec: extracted a thread class. fixed bug: pthread_cond_wait was called without the...
[deb_libcec.git]
/
src
/
lib
/
CECParser.h
diff --git
a/src/lib/CECParser.h
b/src/lib/CECParser.h
index 1c72c1ec56c276f24acfb2bf112f886a48f6aa2a..c70cc481f0a4aa79c464943d5f92f6f0de417c0b 100644
(file)
--- a/
src/lib/CECParser.h
+++ b/
src/lib/CECParser.h
@@
-35,6
+35,7
@@
#include <stdio.h>
#include "../../include/CECExports.h"
#include "../../include/CECTypes.h"
#include <stdio.h>
#include "../../include/CECExports.h"
#include "../../include/CECTypes.h"
+#include "util/threads.h"
#include "util/buffer.h"
class CSerialPort;
#include "util/buffer.h"
class CSerialPort;
@@
-43,7
+44,7
@@
namespace CEC
{
class CCommunication;
{
class CCommunication;
- class CCECParser : public ICECDevice
+ class CCECParser : public ICECDevice
, public CThread
{
public:
/*!
{
public:
/*!
@@
-54,7
+55,7
@@
namespace CEC
virtual ~CCECParser(void);
virtual bool Open(const char *strPort, int iTimeout = 10000);
virtual ~CCECParser(void);
virtual bool Open(const char *strPort, int iTimeout = 10000);
- virtual
bool Close(int iTimeoutMs = 2000
);
+ virtual
void Close(void
);
virtual int FindDevices(std::vector<cec_device> &deviceList, const char *strDevicePath = NULL);
virtual bool Ping(void);
virtual bool StartBootloader(void);
virtual int FindDevices(std::vector<cec_device> &deviceList, const char *strDevicePath = NULL);
virtual bool Ping(void);
virtual bool StartBootloader(void);
@@
-73,8
+74,7
@@
namespace CEC
virtual int GetLibVersion(void);
//@}
virtual int GetLibVersion(void);
//@}
- static void *ThreadHandler(CCECParser *parser);
- bool Process(void);
+ void *Process(void);
void AddLog(cec_log_level level, const std::string &strMessage);
protected:
virtual bool TransmitFormatted(const cec_frame &data, bool bWaitForAck = true);
void AddLog(cec_log_level level, const std::string &strMessage);
protected:
virtual bool TransmitFormatted(const cec_frame &data, bool bWaitForAck = true);
@@
-95,7
+95,7
@@
namespace CEC
bool ReadFromDevice(int iTimeout);
void ProcessMessages(void);
bool GetMessage(cec_frame &msg, bool bFromBuffer = true);
bool ReadFromDevice(int iTimeout);
void ProcessMessages(void);
bool GetMessage(cec_frame &msg, bool bFromBuffer = true);
-
void
ParseMessage(cec_frame &msg);
+
bool
ParseMessage(cec_frame &msg);
void ParseCurrentFrame(void);
void AddData(uint8_t* data, int len);
void ParseCurrentFrame(void);
void AddData(uint8_t* data, int len);
@@
-113,10
+113,7
@@
namespace CEC
CecBuffer<cec_keypress> m_keyBuffer;
CecBuffer<cec_command> m_commandBuffer;
std::string m_strDeviceName;
CecBuffer<cec_keypress> m_keyBuffer;
CecBuffer<cec_command> m_commandBuffer;
std::string m_strDeviceName;
- pthread_t m_thread;
CMutex m_mutex;
CMutex m_mutex;
- CCondition m_exitCondition;
- bool m_bRunning;
CCommunication *m_communication;
};
};
CCommunication *m_communication;
};
};