summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/state_trackers/wgl/stw_icd.h31
-rw-r--r--src/gallium/state_trackers/wgl/stw_wgl.c13
2 files changed, 38 insertions, 6 deletions
diff --git a/src/gallium/state_trackers/wgl/stw_icd.h b/src/gallium/state_trackers/wgl/stw_icd.h
index 02eb543fef0..9f386c9c104 100644
--- a/src/gallium/state_trackers/wgl/stw_icd.h
+++ b/src/gallium/state_trackers/wgl/stw_icd.h
@@ -25,6 +25,13 @@
*
**************************************************************************/
+/**
+ * @file
+ *
+ * This header defines the interface used by the system's opengl32.dll and the
+ * Installable Client Driver (ICD).
+ */
+
#ifndef STW_ICD_H
#define STW_ICD_H
@@ -447,14 +454,26 @@ typedef struct _GLCBPRESENTBUFFERSDATA
*/
typedef struct _GLCALLBACKTABLE
{
- /** Unused */
- PROC wglCbSetCurrentValue;
+ /**
+ * Set per-thread driver private data.
+ *
+ * Unused.
+ **/
+ void (APIENTRY *wglCbSetCurrentValue)(void *pvData);
- /** Unused */
- PROC wglCbGetCurrentValue;
+ /**
+ * Get per-thread private data.
+ *
+ * Unused.
+ */
+ void * (APIENTRY *wglCbGetCurrentValue)(void);
- /** Unused */
- PROC wglCbGetDhglrc;
+ /**
+ * Get the ICD GHGLRC handle corresponding to the specified hglrc handle.
+ *
+ * Currently unused.
+ */
+ DHGLRC (APIENTRY *wglCbGetDhglrc)(HGLRC hglrc);
/** Unused */
PROC wglCbGetDdHandle;
diff --git a/src/gallium/state_trackers/wgl/stw_wgl.c b/src/gallium/state_trackers/wgl/stw_wgl.c
index d38bfbefdd7..17b6da8528b 100644
--- a/src/gallium/state_trackers/wgl/stw_wgl.c
+++ b/src/gallium/state_trackers/wgl/stw_wgl.c
@@ -25,6 +25,19 @@
*
**************************************************************************/
+/**
+ * @file
+ *
+ * Fake WGL API implementation.
+ *
+ * These functions implement the WGL API, on top of the ICD DDI, so that the
+ * resulting DLL can be used as a drop-in replacement for the system's
+ * opengl32.dll.
+ *
+ * These functions never get called for ICD drivers, which use exclusively the
+ * ICD DDI, i.e., the Drv* entrypoints.
+ */
+
#include <windows.h>
#include "util/u_debug.h"