FAST  3.2.0
Framework for Heterogeneous Medical Image Computing and Visualization
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
fast::CameraStreamer Class Reference

#include <CameraStreamer.hpp>

+ Inheritance diagram for fast::CameraStreamer:
+ Collaboration diagram for fast::CameraStreamer:

Public Member Functions

void setFinished (bool finished)
 
void addNewImageFrame (const uchar *data, int width, int height)
 
bool getGrayscale () const
 
void setGrayscale (bool grayscale)
 
void loadAttributes () override
 
void setCamera (uchar index)
 
- Public Member Functions inherited from fast::Streamer
 Streamer ()
 
virtual ~Streamer ()
 
virtual std::string getNameOfClass () const =0
 
virtual void stop ()
 
virtual void setMaximumNrOfFrames (int maximumNrOfFrames)
 
- Public Member Functions inherited from fast::ProcessObject
virtual ~ProcessObject ()
 
void update (int executeToken=-1)
 
RuntimeMeasurement::pointer getRuntime ()
 
RuntimeMeasurement::pointer getRuntime (std::string name)
 
RuntimeMeasurementsManager::pointer getAllRuntimes ()
 
void enableRuntimeMeasurements ()
 
void disableRuntimeMeasurements ()
 
void setMainDevice (ExecutionDevice::pointer device)
 
void setMainDeviceCriteria (const DeviceCriteria &citeria)
 
ExecutionDevice::pointer getMainDevice () const
 
void setDevice (uint deviceNumber, ExecutionDevice::pointer device)
 
void setDeviceCriteria (uint deviceNumber, const DeviceCriteria &criteria)
 
ExecutionDevice::pointer getDevice (uint deviceNumber) const
 
virtual DataChannel::pointer getOutputPort (uint portID=0)
 
virtual DataChannel::pointer getInputPort (uint portID=0)
 
virtual void setInputConnection (DataChannel::pointer port)
 
virtual void setInputConnection (uint portID, DataChannel::pointer port)
 
virtual void setInputData (DataObject::pointer data)
 
virtual void setInputData (uint portID, DataObject::pointer data)
 
int getNrOfInputConnections () const
 
int getNrOfOutputPorts () const
 
std::shared_ptr< AttributegetAttribute (std::string id)
 
std::unordered_map< std::string, std::shared_ptr< Attribute > > getAttributes ()
 
void setAttributes (std::vector< std::shared_ptr< Attribute >> attributes)
 
void stopPipeline ()
 
void setModified (bool modified)
 
template<class DataType >
std::shared_ptr< DataTypeupdateAndGetOutputData (uint portID=0)
 
- Public Member Functions inherited from fast::Object
 Object ()
 
virtual ~Object ()
 
ReportergetReporter ()
 

Protected Member Functions

 CameraStreamer ()
 
void execute () override
 
void generateStream () override
 
- Protected Member Functions inherited from fast::Streamer
virtual void waitForFirstFrame ()
 
virtual void startStream ()
 
virtual void frameAdded ()
 
- Protected Member Functions inherited from fast::ProcessObject
 ProcessObject ()
 
virtual void preExecute ()
 
virtual void postExecute ()
 
template<class DataType >
void createInputPort (uint portID, bool required=true)
 
template<class DataType >
void createOutputPort (uint portID)
 
template<class DataType >
std::shared_ptr< DataTypegetInputData (uint portID=0)
 
template<class DataType >
std::shared_ptr< DataTypegetOutputData (uint portID=0)
 
void addOutputData (uint portID, DataObject::pointer data)
 
bool hasNewInputData (uint portID)
 
virtual void waitToFinish ()
 
void createOpenCLProgram (std::string sourceFilename, std::string name="")
 
cl::Program getOpenCLProgram (std::shared_ptr< OpenCLDevice > device, std::string name="", std::string buildOptions="")
 
void createFloatAttribute (std::string id, std::string name, std::string description, float initialValue)
 
void createIntegerAttribute (std::string id, std::string name, std::string description, int initialValue)
 
void createBooleanAttribute (std::string id, std::string name, std::string description, bool initialValue)
 
void createStringAttribute (std::string id, std::string name, std::string description, std::string initialValue)
 
float getFloatAttribute (std::string id)
 
int getIntegerAttribute (std::string id)
 
bool getBooleanAttribute (std::string id)
 
std::string getStringAttribute (std::string id)
 
std::vector< float > getFloatListAttribute (std::string id)
 
std::vector< int > getIntegerListAttribute (std::string id)
 
std::vector< bool > getBooleanListAttribute (std::string id)
 
std::vector< std::string > getStringListAttribute (std::string id)
 
void changeDeviceOnInputs (uint deviceNumber, ExecutionDevice::pointer device)
 
void validateInputPortExists (uint portID)
 
void validateOutputPortExists (uint portID)
 
- Protected Member Functions inherited from fast::Object
ReporterreportError ()
 
ReporterreportWarning ()
 
ReporterreportInfo ()
 
ReporterEnd reportEnd () const
 

Protected Attributes

bool mGrayscale = false
 
bool m_finished = false
 
int m_framesAdded = 0
 
std::chrono::high_resolution_clock::time_point m_startTime
 
QThread * thread
 
CameraWorkerworker
 
uint m_cameraIndex = 0
 
- Protected Attributes inherited from fast::Streamer
bool m_firstFrameIsInserted = false
 
bool m_streamIsStarted = false
 
bool m_stop = false
 
std::mutex m_firstFrameMutex
 
std::mutex m_stopMutex
 
std::unique_ptr< std::thread > m_thread
 
std::condition_variable m_firstFrameCondition
 
- Protected Attributes inherited from fast::ProcessObject
bool mIsModified
 
int m_lastExecuteToken = -1
 
RuntimeMeasurementsManager::pointer mRuntimeManager
 
std::unordered_map< uint, bool > mRequiredInputs
 
std::unordered_map< uint, std::vector< uint > > mInputDevices
 
std::unordered_map< uint, ExecutionDevice::pointermDevices
 
std::unordered_map< uint, DeviceCriteriamDeviceCriteria
 
std::unordered_map< uint, DataChannel::pointermInputConnections
 
std::unordered_map< uint, std::vector< std::weak_ptr< DataChannel > > > mOutputConnections
 
std::unordered_map< uint, bool > mInputPorts
 
std::unordered_set< uintmOutputPorts
 
std::unordered_map< uint, std::pair< DataObject::pointer, uint64_t > > mLastProcessed
 
std::unordered_map< std::string, std::shared_ptr< OpenCLProgram > > mOpenCLPrograms
 
std::unordered_map< std::string, std::shared_ptr< Attribute > > mAttributes
 
std::unordered_map< std::string, std::string > m_frameData
 
std::unordered_set< std::string > m_lastFrame
 
int m_maximumNrOfFrames = -1
 
- Protected Attributes inherited from fast::Object
std::weak_ptr< ObjectmPtr
 

Additional Inherited Members

- Public Types inherited from fast::Streamer
typedef std::shared_ptr< Streamerpointer
 
- Public Types inherited from fast::ProcessObject
typedef std::shared_ptr< ProcessObjectpointer
 
- Public Types inherited from fast::Object
typedef std::shared_ptr< Objectpointer
 
- Static Public Member Functions inherited from fast::Streamer
static std::string getStaticNameOfClass ()
 
- Static Public Member Functions inherited from fast::ProcessObject
static std::string getStaticNameOfClass ()
 
- Static Public Member Functions inherited from fast::Object
static std::string getStaticNameOfClass ()
 

Constructor & Destructor Documentation

◆ CameraStreamer()

fast::CameraStreamer::CameraStreamer ( )
protected

Member Function Documentation

◆ addNewImageFrame()

void fast::CameraStreamer::addNewImageFrame ( const uchar data,
int  width,
int  height 
)

◆ execute()

void fast::CameraStreamer::execute ( )
overrideprotectedvirtual

Implements fast::ProcessObject.

◆ generateStream()

void fast::CameraStreamer::generateStream ( )
inlineoverrideprotectedvirtual

The function producing the data stream

Implements fast::Streamer.

◆ getGrayscale()

bool fast::CameraStreamer::getGrayscale ( ) const

◆ loadAttributes()

void fast::CameraStreamer::loadAttributes ( )
overridevirtual

Reimplemented from fast::ProcessObject.

◆ setCamera()

void fast::CameraStreamer::setCamera ( uchar  index)

◆ setFinished()

void fast::CameraStreamer::setFinished ( bool  finished)

◆ setGrayscale()

void fast::CameraStreamer::setGrayscale ( bool  grayscale)

Member Data Documentation

◆ m_cameraIndex

uint fast::CameraStreamer::m_cameraIndex = 0
protected

◆ m_finished

bool fast::CameraStreamer::m_finished = false
protected

◆ m_framesAdded

int fast::CameraStreamer::m_framesAdded = 0
protected

◆ m_startTime

std::chrono::high_resolution_clock::time_point fast::CameraStreamer::m_startTime
protected

◆ mGrayscale

bool fast::CameraStreamer::mGrayscale = false
protected

◆ thread

QThread* fast::CameraStreamer::thread
protected

◆ worker

CameraWorker* fast::CameraStreamer::worker
protected

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