20 #ifndef vtkVideoSource_h
21 #define vtkVideoSource_h
23 #include "vtkIOVideoModule.h"
28 VTK_ABI_NAMESPACE_BEGIN
44 virtual void Record();
62 virtual void Rewind();
68 virtual void FastForward();
74 virtual void Seek(
int n);
86 vtkGetMacro(Recording,
int);
94 vtkGetMacro(Playing,
int);
106 virtual void SetFrameSize(
int x,
int y,
int z);
108 vtkGetVector3Macro(FrameSize,
int);
115 virtual void SetFrameRate(
float rate);
116 vtkGetMacro(FrameRate,
float);
124 virtual void SetOutputFormat(
int format);
128 vtkGetMacro(OutputFormat,
int);
136 virtual void SetFrameBufferSize(
int FrameBufferSize);
137 vtkGetMacro(FrameBufferSize,
int);
147 vtkSetMacro(NumberOfOutputFrames,
int);
148 vtkGetMacro(NumberOfOutputFrames,
int);
169 virtual void SetClipRegion(
int x0,
int x1,
int y0,
int y1,
int z0,
int z1);
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);
238 virtual double GetFrameTimeStamp(
int frame);
252 virtual void Initialize();
261 virtual void ReleaseSystemResources();
268 virtual void InternalGrab();
288 int OutputWholeExtent[6];
289 double DataSpacing[3];
290 double DataOrigin[3];
296 int FrameOutputExtent[6];
301 int LastOutputExtent[6];
337 int FrameBufferExtent[6];
356 virtual void UpdateFrameBuffer();
357 virtual void AdvanceFrameBuffer(
int n);
360 virtual void UnpackRasterLine(
char* outPtr,
char* rowPtr,
int start,
int count);
368 VTK_ABI_NAMESPACE_END
virtual int GetInitialized()
Initialize the hardware.
virtual void SetClipRegion(int r[6])
Set the clip rectangle for the frames.
void SetOutputFormatToRGB()
Set the output format.
A class for performing multithreaded execution.
int NumberOfScalarComponents
double * FrameBufferTimeStamps
Superclass of video input devices for VTK.
virtual void SetFrameSize(int dim[3])
Set the full-frame size.
void SetOutputFormatToRGBA()
Set the output format.
Timer support and logging.
Superclass for mapping scalar values to colors.
a simple class to control print indentation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Subclasses can reimplement this method to collect information from their inputs and set information f...
int FrameBufferBitsPerPixel
double GetStartTimeStamp()
And internal variable which marks the beginning of a Record session.
vtkMultiThreader * PlayerThreader
double GetFrameTimeStamp()
Get a time stamp in seconds (resolution of milliseconds) for the Output.
void SetOutputFormatToLuminance()
Set the output format.
int OutputNeedsInitialization
std::mutex FrameBufferMutex
Generic algorithm superclass for image algs.
static vtkAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetStartTimeStamp(double t)
And internal variable which marks the beginning of a Record session.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called in response to a REQUEST_DATA request from the executive.
int LastNumberOfScalarComponents
int FrameBufferRowAlignment