20#ifndef vtkVideoSource_h 
   21#define vtkVideoSource_h 
   23#include "vtkIOVideoModule.h"  
   28VTK_ABI_NAMESPACE_BEGIN
 
   86  vtkGetMacro(Recording, 
int);
 
   94  vtkGetMacro(Playing, 
int);
 
  108  vtkGetVector3Macro(FrameSize, 
int);
 
  116  vtkGetMacro(FrameRate, 
float);
 
  128  vtkGetMacro(OutputFormat, 
int);
 
  137  vtkGetMacro(FrameBufferSize, 
int);
 
  147  vtkSetMacro(NumberOfOutputFrames, 
int);
 
  148  vtkGetMacro(NumberOfOutputFrames, 
int);
 
  170  vtkGetVector6Macro(ClipRegion, 
int);
 
  183  vtkSetVector6Macro(OutputWholeExtent, 
int);
 
  184  vtkGetVector6Macro(OutputWholeExtent, 
int);
 
  192  vtkSetVector3Macro(DataSpacing, 
double);
 
  193  vtkGetVector3Macro(DataSpacing, 
double);
 
  201  vtkSetVector3Macro(DataOrigin, 
double);
 
  202  vtkGetVector3Macro(DataOrigin, 
double);
 
  211  vtkSetMacro(Opacity, 
float);
 
  212  vtkGetMacro(Opacity, 
float);
 
  220  vtkGetMacro(FrameCount, 
int);
 
  221  vtkSetMacro(FrameCount, 
int);
 
  229  vtkGetMacro(FrameIndex, 
int);
 
  288  int OutputWholeExtent[6];
 
  289  double DataSpacing[3];
 
  290  double DataOrigin[3];
 
  296  int FrameOutputExtent[6];
 
  301  int LastOutputExtent[6];
 
  337  int FrameBufferExtent[6];
 
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.
 
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()
Initialize the hardware.
 
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)
These methods can be overridden in subclasses.
 
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)
Set the clip rectangle for the frames.
 
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])
Set the full-frame size.
 
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()
Set the output format.
 
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()
And internal variable which marks the beginning of a Record session.
 
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
These methods can be overridden in subclasses.
 
int FrameBufferBitsPerPixel
 
virtual void SetFrameSize(int x, int y, int z)
Set the full-frame size.
 
void SetOutputFormatToRGB()
Set the output format.
 
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()
Set the output format.
 
virtual void AdvanceFrameBuffer(int n)
These methods can be overridden in subclasses.
 
std::mutex FrameBufferMutex