vtkWinCEOpenGLRenderWindow.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00027 #ifndef __vtkWinCEOpenGLRenderWindow_h
00028 #define __vtkWinCEOpenGLRenderWindow_h
00029
00030 #include "vtkOpenGLRenderWindow.h"
00031
00032 #include "GL/osmesa.h"
00033
00034 class vtkIdList;
00035
00036 class VTK_RENDERING_EXPORT vtkWinCEOpenGLRenderWindow : public vtkOpenGLRenderWindow
00037 {
00038 public:
00039 static vtkWinCEOpenGLRenderWindow *New();
00040 vtkTypeRevisionMacro(vtkWinCEOpenGLRenderWindow,vtkOpenGLRenderWindow);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00044 virtual void Start(void);
00045
00047 void Frame(void);
00048
00050 virtual void WindowInitialize(void);
00051
00053 virtual void Initialize(void);
00054
00056 virtual void SetFullScreen(int);
00057
00059 virtual void WindowRemap(void);
00060
00062 virtual void PrefFullScreen(void);
00063
00065 virtual void SetSize(int,int);
00066
00068 virtual int *GetSize();
00069
00071 virtual void SetPosition(int,int);
00072
00074 virtual int *GetScreenSize();
00075
00077 virtual int *GetPosition();
00078
00081 virtual void SetWindowName(char *);
00082
00084 void SetWindowInfo(char *);
00085
00087 void SetParentInfo(char *);
00088
00089
00090 virtual void *GetGenericDisplayId() {return (void *)this->OffScreenContextId;};
00091 virtual void *GetGenericWindowId() {return (void *)this->WindowId;};
00092 virtual void *GetGenericParentId() {return (void *)this->ParentId;};
00093 virtual void *GetGenericContext() {return (void *)this->DeviceContext;};
00094 virtual void SetDisplayId(void *) {};
00095
00097
00098 virtual HWND GetWindowId();
00099 void SetWindowId(void *foo) {this->SetWindowId((HWND)foo);};
00101
00103 virtual void SetWindowId(HWND);
00104
00106
00107 virtual void SetParentId(HWND);
00108 void SetParentId(void *foo) {this->SetParentId((HWND)foo);};
00110
00112
00113 virtual void SetNextWindowId(HWND);
00114
00116
00121 virtual void SetStereoCapableWindow(int capable);
00122
00124 void MakeCurrent();
00125
00129 void SetForceMakeCurrent();
00130
00133 virtual int GetEventPending();
00134
00136 void Clean();
00137
00139
00141 void HideCursor();
00142 void ShowCursor();
00144
00145 protected:
00146 vtkWinCEOpenGLRenderWindow();
00147 ~vtkWinCEOpenGLRenderWindow();
00148
00149 HINSTANCE ApplicationInstance;
00150
00151 OSMesaContext OffScreenContextId;
00152 void *OffScreenWindow;
00153
00154 HDC DeviceContext;
00155 HWND WindowId;
00156 HWND ParentId;
00157 HWND NextWindowId;
00158 int OwnWindow;
00159 int ScreenSize[2];
00160
00161
00162
00163 virtual LRESULT MessageProc(HWND hWnd, UINT message,
00164 WPARAM wParam, LPARAM lParam);
00165
00166 static LRESULT APIENTRY WndProc(HWND hWnd, UINT message,
00167 WPARAM wParam, LPARAM lParam);
00168
00169 int CursorHidden;
00170 int ForceMakeCurrent;
00171
00172 void ResizeWhileOffscreen(int xsize, int ysize);
00173 void CreateAWindow(int x, int y, int width, int height);
00174 void InitializeApplication();
00175 private:
00176 vtkWinCEOpenGLRenderWindow(const vtkWinCEOpenGLRenderWindow&);
00177 void operator=(const vtkWinCEOpenGLRenderWindow&);
00178 };
00179
00180
00181 #endif
00182