Vector::BLF::ObjectQueue< T >(3)

NAME
Vector::BLF::ObjectQueue< T >

SYNOPSIS

#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

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

Stop further operations. Return from waiting reads.

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

Check whether eofbit is set.

Returns
    true if eofbit is set

  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

  template<typename T> T * Vector::BLF::ObjectQueue< T >::read ()
Get access to front of queue.

Returns
    object (or nullptr if empty)

  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
    bufferSize maximum file size

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

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

Parameters
    fileSize file size

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

Get position in input sequence.

Returns
    Read position

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

Get position in output sequence.

Returns
    Write position

  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
    obj object

Member Data Documentation

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

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

Author

Generated automatically by Doxygen for Vector BLF from the source code.