libepoxy: /build/libepoxy/src/libepoxy/src/dispatch_wgl.c File Reference

libepoxy 1.5.0

Functions | Variables
dispatch_wgl.c File Reference
`#include <assert.h>`
`#include <string.h>`
`#include <stdio.h>`
`#include "dispatch_common.h"`

## Functions
bool | epoxy_conservative_has_wgl_extension (const char *ext)
| If we can determine the WGL extension support from the current context, then return that, otherwise give the answer that will just send us on to get_proc_address(). More...
bool | epoxy_has_wgl_extension (HDC hdc, const char *ext)
void | epoxy_handle_external_wglMakeCurrent (void)
| Does the work necessary to update the win32 per-thread dispatch tables when wglMakeCurrent() is called. More...
BOOL WINAPI | DllMain (HINSTANCE dll, DWORD reason, LPVOID reserved)
| This global symbol is apparently looked up by Windows when loading a DLL, but it doesn't declare the prototype. More...
WRAPPER() | epoxy_wglMakeCurrent (HDC hdc, HGLRC hglrc)
WRAPPER() | epoxy_wglMakeContextCurrentARB (HDC hDrawDC, HDC hReadDC, HGLRC hglrc)
WRAPPER() | epoxy_wglMakeContextCurrentEXT (HDC hDrawDC, HDC hReadDC, HGLRC hglrc)
WRAPPER() | epoxy_wglMakeAssociatedContextCurrentAMD (HGLRC hglrc)

## Variables
PFNWGLMAKECURRENTPROC | epoxy_wglMakeCurrent = epoxy_wglMakeCurrent_wrapped
PFNWGLMAKECONTEXTCURRENTEXTPROC | epoxy_wglMakeContextCurrentEXT = epoxy_wglMakeContextCurrentEXT_wrapped
PFNWGLMAKECONTEXTCURRENTARBPROC | epoxy_wglMakeContextCurrentARB = epoxy_wglMakeContextCurrentARB_wrapped
PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC | epoxy_wglMakeAssociatedContextCurrentEXT = epoxy_wglMakeAssociatedContextCurrentAMD_wrapped

## Function Documentation

## ◆ DllMain()

BOOL WINAPI DllMain | ( | HINSTANCE | dll,
|  | DWORD | reason,
|  | LPVOID | reserved
| ) |  |

This global symbol is apparently looked up by Windows when loading a DLL, but it doesn't declare the prototype.

## ◆ epoxy_conservative_has_wgl_extension()

bool epoxy_conservative_has_wgl_extension | ( | const char * | ext | ) |

If we can determine the WGL extension support from the current context, then return that, otherwise give the answer that will just send us on to get_proc_address().

## ◆ epoxy_handle_external_wglMakeCurrent()

void epoxy_handle_external_wglMakeCurrent | ( | void |  | ) |

Does the work necessary to update the win32 per-thread dispatch tables when wglMakeCurrent() is called.

Right now, we use global function pointers until the second MakeCurrent occurs, at which point we switch to dispatch tables. This could be improved in the future to track a resolved dispatch table per context and reuse it when the context is made current again.

## ◆ epoxy_has_wgl_extension()

bool epoxy_has_wgl_extension | ( | HDC | hdc,
|  | const char * | ext
| ) |  |

## ◆ epoxy_wglMakeAssociatedContextCurrentAMD()

WRAPPER() epoxy_wglMakeAssociatedContextCurrentAMD | ( | HGLRC | hglrc | ) |

## ◆ epoxy_wglMakeContextCurrentARB()

WRAPPER() epoxy_wglMakeContextCurrentARB | ( | HDC | hDrawDC,
|  | HDC | hReadDC,
|  | HGLRC | hglrc
| ) |  |

## ◆ epoxy_wglMakeContextCurrentEXT()

WRAPPER() epoxy_wglMakeContextCurrentEXT | ( | HDC | hDrawDC,
|  | HDC | hReadDC,
|  | HGLRC | hglrc
| ) |  |

## ◆ epoxy_wglMakeCurrent()

WRAPPER() epoxy_wglMakeCurrent | ( | HDC | hdc,
|  | HGLRC | hglrc
| ) |  |

## Variable Documentation

## ◆ epoxy_wglMakeAssociatedContextCurrentEXT

PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC epoxy_wglMakeAssociatedContextCurrentEXT = epoxy_wglMakeAssociatedContextCurrentAMD_wrapped

## ◆ epoxy_wglMakeContextCurrentARB

PFNWGLMAKECONTEXTCURRENTARBPROC epoxy_wglMakeContextCurrentARB = epoxy_wglMakeContextCurrentARB_wrapped

## ◆ epoxy_wglMakeContextCurrentEXT

PFNWGLMAKECONTEXTCURRENTEXTPROC epoxy_wglMakeContextCurrentEXT = epoxy_wglMakeContextCurrentEXT_wrapped

## ◆ epoxy_wglMakeCurrent

PFNWGLMAKECURRENTPROC epoxy_wglMakeCurrent = epoxy_wglMakeCurrent_wrapped