Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkVideoSource Class Reference

Superclass of video digitizers. More...

#include <vtkVideoSource.h>

Inheritance diagram for vtkVideoSource:

Inheritance graph
[legend]
Collaboration diagram for vtkVideoSource:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void Initialize ()
virtual void ReleaseSystemResources ()
virtual void Grab (int n)
void Grab ()
virtual void Play ()
virtual void Stop ()
virtual int GetPlaying ()
virtual void SetFrameRate (float)
virtual float GetFrameRate ()
virtual void SetFrameSize (int dim[3])
virtual void SetFrameSize (int x, int y, int z)
virtual int * GetFrameSize ()
virtual void GetFrameSize (int &, int &, int &)
virtual void GetFrameSize (int[3])
virtual void SetOutputFormat (int format)
void SetOutputFormatToLuminance ()
void SetOutputFormatToRGB ()
void SetOutputFormatToRGBA ()
virtual int GetOutputFormat ()
virtual void SetFrameBufferSize (int FrameBufferSize)
virtual int GetFrameBufferSize ()
virtual void SetNumberOfOutputFrames (int)
virtual int GetNumberOfOutputFrames ()
virtual void AutoAdvanceOn ()
virtual void AutoAdvanceOff ()
virtual void SetAutoAdvance (int)
virtual int GetAutoAdvance ()
virtual void Advance (int n)
virtual void Advance ()
virtual void Rewind (int n)
virtual void Rewind ()
virtual void SetClipRegion (int r[6])
virtual void SetClipRegion (int x0, int x1, int y0, int y1, int z0, int z1)
virtual int * GetClipRegion ()
virtual void GetClipRegion (int &, int &, int &, int &, int &, int &)
virtual void GetClipRegion (int[6])
virtual void SetOutputWholeExtent (int, int, int, int, int, int)
virtual void SetOutputWholeExtent (int[6])
virtual int * GetOutputWholeExtent ()
virtual void GetOutputWholeExtent (int &, int &, int &, int &, int &, int &)
virtual void GetOutputWholeExtent (int[6])
virtual void SetDataSpacing (float, float, float)
virtual void SetDataSpacing (float[3])
virtual float * GetDataSpacing ()
virtual void GetDataSpacing (float &, float &, float &)
virtual void GetDataSpacing (float[3])
virtual void SetDataOrigin (float, float, float)
virtual void SetDataOrigin (float[3])
virtual float * GetDataOrigin ()
virtual void GetDataOrigin (float &, float &, float &)
virtual void GetDataOrigin (float[3])
virtual void SetOpacity (float)
virtual float GetOpacity ()
virtual void SetPreview (int)
virtual void PreviewOn ()
virtual void PreviewOff ()
virtual int GetPreview ()
virtual double GetFrameTimeStamp (int frame)
virtual double GetFrameTimeStamp ()
virtual void SetGrabOnUpdate (int yesno)
virtual void GrabOnUpdateOn ()
virtual void GrabOnUpdateOff ()
virtual int GetGrabOnUpdate ()
virtual void InternalGrab ()
void UpdateInformation ()

Static Public Methods

vtkVideoSource * New ()
int IsTypeOf (const char *type)
vtkVideoSource * SafeDownCast (vtkObject *o)

Protected Methods

 vtkVideoSource ()
 ~vtkVideoSource ()
 vtkVideoSource (const vtkVideoSource &)
void operator= (const vtkVideoSource &)
void ExecuteInformation ()
virtual void UpdateFrameBuffer ()
virtual void AdvanceFrameBuffer (int n)
virtual void Execute (vtkImageData *data)
void Execute ()
virtual void UnpackRasterLine (char *outPtr, char *rowPtr, int start, int count)

Protected Attributes

int Initialized
int FrameSize [3]
int ClipRegion [6]
int OutputWholeExtent [6]
float DataSpacing [3]
float DataOrigin [3]
int OutputFormat
int NumberOfScalarComponents
int FrameOutputExtent [6]
int LastNumberOfScalarComponents
int LastOutputExtent [6]
int Playing
float FrameRate
int AutoAdvance
int NumberOfOutputFrames
float Opacity
int Preview
int GrabOnUpdate
int FlipFrames
int OutputNeedsInitialization
int FrameGrabbed
vtkMultiThreaderPlayerThreader
int PlayerThreadId
vtkMutexLockFrameBufferMutex
int FrameBufferBitsPerPixel
int FrameBufferRowAlignment
int FrameBufferExtent [6]
int FrameBufferSize
int FrameBufferIndex
void ** FrameBuffer
double * FrameBufferTimeStamps

Detailed Description

Superclass of video digitizers.

Date:
2000/12/10 20:08:27
Revision:
1.13
Thanks:
Thanks to David G. Gobbi who developed this class.
vtkVideoSource is a superclass for video input interfaces for VTK. The most important methods are Grab() (grab a single frame), Play() (grab frames continuously), and Stop() (stop grabbing continuously)

See also:
vtkWin32VideoSource vtkMILVideoSource
Examples:
vtkVideoSource (examples)

Definition at line 67 of file vtkVideoSource.h.


Constructor & Destructor Documentation

vtkVideoSource::vtkVideoSource   [protected]
 

vtkVideoSource::~vtkVideoSource   [protected]
 

vtkVideoSource::vtkVideoSource const vtkVideoSource &    [inline, protected]
 

Definition at line 204 of file vtkVideoSource.h.


Member Function Documentation

vtkVideoSource* vtkVideoSource::New   [static]
 

Instantiate object with no start, end, or progress methods.

Reimplemented from vtkImageSource.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual const char* vtkVideoSource::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageSource.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

int vtkVideoSource::IsTypeOf const char *    type [static]
 

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageSource.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual int vtkVideoSource::IsA const char *    type [virtual]
 

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageSource.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

vtkVideoSource* vtkVideoSource::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageSource.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

void vtkVideoSource::PrintSelf ostream &    os,
vtkIndent    indent
[virtual]
 

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkSource.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual void vtkVideoSource::Initialize   [virtual]
 

Initialize the hardware. This is called automatically on the first Update or Grab.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual void vtkVideoSource::ReleaseSystemResources   [virtual]
 

Release the video driver. This is called automatically when the vtkVideoSource is destroyed.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual void vtkVideoSource::Grab int    n [virtual]
 

Grab a single frame or multiple frames.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

void vtkVideoSource::Grab   [inline]
 

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

Definition at line 84 of file vtkVideoSource.h.

Referenced by vtkWin32VideoSource::Grab(), and vtkMILVideoSource::Grab().

virtual void vtkVideoSource::Play   [virtual]
 

Go into continuous grab mode. The video source will be automatically Modified() every time a new frame arrives.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual void vtkVideoSource::Stop   [virtual]
 

End continuous grab mode.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual int vtkVideoSource::GetPlaying   [virtual]
 

Are we in continuous grab mode?

virtual void vtkVideoSource::SetFrameRate float    rate [virtual]
 

Set the frame rate for 'Play' mode. The default is 30 frames/s for most video digitizers.

Reimplemented in vtkWin32VideoSource.

virtual float vtkVideoSource::GetFrameRate   [virtual]
 

virtual void vtkVideoSource::SetFrameSize int    dim[3] [inline, virtual]
 

Set the full-frame size. This must be an allowed size for the device, the device may either refuse a request for an illegal frame size or automatically choose a new frame size. The default is usually 320x240x1, but can be device specific. The 'depth' should always be 1 (unless you have a device that can handle 3D acquisition).

Definition at line 106 of file vtkVideoSource.h.

virtual void vtkVideoSource::SetFrameSize int    x,
int    y,
int    z
[virtual]
 

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

virtual int* vtkVideoSource::GetFrameSize   [virtual]
 

virtual void vtkVideoSource::GetFrameSize int &   ,
int &   ,
int &   
[virtual]
 

virtual void vtkVideoSource::GetFrameSize int   [3] [virtual]
 

virtual void vtkVideoSource::SetOutputFormat int    format [virtual]
 

Set the output format. This must be appropriate for device, usually only VTK_LUMINANCE, VTK_RGB, and VTK_RGBA are supported.

Reimplemented in vtkMILVideoSource, and vtkWin32VideoSource.

void vtkVideoSource::SetOutputFormatToLuminance   [inline]
 

Definition at line 114 of file vtkVideoSource.h.

void vtkVideoSource::SetOutputFormatToRGB   [inline]
 

Definition at line 115 of file vtkVideoSource.h.

void vtkVideoSource::SetOutputFormatToRGBA   [inline]
 

Definition at line 116 of file vtkVideoSource.h.

virtual int vtkVideoSource::GetOutputFormat   [virtual]
 

virtual void vtkVideoSource::SetFrameBufferSize int    FrameBufferSize [virtual]
 

Set size of the frame buffer, i.e. the number of frames to store.

virtual int vtkVideoSource::GetFrameBufferSize   [virtual]
 

virtual void vtkVideoSource::SetNumberOfOutputFrames int    [virtual]
 

Set the number of frames to copy to the output on each execute. The frames will be concatenated along the Z dimension, with the most recent frame first. Default: 1

virtual int vtkVideoSource::GetNumberOfOutputFrames   [virtual]
 

virtual void vtkVideoSource::AutoAdvanceOn   [virtual]
 

Set whether to automatically advance the buffer before each grab. Default: on

virtual void vtkVideoSource::AutoAdvanceOff   [virtual]
 

virtual void vtkVideoSource::SetAutoAdvance int    [virtual]
 

virtual int vtkVideoSource::GetAutoAdvance   [virtual]
 

virtual void vtkVideoSource::Advance int    n [virtual]
 

Advance the buffer by one frame or n frames.

virtual void vtkVideoSource::Advance   [inline, virtual]
 

Definition at line 137 of file vtkVideoSource.h.

virtual void vtkVideoSource::Rewind int    n [inline, virtual]
 

Rewind the buffer by one frame or n frames.

Definition at line 140 of file vtkVideoSource.h.

virtual void vtkVideoSource::Rewind   [inline, virtual]
 

Definition at line 141 of file vtkVideoSource.h.

virtual void vtkVideoSource::SetClipRegion int    r[6] [inline, virtual]
 

Set the clip rectangle for the frames. The video will be clipped before it is copied into the framebuffer. Changing the ClipRegion will destroy the current contents of the framebuffer. The default ClipRegion is (0,VTK_INT_MAX,0,VTK_INT_MAX,0,VTK_INT_MAX).

Definition at line 147 of file vtkVideoSource.h.

virtual void vtkVideoSource::SetClipRegion int    x0,
int    x1,
int    y0,
int    y1,
int    z0,
int    z1
[virtual]
 

virtual int* vtkVideoSource::GetClipRegion   [virtual]
 

virtual void vtkVideoSource::GetClipRegion int &   ,
int &   ,
int &   ,
int &   ,
int &   ,
int &   
[virtual]
 

virtual void vtkVideoSource::GetClipRegion int   [6] [virtual]
 

virtual void vtkVideoSource::SetOutputWholeExtent int   ,
int   ,
int   ,
int   ,
int   ,
int   
[virtual]
 

Get/Set the WholeExtent of the output. This can be used to either clip or pad the video frame. This clipping/padding is done when the frame is copied to the output, and does not change the contents of the framebuffer. This is useful e.g. for expanding the output size to a power of two for texture mapping. The default is (0,-1,0,-1,0,-1) which causes the entire frame to be copied to the output.

virtual void vtkVideoSource::SetOutputWholeExtent int   [6] [virtual]
 

virtual int* vtkVideoSource::GetOutputWholeExtent   [virtual]
 

virtual void vtkVideoSource::GetOutputWholeExtent int &   ,
int &   ,
int &   ,
int &   ,
int &   ,
int &   
[virtual]
 

virtual void vtkVideoSource::GetOutputWholeExtent int   [6] [virtual]
 

virtual void vtkVideoSource::SetDataSpacing float   ,
float   ,
float   
[virtual]
 

Set/Get the pixel spacing. Default: (1.0,1.0,1.0)

virtual void vtkVideoSource::SetDataSpacing float   [3] [virtual]
 

virtual float* vtkVideoSource::GetDataSpacing   [virtual]
 

virtual void vtkVideoSource::GetDataSpacing float &   ,
float &   ,
float &   
[virtual]
 

virtual void vtkVideoSource::GetDataSpacing float   [3] [virtual]
 

virtual void vtkVideoSource::SetDataOrigin float   ,
float   ,
float   
[virtual]
 

Set/Get the coordinates of the lower, left corner of the frame. Default: (0.0,0.0,0.0)

virtual void vtkVideoSource::SetDataOrigin float   [3] [virtual]
 

virtual float* vtkVideoSource::GetDataOrigin   [virtual]
 

virtual void vtkVideoSource::GetDataOrigin float &   ,
float &   ,
float &   
[virtual]
 

virtual void vtkVideoSource::GetDataOrigin float   [3] [virtual]
 

virtual void vtkVideoSource::SetOpacity float    [virtual]
 

For RGBA output only (4 scalar components), set the opacity. This will not modify the contents of the framebuffer, only subsequently grabbed frames.

virtual float vtkVideoSource::GetOpacity   [virtual]
 

virtual void vtkVideoSource::SetPreview int    [virtual]
 

Enable a video preview window if supported by driver.

virtual void vtkVideoSource::PreviewOn   [virtual]
 

virtual void vtkVideoSource::PreviewOff   [virtual]
 

virtual int vtkVideoSource::GetPreview   [virtual]
 

virtual double vtkVideoSource::GetFrameTimeStamp int    frame [virtual]
 

Get a time stamp in seconds (resolution of milliseconds) for a video frame. Time began on Jan 1, 1970.

virtual double vtkVideoSource::GetFrameTimeStamp   [inline, virtual]
 

Definition at line 185 of file vtkVideoSource.h.

virtual void vtkVideoSource::SetGrabOnUpdate int    yesno [virtual]
 

Set this flag to automatically do a grab on each Update. This might be less CPU-intensive than Play() for doing screen animations.

virtual void vtkVideoSource::GrabOnUpdateOn   [virtual]
 

virtual void vtkVideoSource::GrabOnUpdateOff   [virtual]
 

virtual int vtkVideoSource::GetGrabOnUpdate   [virtual]
 

virtual void vtkVideoSource::InternalGrab   [virtual]
 

The internal function which actually does the grab. You will definitely want to override this if you develop a vtkVideoSource subclass.

Reimplemented in vtkMILVideoSource.

void vtkVideoSource::UpdateInformation   [virtual]
 

This method returns the largest data that can be generated.

Reimplemented from vtkSource.

void vtkVideoSource::operator= const vtkVideoSource &    [inline, protected]
 

Definition at line 205 of file vtkVideoSource.h.

void vtkVideoSource::ExecuteInformation   [protected, virtual]
 

Reimplemented from vtkSource.

virtual void vtkVideoSource::UpdateFrameBuffer   [protected, virtual]
 

These methods can be overridden in subclasses

virtual void vtkVideoSource::AdvanceFrameBuffer int    n [protected, virtual]
 

virtual void vtkVideoSource::Execute vtkImageData   data [protected, virtual]
 

Reimplemented from vtkImageSource.

void vtkVideoSource::Execute   [inline, protected, virtual]
 

Reimplemented from vtkImageSource.

Definition at line 274 of file vtkVideoSource.h.

virtual void vtkVideoSource::UnpackRasterLine char *    outptr,
char *    inptr,
int    start,
int    count
[protected, virtual]
 

Reimplemented in vtkWin32VideoSource.


Member Data Documentation

int vtkVideoSource::Initialized [protected]
 

Definition at line 208 of file vtkVideoSource.h.

int vtkVideoSource::FrameSize[3] [protected]
 

Definition at line 210 of file vtkVideoSource.h.

int vtkVideoSource::ClipRegion[6] [protected]
 

Definition at line 211 of file vtkVideoSource.h.

int vtkVideoSource::OutputWholeExtent[6] [protected]
 

Definition at line 212 of file vtkVideoSource.h.

float vtkVideoSource::DataSpacing[3] [protected]
 

Definition at line 213 of file vtkVideoSource.h.

float vtkVideoSource::DataOrigin[3] [protected]
 

Definition at line 214 of file vtkVideoSource.h.

int vtkVideoSource::OutputFormat [protected]
 

Definition at line 215 of file vtkVideoSource.h.

int vtkVideoSource::NumberOfScalarComponents [protected]
 

Definition at line 217 of file vtkVideoSource.h.

int vtkVideoSource::FrameOutputExtent[6] [protected]
 

Definition at line 220 of file vtkVideoSource.h.

int vtkVideoSource::LastNumberOfScalarComponents [protected]
 

Definition at line 224 of file vtkVideoSource.h.

int vtkVideoSource::LastOutputExtent[6] [protected]
 

Definition at line 225 of file vtkVideoSource.h.

int vtkVideoSource::Playing [protected]
 

Definition at line 227 of file vtkVideoSource.h.

float vtkVideoSource::FrameRate [protected]
 

Definition at line 228 of file vtkVideoSource.h.

int vtkVideoSource::AutoAdvance [protected]
 

Definition at line 230 of file vtkVideoSource.h.

int vtkVideoSource::NumberOfOutputFrames [protected]
 

Definition at line 231 of file vtkVideoSource.h.

float vtkVideoSource::Opacity [protected]
 

Definition at line 233 of file vtkVideoSource.h.

int vtkVideoSource::Preview [protected]
 

Definition at line 234 of file vtkVideoSource.h.

int vtkVideoSource::GrabOnUpdate [protected]
 

Definition at line 236 of file vtkVideoSource.h.

int vtkVideoSource::FlipFrames [protected]
 

Definition at line 239 of file vtkVideoSource.h.

int vtkVideoSource::OutputNeedsInitialization [protected]
 

Definition at line 242 of file vtkVideoSource.h.

int vtkVideoSource::FrameGrabbed [protected]
 

Definition at line 245 of file vtkVideoSource.h.

vtkMultiThreader* vtkVideoSource::PlayerThreader [protected]
 

Definition at line 248 of file vtkVideoSource.h.

int vtkVideoSource::PlayerThreadId [protected]
 

Definition at line 249 of file vtkVideoSource.h.

vtkMutexLock* vtkVideoSource::FrameBufferMutex [protected]
 

Definition at line 254 of file vtkVideoSource.h.

int vtkVideoSource::FrameBufferBitsPerPixel [protected]
 

Definition at line 258 of file vtkVideoSource.h.

int vtkVideoSource::FrameBufferRowAlignment [protected]
 

Definition at line 260 of file vtkVideoSource.h.

int vtkVideoSource::FrameBufferExtent[6] [protected]
 

Definition at line 263 of file vtkVideoSource.h.

int vtkVideoSource::FrameBufferSize [protected]
 

Definition at line 265 of file vtkVideoSource.h.

int vtkVideoSource::FrameBufferIndex [protected]
 

Definition at line 266 of file vtkVideoSource.h.

void** vtkVideoSource::FrameBuffer [protected]
 

Definition at line 267 of file vtkVideoSource.h.

double* vtkVideoSource::FrameBufferTimeStamps [protected]
 

Definition at line 268 of file vtkVideoSource.h.


The documentation for this class was generated from the following file:
Generated on Wed Nov 21 13:01:30 2001 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001