-add feeding buffer for PocSAC-decoder
git-svn-id: http://moon:8086/svn/software/trunk/projects/GnuRadio@409 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
@@ -48,6 +48,7 @@ preamble_sync_impl::preamble_sync_impl()
|
||||
, m_wordCount(0)
|
||||
, m_wordSize(1)
|
||||
, m_dataCount(0)
|
||||
, bufferWi(0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -203,8 +204,18 @@ int preamble_sync_impl::general_work (int noutput_items, gr_vector_int &ninput_i
|
||||
// each input stream.
|
||||
consume_each (i);
|
||||
|
||||
memcpy(&buffer[bufferWi], out, j);
|
||||
|
||||
bufferWi += j;
|
||||
|
||||
if (bufferWi >= sizeof(buffer)/2)
|
||||
{
|
||||
size_t numProcessed = dec.process(buffer, bufferWi);
|
||||
bufferWi -= numProcessed;
|
||||
memcpy(buffer, &buffer[numProcessed], bufferWi);
|
||||
}
|
||||
|
||||
// Tell runtime system how many output items we produced.
|
||||
dec.process(out, j);
|
||||
return j;
|
||||
|
||||
}
|
||||
|
||||
@@ -52,6 +52,8 @@ class preamble_sync_impl : public preamble_sync
|
||||
size_t m_wordCount;
|
||||
size_t m_wordSize;
|
||||
size_t m_dataCount;
|
||||
uint8_t buffer[256];
|
||||
size_t bufferWi;
|
||||
|
||||
PocsagDecoder dec;
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user