ImFusion SDK 4.3
StreamGroupBase Class Referenceabstract

#include <ImFusion/Stream/StreamGroupBase.h>

Non-templated base class for stream groups to create a CompoundData of a proxy stream and an arbitrary number of substreams. More...

+ Inheritance diagram for StreamGroupBase:

Detailed Description

Non-templated base class for stream groups to create a CompoundData of a proxy stream and an arbitrary number of substreams.

See also
StreamGroup

Public Member Functions

virtual StreamproxyStream ()=0
 Convenience method to cast the stream group to the proxy stream.
 
virtual std::vector< Stream * > substreams () const =0
 Returns the substreams.
 
- Public Member Functions inherited from CompoundData
virtual DataList children () const =0
 Returns the list of direct children of this group.
 
- Public Member Functions inherited from SignalReceiver
 SignalReceiver ()=default
 Default constructor.
 
 SignalReceiver (const SignalReceiver &other)
 Copy constructor, does not copy any existing signal connections from other.
 
SignalReceiveroperator= (SignalReceiver rhs)
 Assignment operator, disconnects all existing connections, does not copy any existing signal connections from rhs.
 
virtual ~SignalReceiver ()
 Virtual destructor disconnects from all connected signals.
 

Public Attributes

ProtectedSignal< std::shared_ptr< const CompoundStreamData > > signalNewStreamGroupData
 Signal contains all StreamData from the substreams.
 
- Public Attributes inherited from CompoundData
Signal< Data * > signalChildAdded
 Signal emitted when a new Data instance has been added to children()
 
Signal< Data * > signalChildMoved
 Signal emitted when a Data instance has changed its position in children()
 
Signal< Data * > signalChildAboutToBeRemoved
 Signal emitted when a Data instance is about to be removed or taken from children()
 

Protected Member Functions

virtual bool addSubstream (std::unique_ptr< SubstreamBase > substream)=0
 Adds a child to the stream group.
 
virtual bool removeSubstream (Stream *substream)=0
 Removes a child from the stream group.
 
void reassignSubstream (SubstreamBase *substream)
 Reassigns child to this (needed for move operator)
 
- Protected Member Functions inherited from NotCopyable
 NotCopyable (NotCopyable &&) noexcept=default
 
NotCopyableoperator= (NotCopyable &&) noexcept=default
 
 NotCopyable (const NotCopyable &)=delete
 
NotCopyableoperator= (const NotCopyable &)=delete
 
- Protected Member Functions inherited from SignalReceiver
void disconnectAll ()
 Disconnects all existing connections.
 

Member Function Documentation

◆ proxyStream()

virtual Stream * proxyStream ( )
pure virtual

Convenience method to cast the stream group to the proxy stream.

Implemented in StreamGroup< Proxy >, and StreamGroup< StereoImageStream >.

◆ substreams()

virtual std::vector< Stream * > substreams ( ) const
pure virtual

Returns the substreams.

Implemented in StreamGroup< Proxy >, and StreamGroup< StereoImageStream >.

◆ addSubstream()

virtual bool addSubstream ( std::unique_ptr< SubstreamBase > substream)
protectedpure virtual

Adds a child to the stream group.

Implemented in StreamGroup< Proxy >, and StreamGroup< StereoImageStream >.

◆ removeSubstream()

virtual bool removeSubstream ( Stream * substream)
protectedpure virtual

Removes a child from the stream group.

Implemented in StreamGroup< Proxy >, and StreamGroup< StereoImageStream >.


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