X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2Fplatform%2Fbuffer.h;fp=src%2Flib%2Futil%2Fbuffer.h;h=227b7565edcd7a438991d12b6355301336df65f9;hb=f00ff009cfc5dfefdf09ca241b9560e74575b3f5;hp=e0afddfa16d1daaf52af97f6fee5fbd5c7e4b0e9;hpb=7ebbb1a62355c2819caa42e28b081eff027b336d;p=deb_libcec.git diff --git a/src/lib/util/buffer.h b/src/lib/platform/buffer.h similarity index 89% rename from src/lib/util/buffer.h rename to src/lib/platform/buffer.h index e0afddf..227b756 100644 --- a/src/lib/util/buffer.h +++ b/src/lib/platform/buffer.h @@ -31,22 +31,23 @@ * http://www.pulse-eight.net/ */ -#include "../platform/os-dependent.h" +#include "os.h" #include -namespace CEC +namespace PLATFORM { template - 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(); } @@ -60,7 +61,7 @@ namespace CEC bool Push(_BType entry) { - CLockObject lock(&m_mutex); + CLockObject lock(m_mutex); if (m_buffer.size() == m_maxSize) return false; @@ -71,7 +72,7 @@ namespace CEC bool Pop(_BType &entry) { bool bReturn(false); - CLockObject lock(&m_mutex); + CLockObject lock(m_mutex); if (!m_buffer.empty()) { entry = m_buffer.front();