![]() |
VR-Forces Development_Version Class Documentation
|
A DtVideoStream instance will create a single streaming video pipeline on the channel indicated by windowName/ channelName. More...
Public Types | |
| enum | VideoStreamStatus { Stopped, Started, Suspended, Unavailable } |
Public Member Functions | |
| virtual | ~DtVideoStream () |
| DTOR. | |
| virtual DtUnicode | instanceName () const |
| Get the name of this stream. | |
| virtual DtUnicode | className () const |
| Get the class of this stream This is the className that was given to the factory to construct this stream, and can be used to lookup a widget creator for a dialog that can edit it. | |
| virtual bool | start () |
| Start streaming video. | |
| virtual void | notifyOtherStreamStarted (const DtVideoStream &startedStream) |
| Tell the stream when another stream has started. | |
| virtual bool | stop () |
| Stop streaming video. | |
| virtual void | setAutoStart (bool autoStart) |
| When autoStart is set to true, the video stream is started after all VR_Vantage initialization completes. | |
| virtual bool | autoStart () const |
| Get whether the video stream should be auto started. | |
| virtual void | notifyOtherStreamStopped (const DtVideoStream &stoppedStream) |
| Tell the stream when another stream has stopped. | |
| virtual VideoStreamStatus | status () const |
| Get the video stream's status. | |
| virtual void | setFromRecord (const makArchives::DtVideoStreamRecord &vsRecord) |
| Initialize this video stream based on a DtVideoStreamRecord. | |
| virtual void | setFromVideoStream (const DtVideoStream &stream) |
| Initialize this video stream based on another video stream. | |
| virtual void | swapImageTasks (int index1, int index2) |
| Swap the image tasks at the specified indices. | |
| virtual bool | saveVideoStream (const DtUnicode &filePath) const |
| Save the video stream to the specified file. | |
| virtual bool | loadVideoStream (const DtUnicode &filePath) |
| Initialize the video stream from the specified file. | |
| virtual void | reportFramebufferCallbackFailure () |
| If the draw callback (readback) detects an error, it calls this and then deletes itself. | |
| virtual int | channelWidth () const |
| Channel parameters. | |
| virtual int | channelHeight () const |
| Get the height (in pixels) of the channel. | |
| virtual int | channelX () const |
| Get the start x pixel of the channel. | |
| virtual int | channelY () const |
| Get the start y pixel of the channel. | |
| virtual double | horizontalFov () const |
| Get the channel camera's horizontal Field Of View. | |
| virtual double | verticalFov () const |
| Get the channel camera's vertical Field Of View. | |
| virtual void | setWindowName (const DtUnicode &windowName) |
| Video stream parameters. | |
| virtual DtUnicode | windowName () const |
| Get the window name that the streamed channel belongs to. | |
| virtual void | setChannelName (const DtUnicode &channelName) |
| Set the name of the channel within the specified window that the video will be captured from. | |
| virtual DtUnicode | channelName () const |
| Get the name of the channel to be streamed to video. | |
| virtual void | setDataType (const DtUnicode &dataType) |
| Set the data type of the osg::image used to capture a frame. | |
| virtual DtUnicode | dataType () const |
| Get the datatype to use. | |
| virtual void | setFrameRate (int frameRate) |
| Set the capture frame rate (in seconds) | |
| virtual int | frameRate () const |
| Get the frame rate the video should be streamed at. | |
| virtual void | setPixelFormat (const DtUnicode &pixelFormat) |
| Set the pixel format of the osg::image used to capture a frame. | |
| virtual DtUnicode | pixelFormat () const |
| Get the pixel format. | |
| virtual void | setNumBuffers (int numBuffers) |
| Set the number of pixel buffer objects used for image capture. | |
| virtual int | numBuffers () const |
| Get the number of buffers to use. | |
| virtual void | setReadBuffer (const DtUnicode &readBuffer) |
| Set the read buffer type. | |
| virtual DtUnicode | readBuffer () const |
| Get the type of read buffer to use. | |
| virtual void | addImageTask (const makArchives::DtImageTaskRecord &imageTask) |
| Add an image task to be part of the image task element pipeline. | |
| virtual void | removeImageTask (const makArchives::DtImageTaskRecord &imageTask) |
| Remove an image task. | |
| virtual void | setImageTask (int index, const makArchives::DtImageTaskRecord &imageTask) |
| Set the image processing task at a specific index. | |
| virtual void | setImageTasks (const makArchives::DtVideoStreamRecord::ImageTaskRecords &imageTasks) |
| Replace the entire set of image tasks with the specified image tasks. | |
| virtual const makArchives::DtVideoStreamRecord::ImageTaskRecords & | imageTasks () const |
| Get the image task records in the collection. | |
| virtual makArchives::DtVideoStreamRecord::ImageTaskRecords & | imageTasks () |
| Get the (non-const) image task records in the collection. | |
| virtual void | setParameterInt (int taskElementIndex, const DtUnicode ¶meterName, int value) |
| Set the integer name/value parameter of the image task at the specified index. | |
| virtual void | setParameterDouble (int taskElementIndex, const DtUnicode ¶meterName, double value) |
| Set the double name/value parameter of the image task at the specified index. | |
| virtual void | setParameterBool (int taskElementIndex, const DtUnicode ¶meterName, bool value) |
| Set the boolean name/value parameter of the image task at the specified index. | |
| virtual void | setParameterString (int taskElementIndex, const DtUnicode ¶meterName, const DtUnicode &value) |
| Set the string name/value parameter of the image task at the specified index. | |
| virtual void | setMetadataPublisher (const makArchives::DtMetadataPublisherRecord &pubRecord) |
| Set the metadata publisher type and parameters via a DtMetadataPublisherRecord. | |
| virtual void | setMetadataPublisherType (const DtUnicode &pubType) |
| Set the type of metadata publisher this stream will use. | |
| virtual void | setMetadataPublisherObserverName (const DtUnicode &observer) |
| Set the name of the Observer the metadata publisher should publish information about. | |
| virtual void | setMetadataPublisherParameters (const makArchives::DtNameValueLists ¶meters) |
| Set all the name/value parameters for the metadata publisher. | |
| virtual const makArchives::DtMetadataPublisherRecord & | metadataPublisher () const |
| Get the metadata publisher record. | |
Public Attributes | |
| boost::signal< void(const DtUnicode &)> | signal_windowNameChanged |
| Signals raised when changes are made to the video stream configuration. | |
| boost::signal< void(const DtUnicode &)> | signal_channelNameChanged |
| emitted when the channel that should be streamed changes | |
| boost::signal< void(const DtUnicode &)> | signal_dataTypeChanged |
| emitted when the data type of the osg::image used to capture a frame changes | |
| boost::signal< void(int)> | signal_frameRateChanged |
| emitted when the the capture frame rate changes | |
| boost::signal< void(const DtUnicode &)> | signal_pixelFormatChanged |
| emitted when the pixel format of the osg::image used to capture a frame changes | |
| boost::signal< void(int)> | signal_numBuffersChanged |
| emitted when the number of pixel buffer objects changes | |
| boost::signal< void(const DtUnicode &)> | signal_readBufferChanged |
| emitted when the read buffer type changes | |
| boost::signal< void(const makArchives::DtImageTaskRecord &)> | signal_imageTaskAdded |
| emitted when an process image task element is added | |
| boost::signal< void(const makArchives::DtImageTaskRecord &)> | signal_imageTaskToBeRemoved |
| emitted when a process image task element is about to be removed | |
| boost::signal< void(int imageTaskIndex)> | signal_imageTaskRemoved |
| emitted after a process image task element has been removed | |
| boost::signal< void(const makArchives::DtVideoStreamRecord::ImageTaskRecords &)> | signal_imageTasksChanged |
| emitted when all image tasks have been replaced | |
| boost::signal< void(int index, const makArchives::DtImageTaskRecord &)> | signal_imageTaskChanged |
| emitted when the image task at index has changed | |
| boost::signal< void(const makArchives::DtMetadataPublisherRecord &)> | signal_metadataPublisherChanged |
| emitted when the metadata publisher changes | |
| boost::signal< void(const DtUnicode &)> | signal_metadataPublisherTypeChanged |
| emitted when the metadata publisher type has changed | |
| boost::signal< void(const DtUnicode &)> | signal_metadataPublisherObserverNameChanged |
| emitted when the observer tracked by a metadata publisher changes | |
| boost::signal< void(const makArchives::DtNameValueLists &)> | signal_metadataPublisherParametersChanged |
| emitted when metadatapublisher type-specific parameters change | |
| boost::signal< void(int index1, int index2)> | signal_imageTasksSwapped |
| emitted when the order of two tasks are swapped | |
| boost::signal< void(VideoStreamStatus)> | signal_videoStreamStatusChanged |
| emitted when the video stream's status changes | |
| boost::signal< void(bool)> | signal_videoStreamAutoStartChanged |
| emitted when the video stream's autoStart parameter is changed | |
| boost::signal< void(int taskIndex, const DtUnicode ¶meter, int value)> | signal_intTaskParameterChanged |
| emitted when the specified integer parameter/value is changed for the image task at task index | |
| boost::signal< void(int taskIndex, const DtUnicode ¶meter, double value)> | signal_doubleTaskParameterChanged |
| emitted when the specified double parameter/value is changed for the image task at task index | |
| boost::signal< void(int taskIndex, const DtUnicode ¶meter, bool value)> | signal_boolTaskParameterChanged |
| emitted when the specified boolean parameter/value is changed for the image task at task index | |
| boost::signal< void(int taskIndex, const DtUnicode ¶meter, const DtUnicode &value)> | signal_stringTaskParameterChanged |
| emitted when the specified string parameter/value is changed for the image task at task index | |
Protected Member Functions | |
| DtVideoStream (DtDe &de, DtVideoStreamManager &mgr, const DtUnicode &className, const DtUnicode &instanceName) | |
| Constructor. | |
| virtual DtReadFramebufferCallback * | createFramebufferReadback () |
| Create the callback that goes in the channel camera's post-render callback slot. | |
| virtual void | updateFov () |
| Update the current vertical and horizontal fields of view. | |
| virtual void | updateChannelWidthAndHeight () |
| Update the current channel width and height. | |
| virtual bool | installFramebufferCallback () |
| InstallFramebufferCallback detmerines the current parameters of a channel and installs a final draw callback on the channel to be streamed's camera. | |
| virtual void | removeFrameReadback () |
| RemoveFrameCallback removes the final draw callback from the camera of the channel being streamed. | |
| virtual void | slot_channelConfigurationModified (const std::string &displayName, const std::string &windowName, const std::string &channelName) |
| Called when DtDe::signal_channelConfigurationModified is raised. | |
| virtual void | slot_windowConfigurationModified (const std::string &displayName, const std::string &windowName) |
| Called when DtDe::signal_windowConfigurationModified is raised. | |
Protected Attributes | |
| makArchives::DtVideoStreamRecord | myVideoStreamRecord |
| DtVideoStreamManager & | myVideoStreamManager |
| DtReadFramebufferCallback * | myChannelReadback |
| DtOsgChannel * | myChannel |
| DtDe & | myDe |
| DtUnicode | myInstanceName |
| DtUnicode | myClassName |
| int | myChannelWidth |
| int | myChannelHeight |
| int | myChannelX |
| int | myChannelY |
| double | myHorizontalFov |
| double | myVerticalFov |
| VideoStreamStatus | myStatus |
Private Member Functions | |
| DtVideoStream () | |
| Unimimplemented default constructor. | |
| DtVideoStream (const DtVideoStream &rhs) | |
| Unimimplemented copy constructor. | |
| DtVideoStream & | operator= (const DtVideoStream &rhs) |
| Unimimplemented assignment operator. | |
Friends | |
| class | DtVideoStreamCreator |
| Only DtVideoStreamCreator can construct a DtVideoStream. | |
| class | DtVideoStreamManager |
| Only DtVideoStreamManager can save a videoStream. | |
A DtVideoStream instance will create a single streaming video pipeline on the channel indicated by windowName/ channelName.
|
virtual |
DTOR.
|
protected |
Constructor.
Only called by friend class DtVideoStreamCreator. Instance name must be unique.
|
private |
Unimimplemented default constructor.
|
private |
Unimimplemented copy constructor.
|
virtual |
Get the name of this stream.
|
virtual |
Get the class of this stream This is the className that was given to the factory to construct this stream, and can be used to lookup a widget creator for a dialog that can edit it.
|
virtual |
Start streaming video.
|
virtual |
Tell the stream when another stream has started.
The video stream maintains its own status, which includes whether or not it is available. It becomes unavailable when another stream is running on its window/channel.
|
virtual |
Stop streaming video.
|
virtual |
When autoStart is set to true, the video stream is started after all VR_Vantage initialization completes.
|
virtual |
Get whether the video stream should be auto started.
|
virtual |
Tell the stream when another stream has stopped.
The video stream maintains its own status, which includes whether or not it is available. An unavailable stream becomes available when another stream running on its window/channel stops.
|
virtual |
Get the video stream's status.
|
virtual |
Initialize this video stream based on a DtVideoStreamRecord.
|
virtual |
Initialize this video stream based on another video stream.
|
virtual |
Channel parameters.
Taken from the channel being streamed. These are only available after a stream has been started Get the width (in pixels) of the channel
|
virtual |
Get the height (in pixels) of the channel.
|
virtual |
Get the start x pixel of the channel.
|
virtual |
Get the start y pixel of the channel.
|
virtual |
Get the channel camera's horizontal Field Of View.
|
virtual |
Get the channel camera's vertical Field Of View.
|
virtual |
Video stream parameters.
These wrap the DtVideoStreamRecord owned by the stream. Mutators cause the stream to be saved and signals to be raised when the values changed. Set the name of the window the video will be captured from
|
virtual |
Get the window name that the streamed channel belongs to.
|
virtual |
Set the name of the channel within the specified window that the video will be captured from.
|
virtual |
Get the name of the channel to be streamed to video.
|
virtual |
Set the data type of the osg::image used to capture a frame.
The following values are supported: "ubyte" "byte" "float" "int8888" "int8888R"
|
virtual |
Get the datatype to use.
|
virtual |
Set the capture frame rate (in seconds)
|
virtual |
Get the frame rate the video should be streamed at.
|
virtual |
Set the pixel format of the osg::image used to capture a frame.
The following values are supported: "RGB" "BGR" "BGRA" "RGBA" "DEPTH"
|
virtual |
Get the pixel format.
|
virtual |
Set the number of pixel buffer objects used for image capture.
|
virtual |
Get the number of buffers to use.
|
virtual |
Set the read buffer type.
Supported values are: "back" "front"
|
virtual |
Get the type of read buffer to use.
|
virtual |
Add an image task to be part of the image task element pipeline.
DtImageTaskRecord specifies the type of task and its initialization values
|
virtual |
Remove an image task.
A task that matches the argument image task record, in type and parameters, will be removed
|
virtual |
Set the image processing task at a specific index.
If there is already a task at that index, it is replaced. If index is >= the current image task list size, it is appended to the end of the list.
|
virtual |
Replace the entire set of image tasks with the specified image tasks.
|
virtual |
Get the image task records in the collection.
|
virtual |
Get the (non-const) image task records in the collection.
|
virtual |
Set the integer name/value parameter of the image task at the specified index.
|
virtual |
Set the double name/value parameter of the image task at the specified index.
|
virtual |
Set the boolean name/value parameter of the image task at the specified index.
|
virtual |
Set the string name/value parameter of the image task at the specified index.
|
virtual |
Set the metadata publisher type and parameters via a DtMetadataPublisherRecord.
|
virtual |
Set the type of metadata publisher this stream will use.
"" indicates no publisher
|
virtual |
Set the name of the Observer the metadata publisher should publish information about.
|
virtual |
Set all the name/value parameters for the metadata publisher.
|
virtual |
Get the metadata publisher record.
|
virtual |
Swap the image tasks at the specified indices.
Save the video stream to the specified file.
Initialize the video stream from the specified file.
|
virtual |
If the draw callback (readback) detects an error, it calls this and then deletes itself.
|
protectedvirtual |
Create the callback that goes in the channel camera's post-render callback slot.
|
protectedvirtual |
Update the current vertical and horizontal fields of view.
|
protectedvirtual |
Update the current channel width and height.
|
protectedvirtual |
InstallFramebufferCallback detmerines the current parameters of a channel and installs a final draw callback on the channel to be streamed's camera.
|
protectedvirtual |
RemoveFrameCallback removes the final draw callback from the camera of the channel being streamed.
|
protectedvirtual |
Called when DtDe::signal_channelConfigurationModified is raised.
|
protectedvirtual |
Called when DtDe::signal_windowConfigurationModified is raised.
|
private |
Unimimplemented assignment operator.
|
friend |
Only DtVideoStreamCreator can construct a DtVideoStream.
|
friend |
Only DtVideoStreamManager can save a videoStream.
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_windowNameChanged |
Signals raised when changes are made to the video stream configuration.
emitted when the window containing the channel that should be streamed changes
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_channelNameChanged |
emitted when the channel that should be streamed changes
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_dataTypeChanged |
emitted when the data type of the osg::image used to capture a frame changes
| boost::signal<void ( int )> makVrv::DtVideoStream::signal_frameRateChanged |
emitted when the the capture frame rate changes
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_pixelFormatChanged |
emitted when the pixel format of the osg::image used to capture a frame changes
| boost::signal<void ( int )> makVrv::DtVideoStream::signal_numBuffersChanged |
emitted when the number of pixel buffer objects changes
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_readBufferChanged |
emitted when the read buffer type changes
| boost::signal<void ( const makArchives::DtImageTaskRecord& )> makVrv::DtVideoStream::signal_imageTaskAdded |
emitted when an process image task element is added
| boost::signal<void ( const makArchives::DtImageTaskRecord& )> makVrv::DtVideoStream::signal_imageTaskToBeRemoved |
emitted when a process image task element is about to be removed
| boost::signal<void ( int imageTaskIndex )> makVrv::DtVideoStream::signal_imageTaskRemoved |
emitted after a process image task element has been removed
| boost::signal<void ( const makArchives::DtVideoStreamRecord::ImageTaskRecords& )> makVrv::DtVideoStream::signal_imageTasksChanged |
emitted when all image tasks have been replaced
| boost::signal<void ( int index, const makArchives::DtImageTaskRecord& )> makVrv::DtVideoStream::signal_imageTaskChanged |
emitted when the image task at index has changed
| boost::signal<void ( const makArchives::DtMetadataPublisherRecord& )> makVrv::DtVideoStream::signal_metadataPublisherChanged |
emitted when the metadata publisher changes
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_metadataPublisherTypeChanged |
emitted when the metadata publisher type has changed
| boost::signal<void ( const DtUnicode& )> makVrv::DtVideoStream::signal_metadataPublisherObserverNameChanged |
emitted when the observer tracked by a metadata publisher changes
| boost::signal<void ( const makArchives::DtNameValueLists& )> makVrv::DtVideoStream::signal_metadataPublisherParametersChanged |
emitted when metadatapublisher type-specific parameters change
| boost::signal<void ( int index1, int index2 )> makVrv::DtVideoStream::signal_imageTasksSwapped |
emitted when the order of two tasks are swapped
| boost::signal<void ( VideoStreamStatus )> makVrv::DtVideoStream::signal_videoStreamStatusChanged |
emitted when the video stream's status changes
| boost::signal< void ( bool )> makVrv::DtVideoStream::signal_videoStreamAutoStartChanged |
emitted when the video stream's autoStart parameter is changed
| boost::signal<void ( int taskIndex, const DtUnicode& parameter, int value )> makVrv::DtVideoStream::signal_intTaskParameterChanged |
emitted when the specified integer parameter/value is changed for the image task at task index
| boost::signal<void ( int taskIndex, const DtUnicode& parameter, double value )> makVrv::DtVideoStream::signal_doubleTaskParameterChanged |
emitted when the specified double parameter/value is changed for the image task at task index
| boost::signal<void ( int taskIndex, const DtUnicode& parameter, bool value )> makVrv::DtVideoStream::signal_boolTaskParameterChanged |
emitted when the specified boolean parameter/value is changed for the image task at task index
| boost::signal<void ( int taskIndex, const DtUnicode& parameter, const DtUnicode& value )> makVrv::DtVideoStream::signal_stringTaskParameterChanged |
emitted when the specified string parameter/value is changed for the image task at task index
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |