Edit

kc3-lang/angle/util/windows/wgl_loader_autogen.h

Branch :

  • Show log

    Commit

  • Author : Jamie Madill
    Date : 2019-01-03 15:24:22
    Hash : 1f56ed2a
    Message : Add WGLWindow and WGL test configs. WGLWindow lets us use a Windows driver's bindings instead of ANGLE. This only works if the underlying driver supports OpenGL ES compatibility. Also adds the WGL headers, WGL XML, and a specialized WGL loader. Because of a small driver issue with NVIDIA I added a retry for the WGL Window initialization. Bug: angleproject:2995 Change-Id: Ie5148ece470dd03df33015f4919ad1fa79a859ec Reviewed-on: https://chromium-review.googlesource.com/c/1366021 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>

  • util/windows/wgl_loader_autogen.h
  • // GENERATED FILE - DO NOT EDIT.
    // Generated by generate_loader.py using data from wgl.xml.
    //
    // Copyright 2019 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    // wgl_loader_autogen.h:
    //   Simple WGL function loader.
    
    #ifndef UTIL_WINDOWS_WGL_LOADER_AUTOGEN_H_
    #define UTIL_WINDOWS_WGL_LOADER_AUTOGEN_H_
    
    #include <GLES2/gl2.h>
    #include <WGL/wgl.h>
    
    // We add an underscore before each function name to ensure common names like "ChoosePixelFormat"
    // and "SwapBuffers" don't conflict with our function pointers. We can't use a namespace because
    // some functions conflict with preprocessor definitions.
    
    extern PFNCHOOSEPIXELFORMATPROC _ChoosePixelFormat;
    extern PFNDESCRIBEPIXELFORMATPROC _DescribePixelFormat;
    extern PFNGETENHMETAFILEPIXELFORMATPROC _GetEnhMetaFilePixelFormat;
    extern PFNGETPIXELFORMATPROC _GetPixelFormat;
    extern PFNSETPIXELFORMATPROC _SetPixelFormat;
    extern PFNSWAPBUFFERSPROC _SwapBuffers;
    extern PFNWGLCOPYCONTEXTPROC _wglCopyContext;
    extern PFNWGLCREATECONTEXTPROC _wglCreateContext;
    extern PFNWGLCREATELAYERCONTEXTPROC _wglCreateLayerContext;
    extern PFNWGLDELETECONTEXTPROC _wglDeleteContext;
    extern PFNWGLDESCRIBELAYERPLANEPROC _wglDescribeLayerPlane;
    extern PFNWGLGETCURRENTCONTEXTPROC _wglGetCurrentContext;
    extern PFNWGLGETCURRENTDCPROC _wglGetCurrentDC;
    extern PFNWGLGETLAYERPALETTEENTRIESPROC _wglGetLayerPaletteEntries;
    extern PFNWGLGETPROCADDRESSPROC _wglGetProcAddress;
    extern PFNWGLMAKECURRENTPROC _wglMakeCurrent;
    extern PFNWGLREALIZELAYERPALETTEPROC _wglRealizeLayerPalette;
    extern PFNWGLSETLAYERPALETTEENTRIESPROC _wglSetLayerPaletteEntries;
    extern PFNWGLSHARELISTSPROC _wglShareLists;
    extern PFNWGLSWAPLAYERBUFFERSPROC _wglSwapLayerBuffers;
    extern PFNWGLUSEFONTBITMAPSPROC _wglUseFontBitmaps;
    extern PFNWGLUSEFONTBITMAPSAPROC _wglUseFontBitmapsA;
    extern PFNWGLUSEFONTBITMAPSWPROC _wglUseFontBitmapsW;
    extern PFNWGLUSEFONTOUTLINESPROC _wglUseFontOutlines;
    extern PFNWGLUSEFONTOUTLINESAPROC _wglUseFontOutlinesA;
    extern PFNWGLUSEFONTOUTLINESWPROC _wglUseFontOutlinesW;
    extern PFNWGLCREATECONTEXTATTRIBSARBPROC _wglCreateContextAttribsARB;
    extern PFNWGLGETEXTENSIONSSTRINGARBPROC _wglGetExtensionsStringARB;
    extern PFNWGLGETSWAPINTERVALEXTPROC _wglGetSwapIntervalEXT;
    extern PFNWGLSWAPINTERVALEXTPROC _wglSwapIntervalEXT;
    
    namespace angle
    {
    using GenericProc = void (*)();
    using LoadProc    = GenericProc(KHRONOS_APIENTRY *)(const char *);
    void LoadWGL(LoadProc loadProc);
    }  // namespace angle
    
    #endif  // UTIL_WINDOWS_WGL_LOADER_AUTOGEN_H_