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 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 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&); // Not implemented. 00170 void operator=(const vtkWindow&); // Not implemented. 00171 }; 00172 00173 #endif 00174 00175