00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00028
#ifndef __vtkWindow_h
00029
#define __vtkWindow_h
00030
00031
#include "vtkObject.h"
00032
00033
class vtkUnsignedCharArray;
00034
00035 class VTK_COMMON_EXPORT vtkWindow :
public vtkObject
00036 {
00037
public:
00038 vtkTypeRevisionMacro(vtkWindow,
vtkObject);
00039
void PrintSelf(ostream& os,
vtkIndent indent);
00040
00042
00044
virtual void SetDisplayId(
void *) = 0;
00045
virtual void SetWindowId(
void *) = 0;
00046
virtual void SetParentId(
void *) = 0;
00047
virtual void *GetGenericDisplayId() = 0;
00048
virtual void *GetGenericWindowId() = 0;
00049
virtual void *GetGenericParentId() = 0;
00050
virtual void *GetGenericContext() = 0;
00051
virtual void *GetGenericDrawable() = 0;
00052
virtual void SetWindowInfo(
char *) = 0;
00053
virtual void SetParentInfo(
char *) = 0;
00055
00057
00058
virtual int *GetPosition();
00059
virtual void SetPosition(
int,
int);
00060
virtual void SetPosition(
int a[2]);
00062
00064
00065
virtual int *GetSize();
00066
virtual void SetSize(
int,
int);
00067
virtual void SetSize(
int a[2]);
00069
00071
00072 vtkSetMacro(Mapped,
int);
00073 vtkGetMacro(Mapped,
int);
00074 vtkBooleanMacro(Mapped,
int);
00076
00078
00082 vtkSetMacro(Erase,
int);
00083 vtkGetMacro(Erase,
int);
00084 vtkBooleanMacro(Erase,
int);
00086
00088
00089 vtkSetMacro(DoubleBuffer,
int);
00090 vtkGetMacro(DoubleBuffer,
int);
00091 vtkBooleanMacro(DoubleBuffer,
int);
00093
00095
00096 vtkGetStringMacro(WindowName);
00097
virtual void SetWindowName(
const char *);
00099
00102
virtual void Render() = 0;
00103
00105
00113
virtual unsigned char *GetPixelData(
int,
int,
int,
int,
int) = 0;
00114
virtual int GetPixelData(
int ,
int ,
int ,
int ,
int,
00115
vtkUnsignedCharArray*) = 0;
00117
00119
00121 vtkGetMacro(DPI,
int);
00122 vtkSetClampMacro(DPI,
int,1,3000);
00124
00126
00129 vtkSetMacro(OffScreenRendering,
int);
00130 vtkGetMacro(OffScreenRendering,
int);
00131 vtkBooleanMacro(OffScreenRendering,
int);
00133
00136 virtual void MakeCurrent() {};
00137
00139
00144 vtkSetMacro(TileScale,
int);
00145 vtkGetMacro(TileScale,
int);
00146 vtkSetVector4Macro(TileViewport,
double);
00147 vtkGetVector4Macro(TileViewport,
double);
00149
00150
00151
protected:
00152 int OffScreenRendering;
00153 vtkWindow();
00154 ~vtkWindow();
00155
00156 char *WindowName;
00157 int Size[2];
00158 int Position[2];
00159 int Mapped;
00160 int Erase;
00161 int DoubleBuffer;
00162 int DPI;
00163
00164 double TileViewport[4];
00165 int TileSize[2];
00166 int TileScale;
00167
00168
private:
00169 vtkWindow(
const vtkWindow&);
00170
void operator=(
const vtkWindow&);
00171 };
00172
00173
#endif
00174
00175