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

vtkCocoaRenderWindow.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCocoaRenderWindow.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 =========================================================================*/
00036 #ifndef __vtkCocoaRenderWindow_h
00037 #define __vtkCocoaRenderWindow_h
00038 
00039 #include "vtkOpenGLRenderWindow.h"
00040 
00041 class VTK_RENDERING_EXPORT vtkCocoaRenderWindow : public vtkOpenGLRenderWindow
00042 {
00043 public:
00044   static vtkCocoaRenderWindow *New();
00045   vtkTypeRevisionMacro(vtkCocoaRenderWindow,vtkOpenGLRenderWindow);
00046   void PrintSelf(ostream& os, vtkIndent indent);
00047 
00049   virtual void Start();
00050 
00052   virtual void Frame();
00053 
00055   virtual void WindowConfigure();
00056 
00058   virtual void WindowInitialize();
00059 
00061   virtual void Initialize();
00062 
00064   virtual void SetFullScreen(int);
00065 
00067   virtual void WindowRemap();
00068 
00070   virtual void PrefFullScreen();
00071 
00073 
00074   virtual void SetSize(int*);
00075   virtual void SetSize(int,int);
00077 
00079   virtual int *GetSize();
00080 
00082 
00083   virtual void SetPosition(int*);
00084   virtual void SetPosition(int,int);
00086   
00088   virtual int *GetScreenSize();
00089 
00091   virtual int *GetPosition();
00092 
00095   virtual void SetWindowName(const char *);
00096   
00097   void SetNextWindowInfo(char *)
00098     {
00099     vtkWarningMacro("SetNextWindowInfo not implemented (WindowRemap not implemented).");
00100     }
00101 
00102   virtual void *GetGenericDisplayId() {return this->NSViewId;}
00103   virtual void *GetGenericWindowId()  {return this->WindowId;}
00104   virtual void *GetGenericContext()   {return this->ContextId;}
00105   
00107   virtual void* GetDisplayId();
00108 
00117   virtual void SetDisplayId(void *);
00118   
00119   virtual void SetParentId(void *) 
00120     {
00121     vtkWarningMacro("Method not implemented.");
00122     }
00123   virtual void* GetGenericParentId()
00124     {
00125     vtkWarningMacro("Method not implemented.");
00126     return 0;
00127     }
00128   virtual void* GetGenericDrawable()
00129     {
00130     vtkWarningMacro("Method not implemented.");
00131     return 0;
00132     }
00133   virtual void SetWindowInfo(char*)
00134     {
00135     vtkWarningMacro("Method not implemented.");
00136     }
00137   virtual void SetParentInfo(char*)
00138     {
00139     vtkWarningMacro("Method not implemented.");
00140     }
00141 
00143   virtual void *GetWindowId();
00144 
00153   virtual void SetWindowId(void *);
00154 
00155   void SetNextWindowId(void*)
00156     {
00157     vtkWarningMacro("SetNextWindowId not implemented (WindowRemap not implemented).");
00158     }
00159 
00160 
00162   virtual void StereoUpdate();
00163   
00168   virtual void SetStereoCapableWindow(int capable);
00169 
00171   virtual void MakeCurrent();
00172   
00174   void UpdateContext();
00175 
00177   const char *ReportCapabilities();
00178 
00180   int SupportsOpenGL();
00181 
00183   int IsDirect();
00184 
00188   virtual void SetForceMakeCurrent();
00189 
00192   virtual  int GetEventPending();
00193 
00195 
00196   virtual void SetupPalette(void *hDC);
00197   virtual void SetupPixelFormat(void *hDC, void *dwFlags, int debug, 
00198                                 int bpp=16, int zbpp=16);
00200   
00202   void Finalize();
00203 
00205   void RegisterTextureResource (GLuint id);
00206 
00208   int GetDepthBufferSize();
00209 
00211 
00213   virtual void HideCursor();
00214   virtual void ShowCursor();
00216   
00217 
00218 protected:
00219   vtkCocoaRenderWindow();
00220   ~vtkCocoaRenderWindow();
00221 
00222   void CreateGLContext();
00223 
00224 private:
00225   vtkCocoaRenderWindow(const vtkCocoaRenderWindow&);  // Not implemented.
00226   void operator=(const vtkCocoaRenderWindow&);  // Not implemented.
00227 
00228 private:
00229   void     *ContextId;    // really an NSOpenGLContext*
00230   void     *WindowId;     // really an NSWindow*
00231   void     *NSViewId;     // really an NSView* (usually but not necessarily a vtkCocoaGLView*)
00232   void     *PixelFormat;  // really an NSOpenGLPixelFormat*
00233 
00234   int      WindowCreated;
00235   int      ViewCreated;
00236   int      CursorHidden;
00237 
00238   void     *AutoreleasePool; // really an NSAutoreleasePool*
00239   int      ForceMakeCurrent;
00240   char     *Capabilities;
00241 };
00242 
00243 #endif

Generated on Mon Jan 21 23:07:34 2008 for VTK by  doxygen 1.4.3-20050530