![]() |
ImFusion SDK 4.3
|
#include <ImFusion/Stream/VideoStreamIoAlgorithm.h>
IO Algorithm for streaming videos. More...
IO Algorithm for streaming videos.
This algorithm will create the actual video stream, open and attempt to start it. It will NOT create a listener for the stream.
Public Types | |
enum | StreamingMode { VideoStreamFile , VideoStreamDevice } |
![]() | |
enum | IoMode { Read = 0 , Write = 1 } |
enum | LocationType { File = 1 , Folder = 2 , URI = 4 , OpenIGTLink = 8 , Device = 16 } |
![]() | |
enum | Status { Unknown = -1 , Success = 0 , Error = 1 , InvalidInput , IncompleteInput , OutOfMemoryHost , OutOfMemoryGPU , UnsupportedGPU , UnknownAction , AbortedByUser , User = 1000 } |
Status codes. More... | |
Public Member Functions | |
VideoStreamIoAlgorithm (StreamingMode mode) | |
std::vector< std::string > | supportedFileExtensions () const override |
Return supported file extensions (for file based IO) | |
void | compute () override |
Execute the algorithm. | |
OwningDataList | takeOutput () override |
Return any new Data that was created by the Algorithm during the last call to compute(). | |
int | streamingMode () const |
void | configure (const Properties *p) override |
Set one or multiple properties. | |
void | configuration (Properties *p) const override |
Retrieve the properties of this object. | |
void | setBackend (const std::string &backend) |
void | setDeviceUID (const std::string &uid) |
![]() | |
IoAlgorithm (IoMode ioMode, int locationType) | |
Constructor for initializing IO algorithm. | |
virtual IoMode | ioMode () const |
Return IO mode. | |
virtual std::string | suggestedSaveFileName () const |
Return a file name suggestion typically used by IoController to prefill the file name in the save file dialog (for file based write) | |
virtual bool | canLoad (const Filesystem::Path &filepath) const |
Returns whether the algorithm is suitable for loading the indicated file. | |
virtual bool | fail (int *errorCode=nullptr) const |
int | status () const override |
Indicates the status of the last call to compute(). | |
virtual int | supportedLocations () const |
Return combination of supported location types from LocationType enum. | |
virtual void | setLocation (const std::string &location) |
Set location for subsequent loading/saving. | |
virtual std::string | location () const |
Get location for loading/saving. | |
std::unique_ptr< Properties > | userOptions (bool includeReadOptions, bool includeWriteOptions) const |
Convenience method to retrieve all properties from this IoAlgorithm that are tagged as user options to be configured during load/save. | |
void | configureFromGlobalSettings () |
Convenience method to configure the algorithm's user options with the values stored in the global settings. | |
![]() | |
Algorithm () | |
Default constructor will registers a single "compute" action that calls compute() and returns status(). | |
virtual void | setProgress (Progress *progress) |
Sets a Progress interface the algorithm can use to notify observers about its computing progress. | |
Progress * | progress () const |
Returns the progress interface if set. | |
virtual bool | survivesDataDeletion (const Data *) const |
Indicates whether the algorithm can handle (partial) deletion of the specified data, by default this checks whether the data is in the input list. | |
const FactoryInfo & | factoryInfo () const |
Returns the record describing how this Algorithm was instantiated by the AlgorithmFactory. | |
void | setFactoryInfo (const FactoryInfo &value) |
Sets the record describing how this Algorithm was instantiated by the AlgorithmFactory. | |
Status | runAction (const std::string &id) |
Run the action with name id if it exists. | |
const std::vector< Action > & | actions () |
Get a mapping from Action id to Action as registered in this algorithm. | |
![]() | |
virtual void | configureDefaults () |
Retrieve the properties of this object, replaces values with their defaults and sets it again. | |
void | registerParameter (ParameterBase *param) |
Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration(). | |
void | unregisterParameter (const ParameterBase *param) |
Remove the given Parameter or SubProperty from the list of registered parameters. | |
Configurable (const Configurable &rhs) | |
Configurable (Configurable &&rhs) noexcept | |
Configurable & | operator= (const Configurable &) |
Configurable & | operator= (Configurable &&) noexcept |
Static Public Member Functions | |
static std::unique_ptr< VideoCameraStream > | createCameraStream (const std::string &path) |
Creates a camera stream based on the unique device UID returned by enumerateCameraStream. | |
static std::vector< VideoCameraStream::VideoCameraDeviceInfo > | enumerateCameraStreams () |
Enumerates all camera streams available on the system. | |
static bool | createCompatible (const DataList &data, Algorithm **a=0) |
![]() | |
static std::unique_ptr< IoAlgorithm > | createFromLastDataSource (const DataSourceComponent &dsc) |
Virtual constructor that creates the IoAlgorithm recorded last in the DataSourceComponent. | |
![]() | |
static bool | createCompatible (const DataList &data, Algorithm **a=nullptr) |
Factory function to check algorithm compatibility with input data and optionally instantiate it. | |
Additional Inherited Members | |
![]() | |
Signal | signalOutputChanged |
Signal should be emitted by Algorithms when their output/result has changed. | |
Signal | signalParametersChanged |
Signal should be emitted by Algorithms when their parameter configuration has changed. | |
![]() | |
Signal | signalParametersChanged |
Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted. | |
![]() | |
void | recordToDataSourceComponent (Data &data, int indexInFile) |
Append the current configuration of the IoAlgorithm to the DataSourceComponent of a data. | |
![]() | |
void | loadDefaults () |
void | registerAction (const std::string &id, const std::string &guiName, const std::function< Algorithm::Status(void)> &action) |
Register an action to be run via runAction. | |
template<typename D> | |
void | registerAction (const std::string &id, const std::string &guiName, Algorithm::Status(D::*action)(void)) |
Template version of runAction that can be used with a pointer to a member function. | |
void | registerAction (const Action &action) |
Register an action. | |
![]() | |
std::string | m_location |
IoMode | m_ioMode |
int | m_locationType |
bool | m_fail |
![]() | |
std::string | m_name |
Algorithm name. | |
Progress * | m_progress = nullptr |
Non-owing pointer to a progress interface. May be a nullptr. | |
FactoryInfo | m_factoryInfo = {} |
Record describing how this algorithm was instantiated by the AlgorithmFactory. | |
int | m_status = Status::Unknown |
Algorithm status after last call to compute() | |
std::vector< Action > | m_actions |
Map of key given by the id of the action, of the available actions of this algorithm. | |
![]() | |
std::vector< Param > | m_params |
List of all registered Parameter and SubProperty instances. | |
|
static |
Creates a camera stream based on the unique device UID returned by enumerateCameraStream.
|
static |
Enumerates all camera streams available on the system.
|
overridevirtual |
Return supported file extensions (for file based IO)
Reimplemented from IoAlgorithm.
Reimplemented in VideoStreamIoAlgorithmHelper< Mode >.
|
overridevirtual |
Execute the algorithm.
Implements Algorithm.
|
overridevirtual |
|
overridevirtual |
Set one or multiple properties.
Reimplemented from IoAlgorithm.
|
overridevirtual |
Retrieve the properties of this object.
Reimplemented from IoAlgorithm.