ADTF  3.18.2
cExternalSampleReaderQueue
Inheritance diagram for cExternalSampleReaderQueue:
[legend]

Public Member Functions

 cExternalSampleReaderQueue (cExternalQueueSampleReader &oSampleReader)
 
tResult GetSampleBeforeOrAt (tTimeStamp tmTime, adtf::ucom::iobject_ptr< const ISample > &pSample, adtf::ucom::iobject_ptr< const IStreamType > &pStreamType)
 
tResult GetNextSampleAndType (adtf::ucom::iobject_ptr< const ISample > &pSample, adtf::ucom::iobject_ptr< const IStreamType > &pStreamType)
 
tResult Push (const IStreamItem &oStreamItem, tTimeStamp tmTime) override
 Push a new value to the internal sample queue. More...
 
tResult Pop (IStreamItem &oStreamItem) override
 Returns the next sample from the queue. More...
 
void Clear () override
 clears the local queue of the reader either only EndStreaming or incoming event ISampleInStream::IQueueItem::RE_Flush
 
size_t IsEmpty ()
 
cExternalQueueSampleReaderGetReader ()
 

Private Attributes

cStreamItem m_oLastReadSampleStreamItem
 
std::recursive_mutex m_oQueueMutex
 
std::deque< cStreamItemm_oItems
 
cExternalQueueSampleReaderm_oSampleReader
 

Detailed Description

Definition at line 26 of file sample_collectors.h.

Member Function Documentation

◆ Pop()

tResult Pop ( IStreamItem oStreamItem)
overridevirtual

Returns the next sample from the queue.

Parameters
[out]oStreamItemstream item reference to copy the references to

Implements ISampleReaderQueue.

◆ Push()

tResult Push ( const IStreamItem oStreamItem,
tTimeStamp  tmTime 
)
overridevirtual

Push a new value to the internal sample queue.

Parameters
[in]oStreamItemThe sample to store
[in]tmTimeTime of storage

Implements ISampleReaderQueue.