1 //
2 // Copyright 2017 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 // getProcAddress loader table:
7 //   Mapping from a string entry point name to function address.
8 //
9 
10 #ifndef LIBGL_PROC_TABLE_H_
11 #define LIBGL_PROC_TABLE_H_
12 
13 // Define _GDI32_ so that wingdi.h doesn't declare functions as imports
14 #ifndef _GDI32_
15 #    define _GDI32_
16 #endif
17 
18 #include <angle_gl.h>
19 
20 #include <WGL/wgl.h>
21 #include <stddef.h>
22 #include <utility>
23 
24 // So that windows file winnt.h doesn't substitute for MemoryBarrier function
25 #ifdef MemoryBarrier
26 #    undef MemoryBarrier
27 #endif
28 
29 namespace wgl
30 {
31 using ProcEntry = std::pair<const char *, PROC>;
32 
33 extern const wgl::ProcEntry g_procTable[];
34 extern const size_t g_numProcs;
35 }  // namespace wgl
36 
37 #endif  // LIBGL_PROC_TABLE_H_
38