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

vtkWinCEOpenGLRenderWindow.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkWinCEOpenGLRenderWindow.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 =========================================================================*/
00023 #ifndef __vtkWinCEOpenGLRenderWindow_h
00024 #define __vtkWinCEOpenGLRenderWindow_h
00025 
00026 #include "vtkOpenGLRenderWindow.h"
00027 
00028 #include "GL/osmesa.h" // Needed for Mesa types
00029 
00030 class vtkIdList;
00031 
00032 class VTK_RENDERING_EXPORT vtkWinCEOpenGLRenderWindow : public vtkOpenGLRenderWindow
00033 {
00034 public:
00035   static vtkWinCEOpenGLRenderWindow *New();
00036   vtkTypeRevisionMacro(vtkWinCEOpenGLRenderWindow,vtkOpenGLRenderWindow);
00037   void PrintSelf(ostream& os, vtkIndent indent);
00038 
00040   virtual void Start(void);
00041 
00043   void Frame(void);
00044 
00046   virtual void WindowInitialize(void);
00047 
00052   virtual void Initialize(void);
00053 
00058   virtual void Finalize(void);
00059 
00061   virtual void SetFullScreen(int);
00062 
00064   virtual void WindowRemap(void);
00065 
00067   virtual void PrefFullScreen(void);
00068 
00070   virtual void SetSize(int,int);
00071 
00073   virtual int *GetSize();
00074 
00076   virtual void SetPosition(int,int);
00077   
00079   virtual int *GetScreenSize();
00080 
00082   virtual int *GetPosition();
00083 
00086   virtual void SetWindowName(char *);
00087   
00089   void SetWindowInfo(char *);
00090 
00091   void SetNextWindowInfo(char *);
00092 
00094   void SetParentInfo(char *);
00095 
00096   //BTX
00097   virtual void *GetGenericDisplayId() {return (void *)this->OffScreenContextId;};
00098   virtual void *GetGenericWindowId()  {return (void *)this->WindowId;};
00099   virtual void *GetGenericParentId()  {return (void *)this->ParentId;};
00100   virtual void *GetGenericContext()   {return (void *)this->DeviceContext;};
00101   virtual void SetDisplayId(void *) {};
00102 
00104 
00105   virtual HWND  GetWindowId();
00106   void  SetWindowId(void *foo) {this->SetWindowId((HWND)foo);};
00108 
00110   virtual void  SetWindowId(HWND);
00111   
00113 
00114   virtual void  SetParentId(HWND);
00115   void  SetParentId(void *foo) {this->SetParentId((HWND)foo);};
00117 
00119   virtual void  SetNextWindowId(HWND);
00120 
00121   virtual void SetNextWindowId(void *);
00122   //ETX
00123 
00128   virtual void SetStereoCapableWindow(int capable);
00129 
00131   void MakeCurrent();
00132 
00136   void SetForceMakeCurrent();
00137 
00140   virtual  int GetEventPending();
00141 
00143   void Clean();
00144 
00146 
00148   void HideCursor();
00149   void ShowCursor();
00151 
00152 protected:
00153   vtkWinCEOpenGLRenderWindow();
00154   ~vtkWinCEOpenGLRenderWindow();
00155 
00156   HINSTANCE ApplicationInstance;
00157 
00158   OSMesaContext OffScreenContextId;
00159   void *OffScreenWindow;
00160 
00161   HDC       DeviceContext;
00162   HWND      WindowId;
00163   HWND      ParentId;
00164   HWND      NextWindowId;
00165   int       OwnWindow;
00166   int       ScreenSize[2];
00167 
00168   //BTX
00169   // message handler
00170   virtual LRESULT MessageProc(HWND hWnd, UINT message, 
00171                               WPARAM wParam, LPARAM lParam);
00172 
00173   static LRESULT APIENTRY WndProc(HWND hWnd, UINT message, 
00174                                   WPARAM wParam, LPARAM lParam);
00175   //ETX
00176   int CursorHidden;
00177   int ForceMakeCurrent;
00178 
00179   void ResizeWhileOffscreen(int xsize, int ysize);
00180   void CreateAWindow(int x, int y, int width, int height);
00181   void InitializeApplication();
00182 private:
00183   vtkWinCEOpenGLRenderWindow(const vtkWinCEOpenGLRenderWindow&);  // Not implemented.
00184   void operator=(const vtkWinCEOpenGLRenderWindow&);  // Not implemented.
00185 };
00186 
00187 
00188 #endif
00189 

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