00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00037
#ifndef __vtkWin32VideoSource_h
00038
#define __vtkWin32VideoSource_h
00039
00040
#include "vtkVideoSource.h"
00041
00042
class vtkWin32VideoSourceInternal;
00043
00044 class VTK_HYBRID_EXPORT vtkWin32VideoSource :
public vtkVideoSource
00045 {
00046
public:
00047
static vtkWin32VideoSource *
New();
00048 vtkTypeRevisionMacro(vtkWin32VideoSource,
vtkVideoSource);
00049
void PrintSelf(ostream& os,
vtkIndent indent);
00050
00052
void Record();
00053
00055
void Play();
00056
00058
void Stop();
00059
00061
void Grab();
00062
00064
void SetFrameSize(
int x,
int y,
int z);
00065
00067
void SetFrameRate(
float rate);
00068
00070
void SetOutputFormat(
int format);
00071
00073
00074
void SetPreview(
int p);
00075 vtkBooleanMacro(Preview,
int);
00076 vtkGetMacro(Preview,
int);
00078
00080
void VideoFormatDialog();
00081
00083
void VideoSourceDialog();
00084
00087
void Initialize();
00088
00090
void ReleaseSystemResources();
00091
00093
00094
void InternalGrab(
void*);
00095
void OnParentWndDestroy();
00097
00098
protected:
00099 vtkWin32VideoSource();
00100 ~vtkWin32VideoSource();
00101
00102 char WndClassName[16];
00103 int BitMapSize;
00104 int Preview;
00105
00106 vtkWin32VideoSourceInternal *Internal;
00107
00108
void CheckBuffer();
00109
void UnpackRasterLine(
char *outptr,
char *inptr,
00110
int start,
int count);
00111
00112
void DoVFWFormatSetup();
00113
void DoVFWFormatCheck();
00114
00115
private:
00116 vtkWin32VideoSource(
const vtkWin32VideoSource&);
00117
void operator=(
const vtkWin32VideoSource&);
00118 };
00119
00120
#endif
00121
00122
00123
00124
00125