Class CTraceFifoReader#

Inheritance Relationships#

Base Type#

  • public CTraceFifoImpl

Class Documentation#

class CTraceFifoReader : public CTraceFifoImpl#

Reader class for the trace fifo. Multiple readers can coexist.

Public Functions

CTraceFifoReader(uint32_t uiInstanceID = 1000u, size_t nSize = 16384)#

Default constructor.

Parameters:
  • uiInstanceID[in] The instance ID to use for sending/monitoring the messages.

  • nSize[in] Default size of the fifo.

virtual ~CTraceFifoReader() override#

Default destructor.

Remark

Automatically closes the fifo if opened before.

CTraceFifoReader(const CTraceFifoReader &rfifo) = delete#

Copy constructor is not available.

Parameters:

rfifo[in] Reference to the fifo to copy.

CTraceFifoReader(CTraceFifoReader &&rfifo) noexcept#

Move constructor.

Parameters:

rfifo[in] Reference to the fifo.

CTraceFifoReader &operator=(const CTraceFifoReader &rfifo) = delete#

Copy assignment is not available.

Parameters:

rfifo[in] Reference to the fifo.

Returns:

Returns a reference to this fifo.

CTraceFifoReader &operator=(CTraceFifoReader &&rfifo) noexcept#

Move assignment.

Parameters:

rfifo[in] Reference to the fifo.

Returns:

Returns a reference to this fifo.

virtual bool Open(size_t nTimeout = 1000, uint32_t uiFlags = 0u) override#

Open the fifo. Override of CTraceFifoBase::Open.

Parameters:
  • nTimeout[in] Timeout to return from this function. A timeout of 0xffffffff does not return until a connection has been established.

  • uiFlags[in] Zero or more flags of ETraceFifoOpenFlags enum.

Returns:

Returns true when connected; false otherwise.

virtual void Close() override#

Cancel any running task and close an open fifo. Override of CTraceFifoBase::Close.

std::string WaitForMessage(size_t nTimeout = 1000)#

Wait for a message.

Remark

Automatically opens the fifo if not opened before.

Parameters:

nTimeout[in] Timeout to return from this function. A timeout of 0xffffffff does not return until a message has been received.

Returns:

The received message or an empty message if a timeout occurred or the publisher had sent an empty message.