32 #ifndef vtkVideoSource_h
33 #define vtkVideoSource_h
35 #include "vtkIOVideoModule.h"
96 vtkGetMacro(Recording,
int);
104 vtkGetMacro(Playing,
int);
118 vtkGetVector3Macro(FrameSize,
int);
126 vtkGetMacro(FrameRate,
float);
138 vtkGetMacro(OutputFormat,
int);
147 vtkGetMacro(FrameBufferSize,
int);
157 vtkSetMacro(NumberOfOutputFrames,
int);
158 vtkGetMacro(NumberOfOutputFrames,
int);
180 vtkGetVector6Macro(ClipRegion,
int);
193 vtkSetVector6Macro(OutputWholeExtent,
int);
194 vtkGetVector6Macro(OutputWholeExtent,
int);
202 vtkSetVector3Macro(DataSpacing,
double);
203 vtkGetVector3Macro(DataSpacing,
double);
211 vtkSetVector3Macro(DataOrigin,
double);
212 vtkGetVector3Macro(DataOrigin,
double);
221 vtkSetMacro(Opacity,
float);
222 vtkGetMacro(Opacity,
float);
230 vtkGetMacro(FrameCount,
int);
231 vtkSetMacro(FrameCount,
int);
239 vtkGetMacro(FrameIndex,
int);
298 int OutputWholeExtent[6];
299 double DataSpacing[3];
300 double DataOrigin[3];
306 int FrameOutputExtent[6];
311 int LastOutputExtent[6];
347 int FrameBufferExtent[6];
Critical section locking class.
Generic algorithm superclass for image algs.
a simple class to control print indentation
A class for performing multithreaded execution.
Superclass for mapping scalar values to colors.
Timer support and logging.
Superclass of video input devices for VTK.
virtual void SetFrameRate(float rate)
Request a particular frame rate (default 30 frames per second).
void SetStartTimeStamp(double t)
And internal variable which marks the beginning of a Record session.
vtkCriticalSection * FrameBufferMutex
virtual void Seek(int n)
Seek forwards or backwards by the specified number of frames (positive is forward,...
double * FrameBufferTimeStamps
vtkMultiThreader * PlayerThreader
int LastNumberOfScalarComponents
int NumberOfScalarComponents
virtual int GetInitialized()
virtual void Stop()
Stop recording or playing.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
virtual void Rewind()
Rewind to the frame with the earliest timestamp.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void UnpackRasterLine(char *outPtr, char *rowPtr, int start, int count)
virtual void InternalGrab()
The internal function which actually does the grab.
virtual void SetClipRegion(int x0, int x1, int y0, int y1, int z0, int z1)
int FrameBufferRowAlignment
virtual void SetClipRegion(int r[6])
Set the clip rectangle for the frames.
static vtkVideoSource * New()
virtual void FastForward()
FastForward to the last frame that was recorded (i.e.
virtual void SetFrameSize(int dim[3])
virtual void Play()
Play through the 'tape' sequentially at the specified frame rate.
virtual void Record()
Record incoming video at the specified FrameRate.
~vtkVideoSource() override
void SetOutputFormatToRGBA()
double GetFrameTimeStamp()
Get a time stamp in seconds (resolution of milliseconds) for the Output.
virtual void SetOutputFormat(int format)
Set the output format.
double GetStartTimeStamp()
int OutputNeedsInitialization
virtual void ReleaseSystemResources()
Release the video driver.
virtual double GetFrameTimeStamp(int frame)
Get a time stamp in seconds (resolution of milliseconds) for a video frame.
virtual void UpdateFrameBuffer()
These methods can be overridden in subclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called in response to a REQUEST_DATA request from the executive.
int FrameBufferBitsPerPixel
virtual void SetFrameSize(int x, int y, int z)
Set the full-frame size.
void SetOutputFormatToRGB()
virtual void SetFrameBufferSize(int FrameBufferSize)
Set size of the frame buffer, i.e.
virtual void Initialize()
Initialize the hardware.
virtual void Grab()
Grab a single video frame.
void SetOutputFormatToLuminance()
virtual void AdvanceFrameBuffer(int n)