Vector BLF
Loading...
Searching...
No Matches
Vector::BLF::ObjectQueue< T > Class Template Referencefinal

#include <ObjectQueue.h>

Public Member Functions

T * read ()
uint32_t tellg () const
void write (T *obj)
uint32_t tellp () const
bool good () const
bool eof () const
void abort ()
void setFileSize (uint32_t fileSize)
void setBufferSize (uint32_t bufferSize)

Public Attributes

std::condition_variable tellgChanged {}
std::condition_variable tellpChanged {}

Detailed Description

template<typename T>
class Vector::BLF::ObjectQueue< T >

Thread-safe queue for ObjectHeaderBase

Member Function Documentation

◆ abort()

template<typename T>
void Vector::BLF::ObjectQueue< T >::abort ( )

Stop further operations. Return from waiting reads.

◆ eof()

template<typename T>
bool Vector::BLF::ObjectQueue< T >::eof ( ) const

Check whether eofbit is set.

Returns
true if eofbit is set

◆ good()

template<typename T>
bool Vector::BLF::ObjectQueue< T >::good ( ) const

Check whether state of stream is good.

Returns
true if no error flags are set

◆ read()

template<typename T>
T * Vector::BLF::ObjectQueue< T >::read ( )

Get access to front of queue.

Returns
object (or nullptr if empty)

◆ setBufferSize()

template<typename T>
void Vector::BLF::ObjectQueue< T >::setBufferSize ( uint32_t bufferSize)

Sets the maximum file size. Write operations block, if the size is reached.

Parameters
[in]bufferSizemaximum file size

◆ setFileSize()

template<typename T>
void Vector::BLF::ObjectQueue< T >::setFileSize ( uint32_t fileSize)

Set file size resp. end-of-file position.

Parameters
[in]fileSizefile size

◆ tellg()

template<typename T>
uint32_t Vector::BLF::ObjectQueue< T >::tellg ( ) const

Get position in input sequence.

Returns
Read position

◆ tellp()

template<typename T>
uint32_t Vector::BLF::ObjectQueue< T >::tellp ( ) const

Get position in output sequence.

Returns
Write position

◆ write()

template<typename T>
void Vector::BLF::ObjectQueue< T >::write ( T * obj)

Enqueue an object to end of queue.

nullptr can be pushed to indicate eof.

Parameters
[in]objobject

Member Data Documentation

◆ tellgChanged

template<typename T>
std::condition_variable Vector::BLF::ObjectQueue< T >::tellgChanged {}

data was dequeued

◆ tellpChanged

template<typename T>
std::condition_variable Vector::BLF::ObjectQueue< T >::tellpChanged {}

data was enqueued


The documentation for this class was generated from the following files: