NTrace
GPU ray tracing framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
GLContext.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2009-2011, NVIDIA Corporation
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  * * Redistributions of source code must retain the above copyright
8  * notice, this list of conditions and the following disclaimer.
9  * * Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  * * Neither the name of NVIDIA Corporation nor the
13  * names of its contributors may be used to endorse or promote products
14  * derived from this software without specific prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19  * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
20  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26  */
27 
28 #pragma once
29 #include "base/Math.hpp"
30 #include "base/String.hpp"
31 #include "base/DLLImports.hpp"
32 #include "base/Hash.hpp"
33 
34 namespace FW
35 {
36 //------------------------------------------------------------------------
37 
38 class Buffer;
39 class Image;
40 
41 //------------------------------------------------------------------------
42 
43 #define FW_GL_SHADER_SOURCE(CODE) #CODE
44 
45 //------------------------------------------------------------------------
46 
47 class GLContext
48 {
49 public:
50 
51  //------------------------------------------------------------------------
52 
53  enum FontStyle
54  {
56  FontStyle_Bold = 1 << 0,
57  FontStyle_Italic = 1 << 1,
59  };
60 
61  //------------------------------------------------------------------------
62 
63  struct Config
64  {
66  bool isStereo;
67 
68  Config(void)
69  {
70  numSamples = 1;
71  isStereo = false;
72  }
73  };
74 
75  //------------------------------------------------------------------------
76 
77  class Program
78  {
79  public:
80  Program (const String& vertexSource, const String& fragmentSource);
81 
82  Program (const String& vertexSource,
83  GLenum geomInputType, GLenum geomOutputType, int geomVerticesOut, const String& geometrySource,
84  const String& fragmentSource);
85 
86  ~Program (void);
87 
88  GLuint getHandle (void) const { return m_glProgram; }
89  GLint getAttribLoc (const String& name) const;
90  GLint getUniformLoc (const String& name) const;
91 
92  void use (void);
93 
94  static GLuint createGLShader (GLenum type, const String& typeStr, const String& source);
95  static void linkGLProgram (GLuint prog);
96 
97  private:
98  void init (const String& vertexSource,
99  GLenum geomInputType, GLenum geomOutputType, int geomVerticesOut, const String& geometrySource,
100  const String& fragmentSource);
101 
102  private:
103  Program (const Program&); // forbidden
104  Program& operator= (const Program&); // forbidden
105 
106  private:
107  GLuint m_glVertexShader;
108  GLuint m_glGeometryShader;
109  GLuint m_glFragmentShader;
110  GLuint m_glProgram;
111  };
112 
113 private:
114 
115  //------------------------------------------------------------------------
116 
117  struct VGVertex
118  {
119  Vec4f pos;
120  F32 alpha;
121  };
122 
123  //------------------------------------------------------------------------
124 
125  struct TempTexture
126  {
127  TempTexture* next;
128  TempTexture* prev;
129  Vec2i size;
130  S32 bytes;
131  GLuint handle;
132  };
133 
134  //------------------------------------------------------------------------
135 
136 public:
137  GLContext (HDC hdc, const Config& config = Config());
138  GLContext (HDC hdc, HGLRC hglrc);
139  ~GLContext (void);
140 
141  const Config& getConfig (void) const { return m_config; }
142 
143  void makeCurrent (void);
144  void swapBuffers (void);
145 
146  void setView (const Vec2i& pos, const Vec2i& size);
147  const Vec2i& getViewPos (void) const { return m_viewPos; }
148  const Vec2i& getViewSize (void) const { return m_viewSize; }
149  const Vec2f& getViewScale (void) const { return m_viewScale; }
150 
151  Mat4f xformFitToView (const Vec2f& pos, const Vec2f& size) const { return Mat4f::fitToView(pos, size, m_viewSize); }
152  Mat4f xformMatchPixels(void) const { return Mat4f::translate(Vec3f(-1.0f, -1.0f, 0.0f)) * Mat4f::scale(Vec3f(m_viewScale, 1.0f)); }
153  Mat4f xformMouseToUser(const Mat4f& userToClip) const;
154 
155  void setAttrib (int loc, int size, GLenum type, int stride, Buffer* buffer, const void* pointer);
156  void setAttrib (int loc, int size, GLenum type, int stride, const void* pointer) { setAttrib(loc, size, type, stride, NULL, pointer); }
157  void setAttrib (int loc, int size, GLenum type, int stride, Buffer& buffer, int ofs) { setAttrib(loc, size, type, stride, &buffer, (const void*)(UPTR)ofs); }
158  void resetAttribs (void);
159 
160  void setUniform (int loc, S32 v) { if (loc >= 0) glUniform1i(loc, v); }
161  void setUniform (int loc, F32 v) { if (loc >= 0) glUniform1f(loc, v); }
162  void setUniform (int loc, F64 v) { if (loc >= 0) glUniform1d(loc, v); }
163  void setUniform (int loc, const Vec2f& v) { if (loc >= 0) glUniform2f(loc, v.x, v.y); }
164  void setUniform (int loc, const Vec3f& v) { if (loc >= 0) glUniform3f(loc, v.x, v.y, v.z); }
165  void setUniform (int loc, const Vec4f& v) { if (loc >= 0) glUniform4f(loc, v.x, v.y, v.z, v.w); }
166  void setUniform (int loc, const Mat2f& v) { if (loc >= 0) glUniformMatrix2fv(loc, 1, false, v.getPtr()); }
167  void setUniform (int loc, const Mat3f& v) { if (loc >= 0) glUniformMatrix3fv(loc, 1, false, v.getPtr()); }
168  void setUniform (int loc, const Mat4f& v) { if (loc >= 0) glUniformMatrix4fv(loc, 1, false, v.getPtr()); }
169 
170  const Mat4f& getVGXform (void) const { return m_vgXform; }
171  Mat4f setVGXform (const Mat4f& m) { Mat4f old = m_vgXform; m_vgXform = m; return old; }
172 
173  void strokeLine (const Vec4f& p0, const Vec4f& p1, U32 abgr);
174  void strokeLine (const Vec2f& p0, const Vec2f& p1, U32 abgr) { strokeLine(Vec4f(p0, 0.0f, 1.0f), Vec4f(p1, 0.0f, 1.0f), abgr); }
175  void fillRect (const Vec4f& pos, const Vec2f& localSize, const Vec2f& screenSize, U32 abgr);
176  void fillRect (const Vec2f& pos, const Vec2f& localSize, U32 abgr) { fillRect(Vec4f(pos, 0.0f, 1.0f), localSize, 0.0f, abgr); }
177  void fillRectNS (const Vec4f& pos, const Vec2f& screenSize, U32 abgr) { fillRect(pos, 0.0f, screenSize, abgr); }
178  void fillRectNS (const Vec2f& pos, const Vec2f& screenSize, U32 abgr) { fillRect(Vec4f(pos, 0.0f, 1.0f), 0.0f, screenSize, abgr); }
179  void drawBox (const Vec3f& min, const Vec3f& max, U32 abgr);
180  void drawBuffer (Buffer& buffer, GLenum mode, int offset, U32 abgr);
181  void drawColorBuffer (Buffer& buffer, Buffer& color, GLenum mode, int offset);
182  void strokeRect (const Vec4f& pos, const Vec2f& localSize, const Vec2f& screenSize, U32 abgr);
183  void strokeRect (const Vec2f& pos, const Vec2f& localSize, U32 abgr) { strokeRect(Vec4f(pos, 0.0f, 1.0f), localSize, 0.0f, abgr); }
184  void strokeRectNS (const Vec4f& pos, const Vec2f& screenSize, U32 abgr) { strokeRect(pos, 0.0f, screenSize, abgr); }
185  void strokeRectNS (const Vec2f& pos, const Vec2f& screenSize, U32 abgr) { strokeRect(Vec4f(pos, 0.0f, 1.0f), 0.0f, screenSize, abgr); }
186 
187  void setFont (const String& name, int size, U32 style);
188  void setDefaultFont (void) { setFont(s_defaultFontName, s_defaultFontSize, s_defaultFontStyle); }
189 
190  int getFontHeight (void) const { return m_vgFontMetrics.tmHeight; }
191  Vec2i getStringSize (const String& str);
192  Vec2i drawString (const String& str, const Vec4f& pos, const Vec2f& align, U32 abgr) { return drawLabel(str, pos, align, abgr, 0); }
193  Vec2i drawString (const String& str, const Vec2f& pos, const Vec2f& align, U32 abgr) { return drawString(str, Vec4f(pos, 0.0f, 1.0f), align, abgr); }
194  Vec2i drawString (const String& str, const Vec2f& pos, U32 abgr) { return drawString(str, Vec4f(pos, 0.0f, 1.0f), 0.5f, abgr); }
195  Vec2i drawLabel (const String& str, const Vec4f& pos, const Vec2f& align, U32 fgABGR, U32 bgABGR);
196  Vec2i drawLabel (const String& str, const Vec4f& pos, const Vec2f& align, U32 abgr);
197  Vec2i drawLabel (const String& str, const Vec2f& pos, const Vec2f& align, U32 abgr) { return drawLabel(str, Vec4f(pos, 0.0f, 1.0f), align, abgr); }
198  Vec2i drawLabel (const String& str, const Vec2f& pos, U32 abgr) { return drawLabel(str, Vec4f(pos, 0.0f, 1.0f), 0.5f, abgr); }
199  void drawModalMessage(const String& msg);
200 
201  void drawImage (const Image& image, const Vec4f& pos, const Vec2f& align, bool topToBottom = true);
202  void drawImage (const Image& image, const Vec2f& pos, const Vec2f& align = 0.5f, bool topToBottom = true) { drawImage(image, Vec4f(pos, 0.0f, 1.0f), align, topToBottom); }
203 
204  Program* getProgram (const String& id) const;
205  void setProgram (const String& id, Program* prog);
206 
207  static void staticInit (void);
208  static void staticDeinit (void);
209  static GLContext& getHeadless (void) { staticInit(); FW_ASSERT(s_headless); return *s_headless; }
210  static bool isStereoAvailable(void) { staticInit(); return s_stereoAvailable; }
211  static void checkErrors (void);
212 
213 private:
214  static bool choosePixelFormat(int& formatIdx, HDC hdc, const Config& config);
215 
216  void init (HDC hdc, HGLRC hglrc);
217  void drawVG (const VGVertex* vertices, int numVertices, U32 abgr);
218  void setFont (HFONT font);
219  const Vec2i& uploadString (const String& str, const Vec2i& strSize); // returns texture size
220  void drawString (const Vec4f& pos, const Vec2i& strSize, const Vec2i& texSize, const Vec4f& color);
221  const Vec2i& bindTempTexture (const Vec2i& size);
222  void drawTexture (int unit, const Vec4f& posLo, const Vec2f& posHi, const Vec2f& texLo, const Vec2f& texHi);
223 
224 private:
225  GLContext (const GLContext&); // forbidden
226  GLContext& operator= (const GLContext&); // forbidden
227 
228 private:
229  static const char* const s_defaultFontName;
230  static const S32 s_defaultFontSize;
231  static const U32 s_defaultFontStyle;
232 
233  static bool s_inited;
234  static HWND s_shareHWND;
235  static HDC s_shareHDC;
236  static HGLRC s_shareHGLRC;
237  static GLContext* s_headless;
238  static GLContext* s_current;
239  static bool s_stereoAvailable;
240 
241  static TempTexture s_tempTextures;
242  static Hash<Vec2i, TempTexture*>* s_tempTexHash;
243  static S32 s_tempTexBytes;
244  static Hash<String, Program*>* s_programs;
245 
246  HDC m_hdc;
247  HDC m_memdc;
248  HGLRC m_hglrc;
249  Config m_config;
250 
251  Vec2i m_viewPos;
252  Vec2i m_viewSize;
253  Vec2f m_viewScale;
254  S32 m_numAttribs;
255 
256  Mat4f m_vgXform;
257  HFONT m_vgFont;
258  TEXTMETRIC m_vgFontMetrics;
259 };
260 
261 //------------------------------------------------------------------------
262 }
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value GLint GLfloat GLfloat v1 GLint GLfloat GLfloat GLfloat v2 GLint GLsizei const GLfloat value glUniformMatrix3fv
Definition: DLLImports.inl:359
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int offset
Definition: DLLImports.inl:84
#define NULL
Definition: Defs.hpp:39
int getFontHeight(void) const
Definition: GLContext.hpp:190
FW_CUDA_FUNC const F32 * getPtr(void) const
Definition: Math.hpp:637
__w64 U32 UPTR
Definition: Defs.hpp:106
Mat4f setVGXform(const Mat4f &m)
Definition: GLContext.hpp:171
void setDefaultFont(void)
Definition: GLContext.hpp:188
static void staticDeinit(void)
Definition: GLContext.cpp:962
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer
Definition: DLLImports.inl:315
const char * name
Definition: DLLImports.cpp:42
void swapBuffers(void)
Definition: GLContext.cpp:276
void setUniform(int loc, S32 v)
Definition: GLContext.hpp:160
void strokeRect(const Vec4f &pos, const Vec2f &localSize, const Vec2f &screenSize, U32 abgr)
Definition: GLContext.cpp:613
void setUniform(int loc, const Mat2f &v)
Definition: GLContext.hpp:166
Vec2i drawLabel(const String &str, const Vec4f &pos, const Vec2f &align, U32 fgABGR, U32 bgABGR)
Definition: GLContext.cpp:704
double F64
Definition: Defs.hpp:90
void setUniform(int loc, const Mat3f &v)
Definition: GLContext.hpp:167
static void checkErrors(void)
Definition: GLContext.cpp:1003
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value glUniform2f
Definition: DLLImports.inl:353
static FW_CUDA_FUNC S scale(const VectorBase< T, L-1, V > &v)
void setProgram(const String &id, Program *prog)
Definition: GLContext.cpp:875
const Config & getConfig(void) const
Definition: GLContext.hpp:141
void drawBuffer(Buffer &buffer, GLenum mode, int offset, U32 abgr)
Definition: GLContext.cpp:479
Vec2i getStringSize(const String &str)
Definition: GLContext.cpp:674
void fillRectNS(const Vec4f &pos, const Vec2f &screenSize, U32 abgr)
Definition: GLContext.hpp:177
GLContext(HDC hdc, const Config &config=Config())
Definition: GLContext.cpp:210
static bool isStereoAvailable(void)
Definition: GLContext.hpp:210
void strokeRect(const Vec2f &pos, const Vec2f &localSize, U32 abgr)
Definition: GLContext.hpp:183
static void linkGLProgram(GLuint prog)
Definition: GLContext.cpp:138
void drawColorBuffer(Buffer &buffer, Buffer &color, GLenum mode, int offset)
Definition: GLContext.cpp:558
Mat4f xformFitToView(const Vec2f &pos, const Vec2f &size) const
Definition: GLContext.hpp:151
FW_CUDA_FUNC const F32 * getPtr(void) const
Definition: Math.hpp:682
const Mat4f & getVGXform(void) const
Definition: GLContext.hpp:170
GLint getUniformLoc(const String &name) const
Definition: GLContext.cpp:95
void drawImage(const Image &image, const Vec4f &pos, const Vec2f &align, bool topToBottom=true)
Definition: GLContext.cpp:808
float F32
Definition: Defs.hpp:89
GLuint getHandle(void) const
Definition: GLContext.hpp:88
void fillRect(const Vec2f &pos, const Vec2f &localSize, U32 abgr)
Definition: GLContext.hpp:176
Program * getProgram(const String &id) const
Definition: GLContext.cpp:867
static FW_CUDA_FUNC S translate(const VectorBase< T, L-1, V > &v)
void setAttrib(int loc, int size, GLenum type, int stride, Buffer &buffer, int ofs)
Definition: GLContext.hpp:157
static GLuint createGLShader(GLenum type, const String &typeStr, const String &source)
Definition: GLContext.cpp:109
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v
Definition: DLLImports.inl:329
GLint getAttribLoc(const String &name) const
Definition: GLContext.cpp:88
void setAttrib(int loc, int size, GLenum type, int stride, Buffer *buffer, const void *pointer)
Definition: GLContext.cpp:310
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value GLint GLfloat GLfloat v1 GLint GLfloat GLfloat GLfloat v2 GLint GLsizei const GLfloat value GLint GLsizei GLboolean const GLfloat value GLuint program GLuint GLfloat GLfloat GLfloat z GLuint GLint GLenum GLboolean GLsizei const GLvoid pointer GLuint GLuint const GLchar name GLenum GLsizei GLenum GLsizei GLsizei height GLenum GLuint renderbuffer GLenum GLenum GLint params GLuint GLsizei range GLuint GLsizei const GLubyte GLsizei GLenum const GLvoid coords GLuint GLsizei GLsizei GLsizei const GLubyte GLsizei GLenum const GLvoid coords GLuint GLenum GLsizei const GLvoid pathString GLuint GLenum const GLvoid GLbitfield GLuint GLsizei GLenum GLuint GLfloat emScale GLuint GLuint srcPath GLuint GLuint GLenum const GLfloat transformValues GLuint GLenum GLint value GLuint GLenum GLfloat value GLenum GLint GLuint mask GLuint GLenum GLuint mask GLsizei GLenum const GLvoid GLuint GLenum GLuint GLenum const GLfloat transformValues GLenum func GLenum GLenum GLint const GLfloat coeffs GLuint GLenum coverMode GLsizei GLenum const GLvoid GLuint GLenum GLenum const GLfloat transformValues GLuint GLenum GLint value GLuint GLubyte commands GLuint GLfloat dashArray GLbitfield GLuint GLsizei GLsizei GLfloat metrics GLenum GLenum GLint value GLenum GLenum GLint value GLuint GLuint GLfloat GLfloat y GLuint GLsizei GLsizei numSegments HDC hdc
Definition: DLLImports.inl:437
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes
Definition: DLLImports.inl:68
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value GLint GLfloat GLfloat v1 glUniform3f
Definition: DLLImports.inl:355
FW_CUDA_FUNC T min(const VectorBase< T, L, S > &v)
Definition: Math.hpp:461
FW_CUDA_FUNC T max(const VectorBase< T, L, S > &v)
Definition: Math.hpp:462
void setFont(const String &name, int size, U32 style)
Definition: GLContext.cpp:645
Vec2i drawString(const String &str, const Vec2f &pos, const Vec2f &align, U32 abgr)
Definition: GLContext.hpp:193
#define FW_ASSERT(X)
Definition: Defs.hpp:67
signed int S32
Definition: Defs.hpp:88
Vec2i drawLabel(const String &str, const Vec2f &pos, const Vec2f &align, U32 abgr)
Definition: GLContext.hpp:197
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value GLint GLfloat GLfloat v1 GLint GLfloat GLfloat GLfloat v2 GLint GLsizei const GLfloat value GLint GLsizei GLboolean const GLfloat value GLuint program GLuint GLfloat GLfloat GLfloat z GLuint GLint GLenum GLboolean GLsizei const GLvoid * pointer
Definition: DLLImports.inl:365
Mat4f xformMatchPixels(void) const
Definition: GLContext.hpp:152
void setUniform(int loc, const Vec4f &v)
Definition: GLContext.hpp:165
void drawImage(const Image &image, const Vec2f &pos, const Vec2f &align=0.5f, bool topToBottom=true)
Definition: GLContext.hpp:202
void strokeRectNS(const Vec2f &pos, const Vec2f &screenSize, U32 abgr)
Definition: GLContext.hpp:185
void resetAttribs(void)
Definition: GLContext.cpp:323
static Mat4f fitToView(const Vec2f &pos, const Vec2f &size, const Vec2f &viewSize)
Definition: Math.cpp:66
FW_CUDA_FUNC const F32 * getPtr(void) const
Definition: Math.hpp:657
unsigned int U32
Definition: Defs.hpp:85
void setUniform(int loc, const Vec3f &v)
Definition: GLContext.hpp:164
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value GLint GLfloat GLfloat v1 GLint GLfloat GLfloat GLfloat v2 GLint GLsizei const GLfloat value GLint GLsizei GLboolean const GLfloat value GLuint program GLuint GLfloat GLfloat GLfloat z GLuint GLint GLenum GLboolean GLsizei stride
Definition: DLLImports.inl:365
Vec2i drawString(const String &str, const Vec4f &pos, const Vec2f &align, U32 abgr)
Definition: GLContext.hpp:192
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction f
Definition: DLLImports.inl:88
const Vec2i & getViewPos(void) const
Definition: GLContext.hpp:147
Mat4f xformMouseToUser(const Mat4f &userToClip) const
Definition: GLContext.cpp:298
void setView(const Vec2i &pos, const Vec2i &size)
Definition: GLContext.cpp:287
void setUniform(int loc, const Mat4f &v)
Definition: GLContext.hpp:168
Vec2i drawLabel(const String &str, const Vec2f &pos, U32 abgr)
Definition: GLContext.hpp:198
void strokeRectNS(const Vec4f &pos, const Vec2f &screenSize, U32 abgr)
Definition: GLContext.hpp:184
Vec2i drawString(const String &str, const Vec2f &pos, U32 abgr)
Definition: GLContext.hpp:194
void setUniform(int loc, const Vec2f &v)
Definition: GLContext.hpp:163
void drawBox(const Vec3f &min, const Vec3f &max, U32 abgr)
Definition: GLContext.cpp:383
void setUniform(int loc, F64 v)
Definition: GLContext.hpp:162
const Vec2i & getViewSize(void) const
Definition: GLContext.hpp:148
const Vec2f & getViewScale(void) const
Definition: GLContext.hpp:149
Program(const String &vertexSource, const String &fragmentSource)
Definition: GLContext.cpp:61
void setUniform(int loc, F32 v)
Definition: GLContext.hpp:161
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type
Definition: DLLImports.inl:323
void strokeLine(const Vec4f &p0, const Vec4f &p1, U32 abgr)
Definition: GLContext.cpp:333
void strokeLine(const Vec2f &p0, const Vec2f &p1, U32 abgr)
Definition: GLContext.hpp:174
~GLContext(void)
Definition: GLContext.cpp:245
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void * image
Definition: DLLImports.inl:60
void fillRectNS(const Vec2f &pos, const Vec2f &screenSize, U32 abgr)
Definition: GLContext.hpp:178
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr size
Definition: DLLImports.inl:319
static void staticInit(void)
Definition: GLContext.cpp:894
static GLContext & getHeadless(void)
Definition: GLContext.hpp:209
void setAttrib(int loc, int size, GLenum type, int stride, const void *pointer)
Definition: GLContext.hpp:156
HMODULE handle
Definition: DLLImports.cpp:43
CUdevice int ordinal char int CUdevice dev CUdevprop CUdevice dev CUcontext ctx CUcontext ctx CUcontext pctx CUmodule const void image CUmodule const void fatCubin CUfunction CUmodule const char name void p CUfunction unsigned int bytes CUtexref pTexRef CUtexref CUarray unsigned int Flags CUtexref int CUaddress_mode am CUtexref unsigned int Flags CUaddress_mode CUtexref int dim CUarray_format int CUtexref hTexRef CUfunction unsigned int numbytes CUfunction int float value CUfunction int CUtexref hTexRef CUfunction int int grid_height CUevent unsigned int Flags CUevent hEvent CUevent hEvent CUstream unsigned int Flags CUstream hStream GLuint bufferobj unsigned int CUdevice dev CUdeviceptr unsigned int CUmodule const char name CUdeviceptr unsigned int bytesize CUdeviceptr dptr void unsigned int bytesize void CUdeviceptr unsigned int ByteCount CUarray unsigned int CUdeviceptr unsigned int ByteCount CUarray unsigned int const void unsigned int ByteCount CUarray unsigned int CUarray unsigned int unsigned int ByteCount void CUarray unsigned int unsigned int CUstream hStream const CUDA_MEMCPY2D pCopy CUdeviceptr const void unsigned int CUstream hStream const CUDA_MEMCPY2D CUstream hStream CUdeviceptr unsigned char unsigned int N CUdeviceptr unsigned int unsigned int N CUdeviceptr unsigned int unsigned short unsigned int unsigned int Height CUarray const CUDA_ARRAY_DESCRIPTOR pAllocateArray CUarray const CUDA_ARRAY3D_DESCRIPTOR pAllocateArray unsigned int CUtexref CUdeviceptr unsigned int bytes CUcontext unsigned int CUdevice device GLenum texture GLenum GLuint buffer GLenum GLuint renderbuffer GLenum GLsizeiptr const GLvoid GLenum usage GLuint shader GLenum type GLsizei const GLuint framebuffers GLsizei const GLuint renderbuffers GLuint v GLuint v GLenum GLenum GLenum GLuint GLint level GLsizei GLuint framebuffers GLuint const GLchar name GLenum GLintptr GLsizeiptr GLvoid data GLuint GLenum GLint param GLuint GLenum GLint param GLhandleARB programObj GLenum GLenum GLsizei GLsizei height GLenum GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid pixels GLint GLsizei const GLfloat value GLint GLfloat GLfloat v1 GLint GLfloat GLfloat GLfloat v2 GLint GLsizei const GLfloat value GLint GLsizei GLboolean const GLfloat value GLuint program GLuint GLfloat GLfloat GLfloat z GLuint GLint GLenum GLboolean GLsizei const GLvoid pointer GLuint GLuint color
Definition: DLLImports.inl:367
void drawModalMessage(const String &msg)
Definition: GLContext.cpp:786
void makeCurrent(void)
Definition: GLContext.cpp:260
void fillRect(const Vec4f &pos, const Vec2f &localSize, const Vec2f &screenSize, U32 abgr)
Definition: GLContext.cpp:357