ImFusion SDK 4.3
StereoImageStreamData Class Reference

#include <ImFusion/Vision/StereoImageStreamData.h>

Stereo Image data streamed from a stereo camera. More...

+ Inheritance diagram for StereoImageStreamData:

Detailed Description

Stereo Image data streamed from a stereo camera.

In oder to use functions in ImageStream, this class is derived from ImageStreamData. Stereo image(s) are converted into a vector of SharedImages in ImageStreamData e.g. If a stereoImageSet is present, it will be converted to: vector {stereoImage[0].left, stereoImage[0].right, stereoImage[1].left, stereoImage[1].right...} The receiver has to convert it back if necessary

Public Member Functions

 StereoImageStreamData (Stream *stream)
 
 StereoImageStreamData (Stream *stream, std::unique_ptr< StereoImage > &&img)
 Moves the stereo image into the newly created object.
 
 StereoImageStreamData (Stream *stream, const std::shared_ptr< StereoImage > &img)
 Shallow-copies the stereo image into the newly created object.
 
 StereoImageStreamData (Stream *stream, const std::shared_ptr< const StereoImage > &img)
 
virtual void setImageSet (const SharedImageSet &imageSet) override
 Sets the images and (possibly per element) components into this object, replacing all existing images and components.
 
virtual void setImages (const std::vector< std::shared_ptr< const SharedImage > > &sharedImages) override
 Sets the images into this object, replacing all existing images. Does not modify components.
 
std::shared_ptr< const StereoImagestereoImage () const
 
- Public Member Functions inherited from ImageStreamData
 ImageStreamData (Stream *stream)
 Creates an empty ImageStreamData object with the given stream.
 
 ImageStreamData (Stream *stream, SharedImageSet &&imageSet)
 Moves the images and (possibly per element) components into the newly created object.
 
 ImageStreamData (Stream *stream, std::unique_ptr< SharedImage > &&img)
 Moves the single image into the newly created object.
 
 ImageStreamData (Stream *stream, const std::shared_ptr< SharedImage > &img)
 Shallow-copies the single image into the newly created object.
 
 ImageStreamData (Stream *stream, const std::shared_ptr< const SharedImage > &img)
 Shallow-copies the single image into the newly created object.
 
 ImageStreamData (Stream *stream, MemImage *img)
 Deprecated constructor. Creates an ImageStreamData object with the given stream and image.
 
virtual std::vector< std::shared_ptr< const SharedImage > > images2 () const
 Return all images contained in sample.
 
std::shared_ptr< SharedImageSetshallowCloneToSharedImageSet () const
 Return all images and (possibly per element) DataComponents contained in sample.
 
std::unique_ptr< StreamDataclone () const override
 
int size () const
 Return the number of images in the stream data.
 
bool containsGlImage () const
 Returns whether any of the images contains an OpenGL image and thus requires synchronization if moved to a thread different from the signaling thread.
 
const DataComponentListcomponents (int i) const
 Returns the DataComponents associated to the element with that index.
 
const DataComponentListcomponents () const
 Returns the list of DataComponents for this data.
 
DataComponentListcomponents ()
 Returns the list of DataComponents for this data.
 
- Public Member Functions inherited from StreamData
virtual Streamstream () const
 Returns the stream object which updates this data.
 
virtual unsigned long long timestampDevice () const
 Timestamp in milliseconds. Set by the streaming device.
 
virtual void setTimestampDevice (unsigned long long time)
 Set timestamp provided by the streaming device, in milliseconds.
 
virtual unsigned long long timestampArrival () const
 Timestamp in milliseconds. Based on message's arrival time.
 
virtual void setTimestampArrival (std::chrono::system_clock::time_point time)
 Set the system time when this streamData was arrived. It will be stored in milliseconds relative to epoch time.
 
virtual void setTimestampArrival (unsigned long long time)
 Set arrival timestamp manually, in milliseconds.
 
const DataComponentListcomponents () const
 Returns the list of DataComponents for this data.
 
DataComponentListcomponents ()
 Returns the list of DataComponents for this data.
 
template<typename StreamDataClass>
const StreamDataClass * typed () const
 
- Public Member Functions inherited from ElementwiseDataComponentData
ElementwiseDataComponentListelementwiseComponents ()
 Returns elementwise data component list.
 
const ElementwiseDataComponentListelementwiseComponents () const
 Returns elementwise data component list.
 
DataComponentListmutableComponents (int i)
 Returns the DataComponents associated to the element with that index, creating it if necessary.
 
const DataComponentListcomponents (int i) const
 Returns the DataComponents associated to the element with that index.
 

Protected Attributes

std::mutex m_mutex
 
- Protected Attributes inherited from ImageStreamData
std::vector< std::shared_ptr< const SharedImage > > m_sharedImages
 
- Protected Attributes inherited from StreamData
Streamm_stream
 The stream object which updates this data.
 
unsigned long long m_timestampDevice
 Timestamp of the streaming device, in milliseconds.
 
unsigned long long m_timestampArrival
 Timestamp when the data is received in ImFusion framework, in milliseconds.
 
DataComponentList m_dataComponentList
 The list of DataComponents for this StreamData.
 
- Protected Attributes inherited from ElementwiseDataComponentData
ElementwiseDataComponentList m_elementwiseComponents
 Encodes elementwise data components.
 

Additional Inherited Members

- Protected Member Functions inherited from StreamData
 StreamData (const StreamData &other)=default
 
 StreamData (Stream *stream)
 
 StreamData (Stream *stream, DataComponentList &&components)
 

Member Function Documentation

◆ setImageSet()

virtual void setImageSet ( const SharedImageSet & imageSet)
overridevirtual

Sets the images and (possibly per element) components into this object, replacing all existing images and components.

Reimplemented from ImageStreamData.

◆ setImages()

virtual void setImages ( const std::vector< std::shared_ptr< const SharedImage > > & sharedImages)
overridevirtual

Sets the images into this object, replacing all existing images. Does not modify components.

Reimplemented from ImageStreamData.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close