VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
makVrv::DtVideoStreamManager Class Reference

DtVideoStreamManager is a singleton class that manages DtVideoStreams in VR-Vantage. More...

Inheritance diagram for makVrv::DtVideoStreamManager:
Inheritance graph
[legend]

Public Types

typedef std::vector
< DtVideoStream * > 
VideoStreamList
 List of video streams.

Public Member Functions

virtual ~DtVideoStreamManager ()
 DTOR.
virtual void addVideoStreamCreator (const DtUnicode &streamType, const DtUnicode &typeDisplayName, DtVideoStreamCreator *creator)
 Add a Creator function for the video stream type indicated.
virtual void videoStreamTypesSupported (std::list< DtUnicode > &streamTypes, std::list< DtUnicode > &displayNames) const
 Get the list of stream types and display names of the video stream that can be created.
virtual DtVideoStreamcreateVideoStream (const DtUnicode &streamType, const DtUnicode &streamName)
 Request creation of (an unitialized) video stream of the specified type with the indicated name.
virtual bool destroyVideoStream (const DtUnicode &streamName)
 Destroy the indicated video stream.
virtual bool renameVideoStream (const DtUnicode &oldName, const DtUnicode &newName)
 Rename a video stream.
virtual DtVideoStreamvideoStream (const DtUnicode &streamName)
 Get a video stream by name.
virtual const VideoStreamListvideoStreams () const
 Get the table of video streams.
virtual bool checkAvailability (const DtVideoStream &stream) const
 Determines if a stream could be started.
virtual void saveVideoStream (const DtVideoStream &stream) const
 Save a video stream.
virtual void loadVideoStream (const DtUnicode &filename)
 Load a video stream from the specified path.
virtual void autoLoadVideoStreams ()
 Auto load all video streams found in dePathConfiguration().videoStreamPath()
virtual void autoStartVideoStreams ()
 Start any video streams marked as autostart.
virtual void addMetadataPublisherCreator (const DtUnicode &pubType, const DtUnicode &typeDisplayName, DtMetadataPublisherCreator *creator)
 Add a creator function for the specified metadata publisher type.
virtual void metadataPublisherTypesSupported (std::list< DtUnicode > &displayNames, std::list< DtUnicode > &pubTypes) const
 Get the list of the display names and publisher types of metadata publishers that can be created.
virtual DtMetadataPublishercreateMetadataPublisher (const DtUnicode &pubType, const DtVideoStream &videoStream) const
 Create a metadata publisher of the indicated type for the specified video stream.
virtual void addImageTaskElementCreator (const DtUnicode &imageTaskType, const DtUnicode &displayName, DtImageTaskElementCreator *creator)
 Add a creator function for the specified image task element type.
virtual void imageTaskElementTypesSupported (std::list< DtUnicode > &displayNames, std::list< DtUnicode > &taskTypes) const
 Get the list of the display names of process image task element types that can be created.
virtual DtImageTaskElementcreateImageTaskElement (const DtUnicode &imageTaskType, DtProcessImageTask *owningTask) const
 Create an image task element.
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 Do nothing constructor.
virtual ~DtVirtualBaseClass ()
 Virtual do nothing destructor.

Static Public Member Functions

static DtVideoStreamManagerinstance (DtDe &de)
 Get the instance for the DtVideoStreamManager.
static void registerInstance (DtDe &de, DtVideoStreamManager *anInstance)
 Register the creator instance with an IG.

Public Attributes

boost::signal< void(DtVideoStream &)> signal_videoStreamAdded
 emitted when a video stream is added to the manager (through creation)
boost::signal< void(DtVideoStream &)> signal_videoStreamToBeDestroyed
 emitted when a video stream is about to be destroyed
boost::signal< void(const
DtVideoStream &)> 
signal_videoStreamStatusChanged
 emitted when the status of a video stream changes

Protected Types

typedef boost::unordered_map
< DtUnicode, DtVideoStream * > 
VideoStreamMap
 VideoStreamMap is a hash table of Video Stream Names to video streams.
typedef std::pair< DtUnicode,
DtVideoStreamCreator * > 
VideoStreamNameCreatorPair
typedef std::pair< DtUnicode,
DtImageTaskElementCreator * > 
ImageTaskNameCreatorPair
typedef std::pair< DtUnicode,
DtMetadataPublisherCreator * > 
MetadataPublisherNameCreatorPair
typedef boost::unordered_map
< DtUnicode,
MetadataPublisherNameCreatorPair
MetadataPublisherCreators
typedef boost::unordered_map
< DtUnicode,
ImageTaskNameCreatorPair
ImageTaskElementCreators
typedef boost::unordered_map
< DtUnicode,
VideoStreamNameCreatorPair
VideoStreamCreators

Protected Member Functions

 DtVideoStreamManager (DtDe &de)
virtual void removeVideoStreamFile (const DtVideoStream &stream) const
 Remove the specified video stream configuration from the filesystem.
virtual void removeVideoStreamFromList (const DtVideoStream *streamPtr)
 Remove the video stream pointer from the video stream list maintained for external access.
virtual DtUnicode createVideoStreamFilename (const DtVideoStream &stream) const
 Create tthe filename for a video stream based on its instance name, stream type, and dePathConfiguration().videoStreamPath()
virtual void connectToVideoStreamSignals (DtVideoStream &stream)
 Connect manager slots to signals from a video stream.
virtual void disconnectFromVideoStreamSignals (DtVideoStream &stream)
 Disconnect manager slots to signals from a video stream.
virtual void slot_videoStreamStatusChanged (const DtVideoStream &stream)
 Slot called when a video stream raises signal_videoStreamStatusChanged.

Protected Attributes

MetadataPublisherCreators myMetadataPublisherCreators
ImageTaskElementCreators myImageTaskElementCreators
VideoStreamCreators myVideoStreamCreators
VideoStreamMap myVideoStreams
VideoStreamList myVideoStreamList
DtDemyDe

Detailed Description

DtVideoStreamManager is a singleton class that manages DtVideoStreams in VR-Vantage.

Member Typedef Documentation

List of video streams.

typedef boost::unordered_map<DtUnicode, DtVideoStream*> makVrv::DtVideoStreamManager::VideoStreamMap
protected

VideoStreamMap is a hash table of Video Stream Names to video streams.

Constructor & Destructor Documentation

virtual makVrv::DtVideoStreamManager::~DtVideoStreamManager ( )
virtual

DTOR.

makVrv::DtVideoStreamManager::DtVideoStreamManager ( DtDe de)
protected

Member Function Documentation

static DtVideoStreamManager& makVrv::DtVideoStreamManager::instance ( DtDe de)
static

Get the instance for the DtVideoStreamManager.

Exceptions
DtCorruptedStateif it is unable to get the instance.
static void makVrv::DtVideoStreamManager::registerInstance ( DtDe de,
DtVideoStreamManager anInstance 
)
static

Register the creator instance with an IG.

virtual void makVrv::DtVideoStreamManager::addVideoStreamCreator ( const DtUnicode streamType,
const DtUnicode typeDisplayName,
DtVideoStreamCreator creator 
)
virtual

Add a Creator function for the video stream type indicated.

virtual void makVrv::DtVideoStreamManager::videoStreamTypesSupported ( std::list< DtUnicode > &  streamTypes,
std::list< DtUnicode > &  displayNames 
) const
virtual

Get the list of stream types and display names of the video stream that can be created.

virtual DtVideoStream* makVrv::DtVideoStreamManager::createVideoStream ( const DtUnicode streamType,
const DtUnicode streamName 
)
virtual

Request creation of (an unitialized) video stream of the specified type with the indicated name.

If a video stream with the same name already exists or if a creator for streamType is not found, NULL is returned. Note that this does not cause a video stream configuration to be saved. Call saveVideoStream to do that after creation.

virtual bool makVrv::DtVideoStreamManager::destroyVideoStream ( const DtUnicode streamName)
virtual

Destroy the indicated video stream.

Returns false if there is no video stream with the indicated name.

virtual bool makVrv::DtVideoStreamManager::renameVideoStream ( const DtUnicode oldName,
const DtUnicode newName 
)
virtual

Rename a video stream.

Returns false if there is no video stream with the old name; or if there already is a video stream with the new name.

virtual DtVideoStream* makVrv::DtVideoStreamManager::videoStream ( const DtUnicode streamName)
virtual

Get a video stream by name.

virtual const VideoStreamList& makVrv::DtVideoStreamManager::videoStreams ( ) const
virtual

Get the table of video streams.

virtual bool makVrv::DtVideoStreamManager::checkAvailability ( const DtVideoStream stream) const
virtual

Determines if a stream could be started.

False if already started or another stream is already running on the same channel

virtual void makVrv::DtVideoStreamManager::saveVideoStream ( const DtVideoStream stream) const
virtual

Save a video stream.

The filename will be be the stream's instanceName.streamType, and it will be placed in the directory indicated by dePathConfiguration().videoStreamPath()

virtual void makVrv::DtVideoStreamManager::loadVideoStream ( const DtUnicode filename)
virtual

Load a video stream from the specified path.

virtual void makVrv::DtVideoStreamManager::autoLoadVideoStreams ( )
virtual

Auto load all video streams found in dePathConfiguration().videoStreamPath()

virtual void makVrv::DtVideoStreamManager::autoStartVideoStreams ( )
virtual

Start any video streams marked as autostart.

virtual void makVrv::DtVideoStreamManager::addMetadataPublisherCreator ( const DtUnicode pubType,
const DtUnicode typeDisplayName,
DtMetadataPublisherCreator creator 
)
virtual

Add a creator function for the specified metadata publisher type.

virtual void makVrv::DtVideoStreamManager::metadataPublisherTypesSupported ( std::list< DtUnicode > &  displayNames,
std::list< DtUnicode > &  pubTypes 
) const
virtual

Get the list of the display names and publisher types of metadata publishers that can be created.

virtual DtMetadataPublisher* makVrv::DtVideoStreamManager::createMetadataPublisher ( const DtUnicode pubType,
const DtVideoStream videoStream 
) const
virtual

Create a metadata publisher of the indicated type for the specified video stream.

virtual void makVrv::DtVideoStreamManager::addImageTaskElementCreator ( const DtUnicode imageTaskType,
const DtUnicode displayName,
DtImageTaskElementCreator creator 
)
virtual

Add a creator function for the specified image task element type.

virtual void makVrv::DtVideoStreamManager::imageTaskElementTypesSupported ( std::list< DtUnicode > &  displayNames,
std::list< DtUnicode > &  taskTypes 
) const
virtual

Get the list of the display names of process image task element types that can be created.

virtual DtImageTaskElement* makVrv::DtVideoStreamManager::createImageTaskElement ( const DtUnicode imageTaskType,
DtProcessImageTask owningTask 
) const
virtual

Create an image task element.

virtual void makVrv::DtVideoStreamManager::removeVideoStreamFile ( const DtVideoStream stream) const
protectedvirtual

Remove the specified video stream configuration from the filesystem.

virtual void makVrv::DtVideoStreamManager::removeVideoStreamFromList ( const DtVideoStream streamPtr)
protectedvirtual

Remove the video stream pointer from the video stream list maintained for external access.

virtual DtUnicode makVrv::DtVideoStreamManager::createVideoStreamFilename ( const DtVideoStream stream) const
protectedvirtual

Create tthe filename for a video stream based on its instance name, stream type, and dePathConfiguration().videoStreamPath()

virtual void makVrv::DtVideoStreamManager::connectToVideoStreamSignals ( DtVideoStream stream)
protectedvirtual

Connect manager slots to signals from a video stream.

virtual void makVrv::DtVideoStreamManager::disconnectFromVideoStreamSignals ( DtVideoStream stream)
protectedvirtual

Disconnect manager slots to signals from a video stream.

virtual void makVrv::DtVideoStreamManager::slot_videoStreamStatusChanged ( const DtVideoStream stream)
protectedvirtual

Slot called when a video stream raises signal_videoStreamStatusChanged.

Member Data Documentation

boost::signal<void ( DtVideoStream& )> makVrv::DtVideoStreamManager::signal_videoStreamAdded

emitted when a video stream is added to the manager (through creation)

boost::signal<void ( DtVideoStream& )> makVrv::DtVideoStreamManager::signal_videoStreamToBeDestroyed

emitted when a video stream is about to be destroyed

boost::signal<void ( const DtVideoStream& )> makVrv::DtVideoStreamManager::signal_videoStreamStatusChanged

emitted when the status of a video stream changes

MetadataPublisherCreators makVrv::DtVideoStreamManager::myMetadataPublisherCreators
protected
ImageTaskElementCreators makVrv::DtVideoStreamManager::myImageTaskElementCreators
protected
VideoStreamCreators makVrv::DtVideoStreamManager::myVideoStreamCreators
protected
VideoStreamMap makVrv::DtVideoStreamManager::myVideoStreams
protected
VideoStreamList makVrv::DtVideoStreamManager::myVideoStreamList
protected
DtDe& makVrv::DtVideoStreamManager::myDe
protected

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

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)