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

# Rendering/vtkWinCEOpenGLRenderWindow.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkWinCEOpenGLRenderWindow.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 =========================================================================*/
    00037 #ifndef __vtkWinCEOpenGLRenderWindow_h
    00038 #define __vtkWinCEOpenGLRenderWindow_h
    00039
    00040 #include "vtkOpenGLRenderWindow.h"
    00041
    00042 #include "GL/osmesa.h" // Needed for Mesa types
    00043
    00044 class vtkIdList;
    00045
    00046 class VTK_RENDERING_EXPORT vtkWinCEOpenGLRenderWindow : public vtkOpenGLRenderWindow
    00047 {
    00048 public:
    00049   static vtkWinCEOpenGLRenderWindow *New();
    00050   vtkTypeRevisionMacro(vtkWinCEOpenGLRenderWindow,vtkOpenGLRenderWindow);
    00051   void PrintSelf(ostream& os, vtkIndent indent);
    00052
    00054   virtual void Start(void);
    00055
    00057   void Frame(void);
    00058
    00060   virtual void WindowInitialize(void);
    00061
    00063   virtual void Initialize(void);
    00064
    00066   virtual void SetFullScreen(int);
    00067
    00069   virtual void WindowRemap(void);
    00070
    00072   virtual void PrefFullScreen(void);
    00073
    00075   virtual void SetSize(int,int);
    00076
    00078   virtual int *GetSize();
    00079
    00081   virtual void SetPosition(int,int);
    00082
    00084   virtual int *GetScreenSize();
    00085
    00087   virtual int *GetPosition();
    00088
    00091   virtual void SetWindowName(char *);
    00092
    00094   void SetWindowInfo(char *);
    00095
    00097   void SetParentInfo(char *);
    00098
    00099   //BTX
    00100   virtual void *GetGenericDisplayId() {return (void *)this->OffScreenContextId;};
    00101   virtual void *GetGenericWindowId()  {return (void *)this->WindowId;};
    00102   virtual void *GetGenericParentId()  {return (void *)this->ParentId;};
    00103   virtual void *GetGenericContext()   {return (void *)this->DeviceContext;};
    00104   virtual void SetDisplayId(void *) {};
    00105
    00107
    00108   virtual HWND  GetWindowId();
    00109   void  SetWindowId(void *foo) {this->SetWindowId((HWND)foo);};
    00111
    00113   virtual void  SetWindowId(HWND);
    00114
    00116
    00117   virtual void  SetParentId(HWND);
    00118   void  SetParentId(void *foo) {this->SetParentId((HWND)foo);};
    00120
    00122
    00123   virtual void  SetNextWindowId(HWND);
    00124   //ETX
    00126
    00131   virtual void SetStereoCapableWindow(int capable);
    00132
    00134   void MakeCurrent();
    00135
    00139   void SetForceMakeCurrent();
    00140
    00143   virtual  int GetEventPending();
    00144
    00146   void Clean();
    00147
    00149
    00151   void HideCursor();
    00152   void ShowCursor();
    00154
    00155 protected:
    00156   vtkWinCEOpenGLRenderWindow();
    00157   ~vtkWinCEOpenGLRenderWindow();
    00158
    00159   HINSTANCE ApplicationInstance;
    00160
    00161   OSMesaContext OffScreenContextId;
    00162   void *OffScreenWindow;
    00163
    00164   HDC       DeviceContext;
    00165   HWND      WindowId;
    00166   HWND      ParentId;
    00167   HWND      NextWindowId;
    00168   int       OwnWindow;
    00169   int       ScreenSize[2];
    00170
    00171   //BTX
    00172   // message handler
    00173   virtual LRESULT MessageProc(HWND hWnd, UINT message,
    00174                               WPARAM wParam, LPARAM lParam);
    00175
    00176   static LRESULT APIENTRY WndProc(HWND hWnd, UINT message,
    00177                                   WPARAM wParam, LPARAM lParam);
    00178   //ETX
    00179   int CursorHidden;
    00180   int ForceMakeCurrent;
    00181
    00182   void ResizeWhileOffscreen(int xsize, int ysize);
    00183   void CreateAWindow(int x, int y, int width, int height);
    00184   void InitializeApplication();
    00185 private:
    00186   vtkWinCEOpenGLRenderWindow(const vtkWinCEOpenGLRenderWindow&);  // Not implemented.
    00187   void operator=(const vtkWinCEOpenGLRenderWindow&);  // Not implemented.
    00188 };
    00189
    00190
    00191 #endif
    00192