Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Common/vtkWindow.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkWindow.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00032 #ifndef __vtkWindow_h 00033 #define __vtkWindow_h 00034 00035 #include "vtkObject.h" 00036 00037 class vtkUnsignedCharArray; 00038 00039 class VTK_COMMON_EXPORT vtkWindow : public vtkObject 00040 { 00041 public: 00042 vtkTypeRevisionMacro(vtkWindow,vtkObject); 00043 void PrintSelf(ostream& os, vtkIndent indent); 00044 00046 00048 virtual void SetDisplayId(void *) = 0; 00049 virtual void SetWindowId(void *) = 0; 00050 virtual void SetParentId(void *) = 0; 00051 virtual void *GetGenericDisplayId() = 0; 00052 virtual void *GetGenericWindowId() = 0; 00053 virtual void *GetGenericParentId() = 0; 00054 virtual void *GetGenericContext() = 0; 00055 virtual void *GetGenericDrawable() = 0; 00056 virtual void SetWindowInfo(char *) = 0; 00057 virtual void SetParentInfo(char *) = 0; 00059 00061 00062 virtual int *GetPosition(); 00063 virtual void SetPosition(int,int); 00064 virtual void SetPosition(int a[2]); 00066 00068 00069 virtual int *GetSize(); 00070 virtual void SetSize(int,int); 00071 virtual void SetSize(int a[2]); 00073 00075 00076 vtkSetMacro(Mapped,int); 00077 vtkGetMacro(Mapped,int); 00078 vtkBooleanMacro(Mapped,int); 00080 00082 00086 vtkSetMacro(Erase,int); 00087 vtkGetMacro(Erase,int); 00088 vtkBooleanMacro(Erase,int); 00090 00092 00093 vtkSetMacro(DoubleBuffer,int); 00094 vtkGetMacro(DoubleBuffer,int); 00095 vtkBooleanMacro(DoubleBuffer,int); 00097 00099 00100 vtkGetStringMacro(WindowName); 00101 virtual void SetWindowName(const char *); 00103 00106 virtual void Render() = 0; 00107 00109 00117 virtual unsigned char *GetPixelData(int, int, int, int, int) = 0; 00118 virtual int GetPixelData(int ,int ,int ,int , int, 00119 vtkUnsignedCharArray*) = 0; 00121 00123 00125 vtkGetMacro(DPI,int); 00126 vtkSetClampMacro(DPI,int,1,3000); 00128 00130 00133 vtkSetMacro(OffScreenRendering,int); 00134 vtkGetMacro(OffScreenRendering,int); 00135 vtkBooleanMacro(OffScreenRendering,int); 00137 00140 virtual void MakeCurrent() {}; 00141 00143 00148 vtkSetMacro(TileScale,int); 00149 vtkGetMacro(TileScale,int); 00150 vtkSetVector4Macro(TileViewport,float); 00151 vtkGetVector4Macro(TileViewport,float); 00153 00154 00155 protected: 00156 int OffScreenRendering; 00157 vtkWindow(); 00158 ~vtkWindow(); 00159 00160 char *WindowName; 00161 int Size[2]; 00162 int Position[2]; 00163 int Mapped; 00164 int Erase; 00165 int DoubleBuffer; 00166 int DPI; 00167 00168 float TileViewport[4]; 00169 int TileSize[2]; 00170 int TileScale; 00171 00172 private: 00173 vtkWindow(const vtkWindow&); // Not implemented. 00174 void operator=(const vtkWindow&); // Not implemented. 00175 }; 00176 00177 #endif 00178 00179