fast::NewestFrameDataChannel class

This data channel is used on the output data channels of streamers when streaming mode is NEWEST_FRAME_ONLY

Base classes

class DataChannel

Derived classes

class StaticDataChannel

Public functions

void addFrame(DataObject::pointer data) override
auto getSize() -> int override
void setMaximumNumberOfFrames(uint frames) override
auto getMaximumNumberOfFrames() const -> int override
void stop() override
auto hasCurrentData() -> bool override
auto getFrame() -> DataObject::pointer override

Protected functions

auto getNextDataFrame() -> DataObject::pointer override

Protected variables

std::condition_variable m_frameConditionVariable
std::shared_ptr<DataObject> m_frame

Function documentation

void fast::NewestFrameDataChannel::addFrame(DataObject::pointer data) override

Add frame to the data channel

int fast::NewestFrameDataChannel::getSize() override

Returns the number of frames stored in this DataChannel

void fast::NewestFrameDataChannel::setMaximumNumberOfFrames(uint frames) override

Set the maximum nr of frames that can be stored in this data channel. Not used in this data channel.

void fast::NewestFrameDataChannel::stop() override

This will unblock if this DataChannel is currently blocking. Used to stop a pipeline.

DataObject::pointer fast::NewestFrameDataChannel::getFrame() override

Get current frame, throws if current frame is not available.