Irrlicht 3D Engine
SExposedVideoData.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt
2 // This file is part of the "Irrlicht Engine".
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
4 
5 #ifndef __S_EXPOSED_VIDEO_DATA_H_INCLUDED__
6 #define __S_EXPOSED_VIDEO_DATA_H_INCLUDED__
7 
8 // forward declarations for internal pointers
9 struct IDirect3D9;
10 struct IDirect3DDevice9;
11 struct IDirect3D8;
12 struct IDirect3DDevice8;
13 
14 namespace irr
15 {
16 namespace video
17 {
18 
20 
26 {
28  explicit SExposedVideoData(void* Window) {OpenGLWin32.HDc=0; OpenGLWin32.HRc=0; OpenGLWin32.HWnd=Window;}
29 
30  union
31  {
32  struct
33  {
35  IDirect3D9* D3D9;
36 
38  IDirect3DDevice9* D3DDev9;
39 
41 
42  void* HWnd;
43 
44  } D3D9;
45 
46  struct
47  {
49  IDirect3D8* D3D8;
50 
52  IDirect3DDevice8* D3DDev8;
53 
55 
56  void* HWnd;
57 
58  } D3D8;
59 
60  struct
61  {
63 
64  void* HDc;
65 
67 
68  void* HRc;
69 
71 
72  void* HWnd;
73  } OpenGLWin32;
74 
75  struct
76  {
77  // XWindow handles
78  void* X11Display;
79  void* X11Context;
80  unsigned long X11Window;
81  } OpenGLLinux;
82  };
83 };
84 
85 } // end namespace video
86 } // end namespace irr
87 
88 
89 #endif
90 
void * HWnd
Window handle.
void * HRc
Permanent Rendering Context.
struct irr::video::SExposedVideoData::@12::@16 OpenGLWin32
Everything in the Irrlicht Engine can be found in this namespace.
Definition: aabbox3d.h:12
void * HDc
Private GDI Device Context.
IDirect3DDevice8 * D3DDev8
Pointer to the IDirect3DDevice8 interface.
struct irr::video::SExposedVideoData::@12::@17 OpenGLLinux
IDirect3D9 * D3D9
Pointer to the IDirect3D9 interface.
IDirect3D8 * D3D8
Pointer to the IDirect3D8 interface.
structure for holding data describing a driver and operating system specific data.
IDirect3DDevice9 * D3DDev9
Pointer to the IDirect3DDevice9 interface.