FAST
3.2.0
Framework for Heterogeneous Medical Image Computing and Visualization
|
#include <QueuedDataChannel.hpp>
Public Member Functions | |
void | addFrame (DataObject::pointer data) override |
int | getSize () override |
void | setMaximumNumberOfFrames (uint frames) override |
void | stop () override |
bool | hasCurrentData () override |
DataObject::pointer | getFrame () override |
![]() | |
template<class T = DataObject> | |
std::shared_ptr< T > | getNextFrame () |
std::shared_ptr< ProcessObject > | getProcessObject () const |
void | setProcessObject (std::shared_ptr< ProcessObject > po) |
template<> | |
FAST_EXPORT std::shared_ptr< DataObject > | getNextFrame () |
![]() | |
Object () | |
virtual | ~Object () |
Reporter & | getReporter () |
Protected Member Functions | |
DataObject::pointer | getNextDataFrame () override |
QueuedDataChannel () | |
![]() | |
DataChannel () | |
![]() | |
Reporter & | reportError () |
Reporter & | reportWarning () |
Reporter & | reportInfo () |
ReporterEnd | reportEnd () const |
Protected Attributes | |
std::queue< std::shared_ptr< DataObject > > | m_queue |
uint | mMaximumNumberOfFrames |
std::unique_ptr< LightweightSemaphore > | m_fillCount |
std::unique_ptr< LightweightSemaphore > | m_emptyCount |
![]() | |
bool | m_stop |
std::mutex | m_mutex |
std::shared_ptr< ProcessObject > | m_processObject |
![]() | |
std::weak_ptr< Object > | mPtr |
Additional Inherited Members | |
![]() | |
typedef std::shared_ptr< DataChannel > | pointer |
![]() | |
typedef std::shared_ptr< Object > | pointer |
![]() | |
static std::string | getStaticNameOfClass () |
This queued data channel implements the producser-consumer task using a lightweight semaphore. It is used on the output data channelsl of streamers when streaming mode is PROCESS_ALL_FRAMES
|
protected |
|
overridevirtual |
Add frame to the data channel. This call may block if the buffer is full.
Implements fast::DataChannel.
|
overridevirtual |
Get current frame, throws if current frame is not available.
Implements fast::DataChannel.
|
overrideprotectedvirtual |
Implements fast::DataChannel.
|
overridevirtual |
Implements fast::DataChannel.
|
overridevirtual |
Implements fast::DataChannel.
|
overridevirtual |
Set the maximum nr of frames that can be stored in this data channel
Implements fast::DataChannel.
|
overridevirtual |
This will unblock if this DataChannel is currently blocking. Used to stop a pipeline.
Implements fast::DataChannel.
|
protected |
|
protected |
|
protected |
|
protected |