* http://www.pulse-eight.net/
*/
-#include "../platform/os-dependent.h"
+#include "os.h"
#include <queue>
-namespace CEC
+namespace PLATFORM
{
template<typename _BType>
- struct CecBuffer
+ struct SyncedBuffer
{
public:
- CecBuffer(size_t iMaxSize = 100)
+ SyncedBuffer(size_t iMaxSize = 100)
{
m_maxSize = iMaxSize;
}
- virtual ~CecBuffer(void)
+ virtual ~SyncedBuffer(void)
{
+ CLockObject lock(m_mutex, true);
Clear();
}
bool Push(_BType entry)
{
- CLockObject lock(&m_mutex);
+ CLockObject lock(m_mutex);
if (m_buffer.size() == m_maxSize)
return false;
bool Pop(_BType &entry)
{
bool bReturn(false);
- CLockObject lock(&m_mutex);
+ CLockObject lock(m_mutex);
if (!m_buffer.empty())
{
entry = m_buffer.front();