├── LICENSE
├── README.md
├── Video 10 - Loading OBJ Models - Resources
├── Intro+Modern+OpenGL+Video+9-Load+OBJ_v1.1-VS2013.zip
├── Intro+Modern+OpenGL+Video+9-Load+OBJ_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+9-Load+OBJ_v2.0-VS2019.zip
├── Video 11 - Basic Lighting I - Resources
├── Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip
├── Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip
├── Video 12 - Basic Lighting II - Resources
├── Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip
├── Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip
├── Video 13 - Basic Lighting III - Resources
├── Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip
├── Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip
├── Video 2 - Setup Environment - Resources
├── GLFW_GLEW_VS2017_x86.zip
├── Getting+Started+-+Visual+Studio+2019.pdf
├── Getting_Started_-_Visual_Studio_2017.pdf
├── IMPORTANT_INSTRUCTIONS_FOR_VS2017.txt
└── Installing_Visual_Studio_2015.pdf
├── Video 3 - Window and Input - Resources
├── Intro+Modern+OpenGL+Video+3-Window+and+Input_v1.0-VS2013.zip
├── Intro+Modern+OpenGL+Video+3-Window+and+Input_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+3-Window+and+Input_v2.0-VS2019.zip
├── Video 4 - Your First Triangle - Resources
├── Intro+Modern+OpenGL+Video+4-Hello+Triangle_v1.0-VS2013.zip
├── Intro+Modern+OpenGL+Video+4-Hello+Triangle_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+4-Hello+Triangle_v2.0-VS2019.zip
├── Video 5 - Shaders - Resources
├── Intro+Modern+OpenGL+Video+5-Shaders_v1.0-VS2013.zip
├── Intro+Modern+OpenGL+Video+5-Shaders_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+5-Shaders_v2.0-VS2019.zip
├── Video 6 - Texture Mapping - Resources
├── Intro+Modern+OpenGL+Video+6-Texture+Mapping_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+6-Texture+Mapping_v2.0-VS2019.zip
├── Video 8 - Virtual Camera I - Resources
├── Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v1.1-VS2013 (1).zip
├── Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2017.zip
├── Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2019.zip
├── Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v1.1-VS2013.zip
├── Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2017.zip
├── Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2019.zip
├── Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v1.1-VS2013.zip
├── Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2019.zip
├── Video 9 -Virtual Camera II - Resources
├── Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v1.1-VS2013 (1).zip
├── Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2017.zip
├── Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2019.zip
├── Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v1.1-VS2013.zip
├── Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2017.zip
├── Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2019.zip
├── Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v1.1-VS2013.zip
├── Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2017.zip
└── Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2019.zip
└── common_VS2017
└── common
├── GL
├── eglew.h
├── glew.h
├── glxew.h
└── wglew.h
├── GLFW
├── glfw3.h
└── glfw3native.h
├── glew32.exp
├── glew32.lib
├── glew32d.exp
├── glew32d.lib
├── glew32s.lib
├── glew32sd.lib
└── glfw3.lib
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Packt
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | # Learn Modern OpenGL Programming
5 | This is the code repository for [Learn Modern OpenGL Programming](https://www.packtpub.com/application-development/hands-deep-learning-tensorflow-20-video?utm_source=github&utm_medium=repository&utm_campaign=9781789951707), published by [Packt](https://www.packtpub.com/?utm_source=github). It contains all the supporting project files necessary to work through the video course from start to finish.
6 | ## About the Video Course
7 | This course will introduce you to modern OpenGL programming. We’ll teach you a brief history of OpenGL to help you understand why we chose to teach modern OpenGL with its programmable rendering pipeline over the fixed function pipeline.
8 | We’ll begin with the basics of getting OpenGL running in a window using the GLFW library. Then we move on to the basics of rendering polygons to the display by sending buffers of data to the computers graphics card and programming it using shaders with the GLSL shading language. Then you’ll learn how to map textures to your objects. You'll also set up a virtual camera using keyboard and mouse inputs to enable you to move around in the scene.
9 | After you have the fundamentals working, you can start building more complex things. You’ll learn how to load 3D models and add interesting lighting to the scene. By the end of this course, you’ll know how to set up and render in 3D with modern OpenGL. With each lesson, we’ll build the framework with reusable C++ and OpenGL code. This is a great starting place for you to build your own game engine.
10 | We’ll start with a blank project and write code each step of the way. Each lesson builds on the last. Even if you’ve never touched OpenGL, you should find the course easy to follow and everything is explained along the way. All of the source code, pre-built third-party libraries, and Visual Studio solutions for each lesson are included.
11 | All the codes and supporting files for this course are available at: https://github.com/PacktPublishing/Learn-Modern-OpenGL-Programming
12 |
13 |
14 |
15 |
16 | -
17 |
18 | ## Instructions and Navigation
19 | ### Assumed Knowledge
20 | To fully benefit from the coverage included in this course, you will need:
21 | People who wish to learn modern OpenGL and its programmable rendering pipeline. Whether you’re trying to learn OpenGL for school, in the pursuit of a career, or simply looking for a hobby, this course will be perfect for you.
22 | ### Technical Requirements
23 |
24 |
25 | ## Related Products
26 | * [OpenGL and GLSL Fundamentals with C++ (practical course) [Video]](https://www.packtpub.com/application-development/hands-deep-learning-tensorflow-20-video?utm_source=github&utm_medium=repository&utm_campaign=9781789951707)
27 |
28 | * [Learning Angular Services [Video]](https://www.packtpub.com/application-development/hands-deep-learning-tensorflow-20-video?utm_source=github&utm_medium=repository&utm_campaign=9781789951707)
29 |
30 | * [Hands-On Deep Learning with TensorFlow 2.0 [Video]](https://www.packtpub.com/application-development/hands-deep-learning-tensorflow-20-video?utm_source=github&utm_medium=repository&utm_campaign=9781789951707)
31 |
32 |
--------------------------------------------------------------------------------
/Video 10 - Loading OBJ Models - Resources/Intro+Modern+OpenGL+Video+9-Load+OBJ_v1.1-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 10 - Loading OBJ Models - Resources/Intro+Modern+OpenGL+Video+9-Load+OBJ_v1.1-VS2013.zip
--------------------------------------------------------------------------------
/Video 10 - Loading OBJ Models - Resources/Intro+Modern+OpenGL+Video+9-Load+OBJ_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 10 - Loading OBJ Models - Resources/Intro+Modern+OpenGL+Video+9-Load+OBJ_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 10 - Loading OBJ Models - Resources/Intro+Modern+OpenGL+Video+9-Load+OBJ_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 10 - Loading OBJ Models - Resources/Intro+Modern+OpenGL+Video+9-Load+OBJ_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 11 - Basic Lighting I - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 11 - Basic Lighting I - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip
--------------------------------------------------------------------------------
/Video 11 - Basic Lighting I - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 11 - Basic Lighting I - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 11 - Basic Lighting I - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 11 - Basic Lighting I - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 12 - Basic Lighting II - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 12 - Basic Lighting II - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip
--------------------------------------------------------------------------------
/Video 12 - Basic Lighting II - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 12 - Basic Lighting II - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 12 - Basic Lighting II - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 12 - Basic Lighting II - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 13 - Basic Lighting III - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 13 - Basic Lighting III - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v1.2-VS2013.zip
--------------------------------------------------------------------------------
/Video 13 - Basic Lighting III - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 13 - Basic Lighting III - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 13 - Basic Lighting III - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 13 - Basic Lighting III - Resources/Intro+Modern+OpenGL+Video+10-Lighting_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 2 - Setup Environment - Resources/GLFW_GLEW_VS2017_x86.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 2 - Setup Environment - Resources/GLFW_GLEW_VS2017_x86.zip
--------------------------------------------------------------------------------
/Video 2 - Setup Environment - Resources/Getting+Started+-+Visual+Studio+2019.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 2 - Setup Environment - Resources/Getting+Started+-+Visual+Studio+2019.pdf
--------------------------------------------------------------------------------
/Video 2 - Setup Environment - Resources/Getting_Started_-_Visual_Studio_2017.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 2 - Setup Environment - Resources/Getting_Started_-_Visual_Studio_2017.pdf
--------------------------------------------------------------------------------
/Video 2 - Setup Environment - Resources/IMPORTANT_INSTRUCTIONS_FOR_VS2017.txt:
--------------------------------------------------------------------------------
1 | These instructions are for replacing the library files for GLFW and GLEW with versions
2 | built for Visual Studio 2017 (VS2017).
3 |
4 | The ZIP file containing the files is "GLFW_GLEW_VS2017_x86.zip"
5 |
6 | Included in this zip file "GLFW_GLEW_VS2017.zip" are GLFW and GLEW libraries built with Visual Studio 2017
7 | along with their header files. The original code listings are built for Visual Studio 2013. If you have
8 | converted the projects to VS2017 and are therefore using VS2017 to build the code samples included
9 | with the course then these instructions apply to you.
10 |
11 |
12 | INSTRUCTIONS!
13 | -------------
14 |
15 | Replace these files with the files under "common" in the same folders Since there is a "common" folder
16 | for each lesson that has a code listing you will need to do this for each of them.
17 |
18 | Replace this "GL" folder and all its contents with the same folder "common/includes/GL"
19 | Replace this "GLFW" folder and all its contents with the same folder "common/includes/GLFW".
20 | Replace this folder "lib" and all its contents with the same folder under "common/lib".
21 |
22 |
23 | If you are using Visual Studio 2015 then you will have to build GLFW and GLEW separately
24 | for that compiler version.
--------------------------------------------------------------------------------
/Video 2 - Setup Environment - Resources/Installing_Visual_Studio_2015.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 2 - Setup Environment - Resources/Installing_Visual_Studio_2015.pdf
--------------------------------------------------------------------------------
/Video 3 - Window and Input - Resources/Intro+Modern+OpenGL+Video+3-Window+and+Input_v1.0-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 3 - Window and Input - Resources/Intro+Modern+OpenGL+Video+3-Window+and+Input_v1.0-VS2013.zip
--------------------------------------------------------------------------------
/Video 3 - Window and Input - Resources/Intro+Modern+OpenGL+Video+3-Window+and+Input_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 3 - Window and Input - Resources/Intro+Modern+OpenGL+Video+3-Window+and+Input_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 3 - Window and Input - Resources/Intro+Modern+OpenGL+Video+3-Window+and+Input_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 3 - Window and Input - Resources/Intro+Modern+OpenGL+Video+3-Window+and+Input_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 4 - Your First Triangle - Resources/Intro+Modern+OpenGL+Video+4-Hello+Triangle_v1.0-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 4 - Your First Triangle - Resources/Intro+Modern+OpenGL+Video+4-Hello+Triangle_v1.0-VS2013.zip
--------------------------------------------------------------------------------
/Video 4 - Your First Triangle - Resources/Intro+Modern+OpenGL+Video+4-Hello+Triangle_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 4 - Your First Triangle - Resources/Intro+Modern+OpenGL+Video+4-Hello+Triangle_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 4 - Your First Triangle - Resources/Intro+Modern+OpenGL+Video+4-Hello+Triangle_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 4 - Your First Triangle - Resources/Intro+Modern+OpenGL+Video+4-Hello+Triangle_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 5 - Shaders - Resources/Intro+Modern+OpenGL+Video+5-Shaders_v1.0-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 5 - Shaders - Resources/Intro+Modern+OpenGL+Video+5-Shaders_v1.0-VS2013.zip
--------------------------------------------------------------------------------
/Video 5 - Shaders - Resources/Intro+Modern+OpenGL+Video+5-Shaders_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 5 - Shaders - Resources/Intro+Modern+OpenGL+Video+5-Shaders_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 5 - Shaders - Resources/Intro+Modern+OpenGL+Video+5-Shaders_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 5 - Shaders - Resources/Intro+Modern+OpenGL+Video+5-Shaders_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 6 - Texture Mapping - Resources/Intro+Modern+OpenGL+Video+6-Texture+Mapping_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 6 - Texture Mapping - Resources/Intro+Modern+OpenGL+Video+6-Texture+Mapping_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 6 - Texture Mapping - Resources/Intro+Modern+OpenGL+Video+6-Texture+Mapping_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 6 - Texture Mapping - Resources/Intro+Modern+OpenGL+Video+6-Texture+Mapping_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v1.1-VS2013 (1).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v1.1-VS2013 (1).zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v1.1-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v1.1-VS2013.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v1.1-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v1.1-VS2013.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 8 - Virtual Camera I - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v1.1-VS2013 (1).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v1.1-VS2013 (1).zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_0-Virtual+Camera_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v1.1-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v1.1-VS2013.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_1-Orbit+Camera_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v1.1-VS2013.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v1.1-VS2013.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2017.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2017.zip
--------------------------------------------------------------------------------
/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2019.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/Video 9 -Virtual Camera II - Resources/Intro+Modern+OpenGL+Video+8_2-First+Person+Shooter+Camera_v2.0-VS2019.zip
--------------------------------------------------------------------------------
/common_VS2017/common/GL/glxew.h:
--------------------------------------------------------------------------------
1 | /*
2 | ** The OpenGL Extension Wrangler Library
3 | ** Copyright (C) 2008-2017, Nigel Stewart
4 | ** Copyright (C) 2002-2008, Milan Ikits
5 | ** Copyright (C) 2002-2008, Marcelo E. Magallon
6 | ** Copyright (C) 2002, Lev Povalahev
7 | ** All rights reserved.
8 | **
9 | ** Redistribution and use in source and binary forms, with or without
10 | ** modification, are permitted provided that the following conditions are met:
11 | **
12 | ** * Redistributions of source code must retain the above copyright notice,
13 | ** this list of conditions and the following disclaimer.
14 | ** * Redistributions in binary form must reproduce the above copyright notice,
15 | ** this list of conditions and the following disclaimer in the documentation
16 | ** and/or other materials provided with the distribution.
17 | ** * The name of the author may be used to endorse or promote products
18 | ** derived from this software without specific prior written permission.
19 | **
20 | ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 | ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 | ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 | ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24 | ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 | ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 | ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 | ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30 | ** THE POSSIBILITY OF SUCH DAMAGE.
31 | */
32 |
33 | /*
34 | * Mesa 3-D graphics library
35 | * Version: 7.0
36 | *
37 | * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
38 | *
39 | * Permission is hereby granted, free of charge, to any person obtaining a
40 | * copy of this software and associated documentation files (the "Software"),
41 | * to deal in the Software without restriction, including without limitation
42 | * the rights to use, copy, modify, merge, publish, distribute, sublicense,
43 | * and/or sell copies of the Software, and to permit persons to whom the
44 | * Software is furnished to do so, subject to the following conditions:
45 | *
46 | * The above copyright notice and this permission notice shall be included
47 | * in all copies or substantial portions of the Software.
48 | *
49 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
50 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
51 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
52 | * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
53 | * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
54 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
55 | */
56 |
57 | /*
58 | ** Copyright (c) 2007 The Khronos Group Inc.
59 | **
60 | ** Permission is hereby granted, free of charge, to any person obtaining a
61 | ** copy of this software and/or associated documentation files (the
62 | ** "Materials"), to deal in the Materials without restriction, including
63 | ** without limitation the rights to use, copy, modify, merge, publish,
64 | ** distribute, sublicense, and/or sell copies of the Materials, and to
65 | ** permit persons to whom the Materials are furnished to do so, subject to
66 | ** the following conditions:
67 | **
68 | ** The above copyright notice and this permission notice shall be included
69 | ** in all copies or substantial portions of the Materials.
70 | **
71 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
72 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
73 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
74 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
75 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
76 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
77 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
78 | */
79 |
80 | #ifndef __glxew_h__
81 | #define __glxew_h__
82 | #define __GLXEW_H__
83 |
84 | #ifdef __glxext_h_
85 | #error glxext.h included before glxew.h
86 | #endif
87 |
88 | #if defined(GLX_H) || defined(__GLX_glx_h__) || defined(__glx_h__)
89 | #error glx.h included before glxew.h
90 | #endif
91 |
92 | #define __glxext_h_
93 |
94 | #define GLX_H
95 | #define __GLX_glx_h__
96 | #define __glx_h__
97 |
98 | #include
99 | #include
100 | #include
101 | #include
102 |
103 | #ifdef __cplusplus
104 | extern "C" {
105 | #endif
106 |
107 | /* ---------------------------- GLX_VERSION_1_0 --------------------------- */
108 |
109 | #ifndef GLX_VERSION_1_0
110 | #define GLX_VERSION_1_0 1
111 |
112 | #define GLX_USE_GL 1
113 | #define GLX_BUFFER_SIZE 2
114 | #define GLX_LEVEL 3
115 | #define GLX_RGBA 4
116 | #define GLX_DOUBLEBUFFER 5
117 | #define GLX_STEREO 6
118 | #define GLX_AUX_BUFFERS 7
119 | #define GLX_RED_SIZE 8
120 | #define GLX_GREEN_SIZE 9
121 | #define GLX_BLUE_SIZE 10
122 | #define GLX_ALPHA_SIZE 11
123 | #define GLX_DEPTH_SIZE 12
124 | #define GLX_STENCIL_SIZE 13
125 | #define GLX_ACCUM_RED_SIZE 14
126 | #define GLX_ACCUM_GREEN_SIZE 15
127 | #define GLX_ACCUM_BLUE_SIZE 16
128 | #define GLX_ACCUM_ALPHA_SIZE 17
129 | #define GLX_BAD_SCREEN 1
130 | #define GLX_BAD_ATTRIBUTE 2
131 | #define GLX_NO_EXTENSION 3
132 | #define GLX_BAD_VISUAL 4
133 | #define GLX_BAD_CONTEXT 5
134 | #define GLX_BAD_VALUE 6
135 | #define GLX_BAD_ENUM 7
136 |
137 | typedef XID GLXDrawable;
138 | typedef XID GLXPixmap;
139 | #ifdef __sun
140 | typedef struct __glXContextRec *GLXContext;
141 | #else
142 | typedef struct __GLXcontextRec *GLXContext;
143 | #endif
144 |
145 | typedef unsigned int GLXVideoDeviceNV;
146 |
147 | extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
148 | extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
149 | extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
150 | extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
151 | extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
152 | extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
153 | extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
154 | extern void glXDestroyContext (Display *dpy, GLXContext ctx);
155 | extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
156 | extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);
157 | extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
158 | extern GLXContext glXGetCurrentContext (void);
159 | extern GLXDrawable glXGetCurrentDrawable (void);
160 | extern void glXWaitGL (void);
161 | extern void glXWaitX (void);
162 | extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
163 | extern void glXUseXFont (Font font, int first, int count, int listBase);
164 |
165 | #define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
166 |
167 | #endif /* GLX_VERSION_1_0 */
168 |
169 | /* ---------------------------- GLX_VERSION_1_1 --------------------------- */
170 |
171 | #ifndef GLX_VERSION_1_1
172 | #define GLX_VERSION_1_1
173 |
174 | #define GLX_VENDOR 0x1
175 | #define GLX_VERSION 0x2
176 | #define GLX_EXTENSIONS 0x3
177 |
178 | extern const char* glXQueryExtensionsString (Display *dpy, int screen);
179 | extern const char* glXGetClientString (Display *dpy, int name);
180 | extern const char* glXQueryServerString (Display *dpy, int screen, int name);
181 |
182 | #define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
183 |
184 | #endif /* GLX_VERSION_1_1 */
185 |
186 | /* ---------------------------- GLX_VERSION_1_2 ---------------------------- */
187 |
188 | #ifndef GLX_VERSION_1_2
189 | #define GLX_VERSION_1_2 1
190 |
191 | typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
192 |
193 | #define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)
194 |
195 | #define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)
196 |
197 | #endif /* GLX_VERSION_1_2 */
198 |
199 | /* ---------------------------- GLX_VERSION_1_3 ---------------------------- */
200 |
201 | #ifndef GLX_VERSION_1_3
202 | #define GLX_VERSION_1_3 1
203 |
204 | #define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
205 | #define GLX_RGBA_BIT 0x00000001
206 | #define GLX_WINDOW_BIT 0x00000001
207 | #define GLX_COLOR_INDEX_BIT 0x00000002
208 | #define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
209 | #define GLX_PIXMAP_BIT 0x00000002
210 | #define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
211 | #define GLX_PBUFFER_BIT 0x00000004
212 | #define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
213 | #define GLX_AUX_BUFFERS_BIT 0x00000010
214 | #define GLX_CONFIG_CAVEAT 0x20
215 | #define GLX_DEPTH_BUFFER_BIT 0x00000020
216 | #define GLX_X_VISUAL_TYPE 0x22
217 | #define GLX_TRANSPARENT_TYPE 0x23
218 | #define GLX_TRANSPARENT_INDEX_VALUE 0x24
219 | #define GLX_TRANSPARENT_RED_VALUE 0x25
220 | #define GLX_TRANSPARENT_GREEN_VALUE 0x26
221 | #define GLX_TRANSPARENT_BLUE_VALUE 0x27
222 | #define GLX_TRANSPARENT_ALPHA_VALUE 0x28
223 | #define GLX_STENCIL_BUFFER_BIT 0x00000040
224 | #define GLX_ACCUM_BUFFER_BIT 0x00000080
225 | #define GLX_NONE 0x8000
226 | #define GLX_SLOW_CONFIG 0x8001
227 | #define GLX_TRUE_COLOR 0x8002
228 | #define GLX_DIRECT_COLOR 0x8003
229 | #define GLX_PSEUDO_COLOR 0x8004
230 | #define GLX_STATIC_COLOR 0x8005
231 | #define GLX_GRAY_SCALE 0x8006
232 | #define GLX_STATIC_GRAY 0x8007
233 | #define GLX_TRANSPARENT_RGB 0x8008
234 | #define GLX_TRANSPARENT_INDEX 0x8009
235 | #define GLX_VISUAL_ID 0x800B
236 | #define GLX_SCREEN 0x800C
237 | #define GLX_NON_CONFORMANT_CONFIG 0x800D
238 | #define GLX_DRAWABLE_TYPE 0x8010
239 | #define GLX_RENDER_TYPE 0x8011
240 | #define GLX_X_RENDERABLE 0x8012
241 | #define GLX_FBCONFIG_ID 0x8013
242 | #define GLX_RGBA_TYPE 0x8014
243 | #define GLX_COLOR_INDEX_TYPE 0x8015
244 | #define GLX_MAX_PBUFFER_WIDTH 0x8016
245 | #define GLX_MAX_PBUFFER_HEIGHT 0x8017
246 | #define GLX_MAX_PBUFFER_PIXELS 0x8018
247 | #define GLX_PRESERVED_CONTENTS 0x801B
248 | #define GLX_LARGEST_PBUFFER 0x801C
249 | #define GLX_WIDTH 0x801D
250 | #define GLX_HEIGHT 0x801E
251 | #define GLX_EVENT_MASK 0x801F
252 | #define GLX_DAMAGED 0x8020
253 | #define GLX_SAVED 0x8021
254 | #define GLX_WINDOW 0x8022
255 | #define GLX_PBUFFER 0x8023
256 | #define GLX_PBUFFER_HEIGHT 0x8040
257 | #define GLX_PBUFFER_WIDTH 0x8041
258 | #define GLX_PBUFFER_CLOBBER_MASK 0x08000000
259 | #define GLX_DONT_CARE 0xFFFFFFFF
260 |
261 | typedef XID GLXFBConfigID;
262 | typedef XID GLXPbuffer;
263 | typedef XID GLXWindow;
264 | typedef struct __GLXFBConfigRec *GLXFBConfig;
265 |
266 | typedef struct {
267 | int event_type;
268 | int draw_type;
269 | unsigned long serial;
270 | Bool send_event;
271 | Display *display;
272 | GLXDrawable drawable;
273 | unsigned int buffer_mask;
274 | unsigned int aux_buffer;
275 | int x, y;
276 | int width, height;
277 | int count;
278 | } GLXPbufferClobberEvent;
279 | typedef union __GLXEvent {
280 | GLXPbufferClobberEvent glxpbufferclobber;
281 | long pad[24];
282 | } GLXEvent;
283 |
284 | typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
285 | typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
286 | typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
287 | typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
288 | typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
289 | typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
290 | typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
291 | typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
292 | typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
293 | typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
294 | typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
295 | typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
296 | typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
297 | typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
298 | typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
299 | typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
300 | typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
301 |
302 | #define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)
303 | #define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)
304 | #define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)
305 | #define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)
306 | #define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)
307 | #define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)
308 | #define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)
309 | #define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)
310 | #define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)
311 | #define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)
312 | #define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)
313 | #define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)
314 | #define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)
315 | #define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)
316 | #define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)
317 | #define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)
318 | #define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)
319 |
320 | #define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)
321 |
322 | #endif /* GLX_VERSION_1_3 */
323 |
324 | /* ---------------------------- GLX_VERSION_1_4 ---------------------------- */
325 |
326 | #ifndef GLX_VERSION_1_4
327 | #define GLX_VERSION_1_4 1
328 |
329 | #define GLX_SAMPLE_BUFFERS 100000
330 | #define GLX_SAMPLES 100001
331 |
332 | extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
333 |
334 | #define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)
335 |
336 | #endif /* GLX_VERSION_1_4 */
337 |
338 | /* -------------------------- GLX_3DFX_multisample ------------------------- */
339 |
340 | #ifndef GLX_3DFX_multisample
341 | #define GLX_3DFX_multisample 1
342 |
343 | #define GLX_SAMPLE_BUFFERS_3DFX 0x8050
344 | #define GLX_SAMPLES_3DFX 0x8051
345 |
346 | #define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)
347 |
348 | #endif /* GLX_3DFX_multisample */
349 |
350 | /* ------------------------ GLX_AMD_gpu_association ------------------------ */
351 |
352 | #ifndef GLX_AMD_gpu_association
353 | #define GLX_AMD_gpu_association 1
354 |
355 | #define GLX_GPU_VENDOR_AMD 0x1F00
356 | #define GLX_GPU_RENDERER_STRING_AMD 0x1F01
357 | #define GLX_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
358 | #define GLX_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
359 | #define GLX_GPU_RAM_AMD 0x21A3
360 | #define GLX_GPU_CLOCK_AMD 0x21A4
361 | #define GLX_GPU_NUM_PIPES_AMD 0x21A5
362 | #define GLX_GPU_NUM_SIMD_AMD 0x21A6
363 | #define GLX_GPU_NUM_RB_AMD 0x21A7
364 | #define GLX_GPU_NUM_SPI_AMD 0x21A8
365 |
366 | typedef void ( * PFNGLXBLITCONTEXTFRAMEBUFFERAMDPROC) (GLXContext dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
367 | typedef GLXContext ( * PFNGLXCREATEASSOCIATEDCONTEXTAMDPROC) (unsigned int id, GLXContext share_list);
368 | typedef GLXContext ( * PFNGLXCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (unsigned int id, GLXContext share_context, const int* attribList);
369 | typedef Bool ( * PFNGLXDELETEASSOCIATEDCONTEXTAMDPROC) (GLXContext ctx);
370 | typedef unsigned int ( * PFNGLXGETCONTEXTGPUIDAMDPROC) (GLXContext ctx);
371 | typedef GLXContext ( * PFNGLXGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
372 | typedef unsigned int ( * PFNGLXGETGPUIDSAMDPROC) (unsigned int maxCount, unsigned int* ids);
373 | typedef int ( * PFNGLXGETGPUINFOAMDPROC) (unsigned int id, int property, GLenum dataType, unsigned int size, void* data);
374 | typedef Bool ( * PFNGLXMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (GLXContext ctx);
375 |
376 | #define glXBlitContextFramebufferAMD GLXEW_GET_FUN(__glewXBlitContextFramebufferAMD)
377 | #define glXCreateAssociatedContextAMD GLXEW_GET_FUN(__glewXCreateAssociatedContextAMD)
378 | #define glXCreateAssociatedContextAttribsAMD GLXEW_GET_FUN(__glewXCreateAssociatedContextAttribsAMD)
379 | #define glXDeleteAssociatedContextAMD GLXEW_GET_FUN(__glewXDeleteAssociatedContextAMD)
380 | #define glXGetContextGPUIDAMD GLXEW_GET_FUN(__glewXGetContextGPUIDAMD)
381 | #define glXGetCurrentAssociatedContextAMD GLXEW_GET_FUN(__glewXGetCurrentAssociatedContextAMD)
382 | #define glXGetGPUIDsAMD GLXEW_GET_FUN(__glewXGetGPUIDsAMD)
383 | #define glXGetGPUInfoAMD GLXEW_GET_FUN(__glewXGetGPUInfoAMD)
384 | #define glXMakeAssociatedContextCurrentAMD GLXEW_GET_FUN(__glewXMakeAssociatedContextCurrentAMD)
385 |
386 | #define GLXEW_AMD_gpu_association GLXEW_GET_VAR(__GLXEW_AMD_gpu_association)
387 |
388 | #endif /* GLX_AMD_gpu_association */
389 |
390 | /* --------------------- GLX_ARB_context_flush_control --------------------- */
391 |
392 | #ifndef GLX_ARB_context_flush_control
393 | #define GLX_ARB_context_flush_control 1
394 |
395 | #define GLXEW_ARB_context_flush_control GLXEW_GET_VAR(__GLXEW_ARB_context_flush_control)
396 |
397 | #endif /* GLX_ARB_context_flush_control */
398 |
399 | /* ------------------------- GLX_ARB_create_context ------------------------ */
400 |
401 | #ifndef GLX_ARB_create_context
402 | #define GLX_ARB_create_context 1
403 |
404 | #define GLX_CONTEXT_DEBUG_BIT_ARB 0x0001
405 | #define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
406 | #define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
407 | #define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
408 | #define GLX_CONTEXT_FLAGS_ARB 0x2094
409 |
410 | typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
411 |
412 | #define glXCreateContextAttribsARB GLXEW_GET_FUN(__glewXCreateContextAttribsARB)
413 |
414 | #define GLXEW_ARB_create_context GLXEW_GET_VAR(__GLXEW_ARB_create_context)
415 |
416 | #endif /* GLX_ARB_create_context */
417 |
418 | /* -------------------- GLX_ARB_create_context_no_error -------------------- */
419 |
420 | #ifndef GLX_ARB_create_context_no_error
421 | #define GLX_ARB_create_context_no_error 1
422 |
423 | #define GLXEW_ARB_create_context_no_error GLXEW_GET_VAR(__GLXEW_ARB_create_context_no_error)
424 |
425 | #endif /* GLX_ARB_create_context_no_error */
426 |
427 | /* --------------------- GLX_ARB_create_context_profile -------------------- */
428 |
429 | #ifndef GLX_ARB_create_context_profile
430 | #define GLX_ARB_create_context_profile 1
431 |
432 | #define GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
433 | #define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
434 | #define GLX_CONTEXT_PROFILE_MASK_ARB 0x9126
435 |
436 | #define GLXEW_ARB_create_context_profile GLXEW_GET_VAR(__GLXEW_ARB_create_context_profile)
437 |
438 | #endif /* GLX_ARB_create_context_profile */
439 |
440 | /* ------------------- GLX_ARB_create_context_robustness ------------------- */
441 |
442 | #ifndef GLX_ARB_create_context_robustness
443 | #define GLX_ARB_create_context_robustness 1
444 |
445 | #define GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
446 | #define GLX_LOSE_CONTEXT_ON_RESET_ARB 0x8252
447 | #define GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
448 | #define GLX_NO_RESET_NOTIFICATION_ARB 0x8261
449 |
450 | #define GLXEW_ARB_create_context_robustness GLXEW_GET_VAR(__GLXEW_ARB_create_context_robustness)
451 |
452 | #endif /* GLX_ARB_create_context_robustness */
453 |
454 | /* ------------------------- GLX_ARB_fbconfig_float ------------------------ */
455 |
456 | #ifndef GLX_ARB_fbconfig_float
457 | #define GLX_ARB_fbconfig_float 1
458 |
459 | #define GLX_RGBA_FLOAT_BIT_ARB 0x00000004
460 | #define GLX_RGBA_FLOAT_TYPE_ARB 0x20B9
461 |
462 | #define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)
463 |
464 | #endif /* GLX_ARB_fbconfig_float */
465 |
466 | /* ------------------------ GLX_ARB_framebuffer_sRGB ----------------------- */
467 |
468 | #ifndef GLX_ARB_framebuffer_sRGB
469 | #define GLX_ARB_framebuffer_sRGB 1
470 |
471 | #define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2
472 |
473 | #define GLXEW_ARB_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_ARB_framebuffer_sRGB)
474 |
475 | #endif /* GLX_ARB_framebuffer_sRGB */
476 |
477 | /* ------------------------ GLX_ARB_get_proc_address ----------------------- */
478 |
479 | #ifndef GLX_ARB_get_proc_address
480 | #define GLX_ARB_get_proc_address 1
481 |
482 | extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
483 |
484 | #define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)
485 |
486 | #endif /* GLX_ARB_get_proc_address */
487 |
488 | /* -------------------------- GLX_ARB_multisample -------------------------- */
489 |
490 | #ifndef GLX_ARB_multisample
491 | #define GLX_ARB_multisample 1
492 |
493 | #define GLX_SAMPLE_BUFFERS_ARB 100000
494 | #define GLX_SAMPLES_ARB 100001
495 |
496 | #define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)
497 |
498 | #endif /* GLX_ARB_multisample */
499 |
500 | /* ---------------- GLX_ARB_robustness_application_isolation --------------- */
501 |
502 | #ifndef GLX_ARB_robustness_application_isolation
503 | #define GLX_ARB_robustness_application_isolation 1
504 |
505 | #define GLX_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
506 |
507 | #define GLXEW_ARB_robustness_application_isolation GLXEW_GET_VAR(__GLXEW_ARB_robustness_application_isolation)
508 |
509 | #endif /* GLX_ARB_robustness_application_isolation */
510 |
511 | /* ---------------- GLX_ARB_robustness_share_group_isolation --------------- */
512 |
513 | #ifndef GLX_ARB_robustness_share_group_isolation
514 | #define GLX_ARB_robustness_share_group_isolation 1
515 |
516 | #define GLX_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
517 |
518 | #define GLXEW_ARB_robustness_share_group_isolation GLXEW_GET_VAR(__GLXEW_ARB_robustness_share_group_isolation)
519 |
520 | #endif /* GLX_ARB_robustness_share_group_isolation */
521 |
522 | /* ---------------------- GLX_ARB_vertex_buffer_object --------------------- */
523 |
524 | #ifndef GLX_ARB_vertex_buffer_object
525 | #define GLX_ARB_vertex_buffer_object 1
526 |
527 | #define GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095
528 |
529 | #define GLXEW_ARB_vertex_buffer_object GLXEW_GET_VAR(__GLXEW_ARB_vertex_buffer_object)
530 |
531 | #endif /* GLX_ARB_vertex_buffer_object */
532 |
533 | /* ----------------------- GLX_ATI_pixel_format_float ---------------------- */
534 |
535 | #ifndef GLX_ATI_pixel_format_float
536 | #define GLX_ATI_pixel_format_float 1
537 |
538 | #define GLX_RGBA_FLOAT_ATI_BIT 0x00000100
539 |
540 | #define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)
541 |
542 | #endif /* GLX_ATI_pixel_format_float */
543 |
544 | /* ------------------------- GLX_ATI_render_texture ------------------------ */
545 |
546 | #ifndef GLX_ATI_render_texture
547 | #define GLX_ATI_render_texture 1
548 |
549 | #define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800
550 | #define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801
551 | #define GLX_TEXTURE_FORMAT_ATI 0x9802
552 | #define GLX_TEXTURE_TARGET_ATI 0x9803
553 | #define GLX_MIPMAP_TEXTURE_ATI 0x9804
554 | #define GLX_TEXTURE_RGB_ATI 0x9805
555 | #define GLX_TEXTURE_RGBA_ATI 0x9806
556 | #define GLX_NO_TEXTURE_ATI 0x9807
557 | #define GLX_TEXTURE_CUBE_MAP_ATI 0x9808
558 | #define GLX_TEXTURE_1D_ATI 0x9809
559 | #define GLX_TEXTURE_2D_ATI 0x980A
560 | #define GLX_MIPMAP_LEVEL_ATI 0x980B
561 | #define GLX_CUBE_MAP_FACE_ATI 0x980C
562 | #define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
563 | #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
564 | #define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
565 | #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
566 | #define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
567 | #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
568 | #define GLX_FRONT_LEFT_ATI 0x9813
569 | #define GLX_FRONT_RIGHT_ATI 0x9814
570 | #define GLX_BACK_LEFT_ATI 0x9815
571 | #define GLX_BACK_RIGHT_ATI 0x9816
572 | #define GLX_AUX0_ATI 0x9817
573 | #define GLX_AUX1_ATI 0x9818
574 | #define GLX_AUX2_ATI 0x9819
575 | #define GLX_AUX3_ATI 0x981A
576 | #define GLX_AUX4_ATI 0x981B
577 | #define GLX_AUX5_ATI 0x981C
578 | #define GLX_AUX6_ATI 0x981D
579 | #define GLX_AUX7_ATI 0x981E
580 | #define GLX_AUX8_ATI 0x981F
581 | #define GLX_AUX9_ATI 0x9820
582 | #define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821
583 | #define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822
584 |
585 | typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
586 | typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);
587 | typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
588 |
589 | #define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)
590 | #define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)
591 | #define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)
592 |
593 | #define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)
594 |
595 | #endif /* GLX_ATI_render_texture */
596 |
597 | /* --------------------------- GLX_EXT_buffer_age -------------------------- */
598 |
599 | #ifndef GLX_EXT_buffer_age
600 | #define GLX_EXT_buffer_age 1
601 |
602 | #define GLX_BACK_BUFFER_AGE_EXT 0x20F4
603 |
604 | #define GLXEW_EXT_buffer_age GLXEW_GET_VAR(__GLXEW_EXT_buffer_age)
605 |
606 | #endif /* GLX_EXT_buffer_age */
607 |
608 | /* ------------------- GLX_EXT_create_context_es2_profile ------------------ */
609 |
610 | #ifndef GLX_EXT_create_context_es2_profile
611 | #define GLX_EXT_create_context_es2_profile 1
612 |
613 | #define GLX_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
614 |
615 | #define GLXEW_EXT_create_context_es2_profile GLXEW_GET_VAR(__GLXEW_EXT_create_context_es2_profile)
616 |
617 | #endif /* GLX_EXT_create_context_es2_profile */
618 |
619 | /* ------------------- GLX_EXT_create_context_es_profile ------------------- */
620 |
621 | #ifndef GLX_EXT_create_context_es_profile
622 | #define GLX_EXT_create_context_es_profile 1
623 |
624 | #define GLX_CONTEXT_ES_PROFILE_BIT_EXT 0x00000004
625 |
626 | #define GLXEW_EXT_create_context_es_profile GLXEW_GET_VAR(__GLXEW_EXT_create_context_es_profile)
627 |
628 | #endif /* GLX_EXT_create_context_es_profile */
629 |
630 | /* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */
631 |
632 | #ifndef GLX_EXT_fbconfig_packed_float
633 | #define GLX_EXT_fbconfig_packed_float 1
634 |
635 | #define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
636 | #define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
637 |
638 | #define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)
639 |
640 | #endif /* GLX_EXT_fbconfig_packed_float */
641 |
642 | /* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */
643 |
644 | #ifndef GLX_EXT_framebuffer_sRGB
645 | #define GLX_EXT_framebuffer_sRGB 1
646 |
647 | #define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
648 |
649 | #define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)
650 |
651 | #endif /* GLX_EXT_framebuffer_sRGB */
652 |
653 | /* ------------------------- GLX_EXT_import_context ------------------------ */
654 |
655 | #ifndef GLX_EXT_import_context
656 | #define GLX_EXT_import_context 1
657 |
658 | #define GLX_SHARE_CONTEXT_EXT 0x800A
659 | #define GLX_VISUAL_ID_EXT 0x800B
660 | #define GLX_SCREEN_EXT 0x800C
661 |
662 | typedef XID GLXContextID;
663 |
664 | typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);
665 | typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
666 | typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);
667 | typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);
668 |
669 | #define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)
670 | #define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)
671 | #define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)
672 | #define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)
673 |
674 | #define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)
675 |
676 | #endif /* GLX_EXT_import_context */
677 |
678 | /* ---------------------------- GLX_EXT_libglvnd --------------------------- */
679 |
680 | #ifndef GLX_EXT_libglvnd
681 | #define GLX_EXT_libglvnd 1
682 |
683 | #define GLX_VENDOR_NAMES_EXT 0x20F6
684 |
685 | #define GLXEW_EXT_libglvnd GLXEW_GET_VAR(__GLXEW_EXT_libglvnd)
686 |
687 | #endif /* GLX_EXT_libglvnd */
688 |
689 | /* -------------------------- GLX_EXT_scene_marker ------------------------- */
690 |
691 | #ifndef GLX_EXT_scene_marker
692 | #define GLX_EXT_scene_marker 1
693 |
694 | #define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)
695 |
696 | #endif /* GLX_EXT_scene_marker */
697 |
698 | /* -------------------------- GLX_EXT_stereo_tree -------------------------- */
699 |
700 | #ifndef GLX_EXT_stereo_tree
701 | #define GLX_EXT_stereo_tree 1
702 |
703 | #define GLX_STEREO_NOTIFY_EXT 0x00000000
704 | #define GLX_STEREO_NOTIFY_MASK_EXT 0x00000001
705 | #define GLX_STEREO_TREE_EXT 0x20F5
706 |
707 | #define GLXEW_EXT_stereo_tree GLXEW_GET_VAR(__GLXEW_EXT_stereo_tree)
708 |
709 | #endif /* GLX_EXT_stereo_tree */
710 |
711 | /* -------------------------- GLX_EXT_swap_control ------------------------- */
712 |
713 | #ifndef GLX_EXT_swap_control
714 | #define GLX_EXT_swap_control 1
715 |
716 | #define GLX_SWAP_INTERVAL_EXT 0x20F1
717 | #define GLX_MAX_SWAP_INTERVAL_EXT 0x20F2
718 |
719 | typedef void ( * PFNGLXSWAPINTERVALEXTPROC) (Display* dpy, GLXDrawable drawable, int interval);
720 |
721 | #define glXSwapIntervalEXT GLXEW_GET_FUN(__glewXSwapIntervalEXT)
722 |
723 | #define GLXEW_EXT_swap_control GLXEW_GET_VAR(__GLXEW_EXT_swap_control)
724 |
725 | #endif /* GLX_EXT_swap_control */
726 |
727 | /* ----------------------- GLX_EXT_swap_control_tear ----------------------- */
728 |
729 | #ifndef GLX_EXT_swap_control_tear
730 | #define GLX_EXT_swap_control_tear 1
731 |
732 | #define GLX_LATE_SWAPS_TEAR_EXT 0x20F3
733 |
734 | #define GLXEW_EXT_swap_control_tear GLXEW_GET_VAR(__GLXEW_EXT_swap_control_tear)
735 |
736 | #endif /* GLX_EXT_swap_control_tear */
737 |
738 | /* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */
739 |
740 | #ifndef GLX_EXT_texture_from_pixmap
741 | #define GLX_EXT_texture_from_pixmap 1
742 |
743 | #define GLX_TEXTURE_1D_BIT_EXT 0x00000001
744 | #define GLX_TEXTURE_2D_BIT_EXT 0x00000002
745 | #define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
746 | #define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
747 | #define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
748 | #define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
749 | #define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
750 | #define GLX_Y_INVERTED_EXT 0x20D4
751 | #define GLX_TEXTURE_FORMAT_EXT 0x20D5
752 | #define GLX_TEXTURE_TARGET_EXT 0x20D6
753 | #define GLX_MIPMAP_TEXTURE_EXT 0x20D7
754 | #define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
755 | #define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
756 | #define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
757 | #define GLX_TEXTURE_1D_EXT 0x20DB
758 | #define GLX_TEXTURE_2D_EXT 0x20DC
759 | #define GLX_TEXTURE_RECTANGLE_EXT 0x20DD
760 | #define GLX_FRONT_LEFT_EXT 0x20DE
761 | #define GLX_FRONT_RIGHT_EXT 0x20DF
762 | #define GLX_BACK_LEFT_EXT 0x20E0
763 | #define GLX_BACK_RIGHT_EXT 0x20E1
764 | #define GLX_AUX0_EXT 0x20E2
765 | #define GLX_AUX1_EXT 0x20E3
766 | #define GLX_AUX2_EXT 0x20E4
767 | #define GLX_AUX3_EXT 0x20E5
768 | #define GLX_AUX4_EXT 0x20E6
769 | #define GLX_AUX5_EXT 0x20E7
770 | #define GLX_AUX6_EXT 0x20E8
771 | #define GLX_AUX7_EXT 0x20E9
772 | #define GLX_AUX8_EXT 0x20EA
773 | #define GLX_AUX9_EXT 0x20EB
774 |
775 | typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list);
776 | typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer);
777 |
778 | #define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT)
779 | #define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT)
780 |
781 | #define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pixmap)
782 |
783 | #endif /* GLX_EXT_texture_from_pixmap */
784 |
785 | /* -------------------------- GLX_EXT_visual_info -------------------------- */
786 |
787 | #ifndef GLX_EXT_visual_info
788 | #define GLX_EXT_visual_info 1
789 |
790 | #define GLX_X_VISUAL_TYPE_EXT 0x22
791 | #define GLX_TRANSPARENT_TYPE_EXT 0x23
792 | #define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
793 | #define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
794 | #define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
795 | #define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
796 | #define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
797 | #define GLX_NONE_EXT 0x8000
798 | #define GLX_TRUE_COLOR_EXT 0x8002
799 | #define GLX_DIRECT_COLOR_EXT 0x8003
800 | #define GLX_PSEUDO_COLOR_EXT 0x8004
801 | #define GLX_STATIC_COLOR_EXT 0x8005
802 | #define GLX_GRAY_SCALE_EXT 0x8006
803 | #define GLX_STATIC_GRAY_EXT 0x8007
804 | #define GLX_TRANSPARENT_RGB_EXT 0x8008
805 | #define GLX_TRANSPARENT_INDEX_EXT 0x8009
806 |
807 | #define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)
808 |
809 | #endif /* GLX_EXT_visual_info */
810 |
811 | /* ------------------------- GLX_EXT_visual_rating ------------------------- */
812 |
813 | #ifndef GLX_EXT_visual_rating
814 | #define GLX_EXT_visual_rating 1
815 |
816 | #define GLX_VISUAL_CAVEAT_EXT 0x20
817 | #define GLX_SLOW_VISUAL_EXT 0x8001
818 | #define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
819 |
820 | #define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)
821 |
822 | #endif /* GLX_EXT_visual_rating */
823 |
824 | /* -------------------------- GLX_INTEL_swap_event ------------------------- */
825 |
826 | #ifndef GLX_INTEL_swap_event
827 | #define GLX_INTEL_swap_event 1
828 |
829 | #define GLX_EXCHANGE_COMPLETE_INTEL 0x8180
830 | #define GLX_COPY_COMPLETE_INTEL 0x8181
831 | #define GLX_FLIP_COMPLETE_INTEL 0x8182
832 | #define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
833 |
834 | #define GLXEW_INTEL_swap_event GLXEW_GET_VAR(__GLXEW_INTEL_swap_event)
835 |
836 | #endif /* GLX_INTEL_swap_event */
837 |
838 | /* -------------------------- GLX_MESA_agp_offset -------------------------- */
839 |
840 | #ifndef GLX_MESA_agp_offset
841 | #define GLX_MESA_agp_offset 1
842 |
843 | typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);
844 |
845 | #define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)
846 |
847 | #define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)
848 |
849 | #endif /* GLX_MESA_agp_offset */
850 |
851 | /* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */
852 |
853 | #ifndef GLX_MESA_copy_sub_buffer
854 | #define GLX_MESA_copy_sub_buffer 1
855 |
856 | typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);
857 |
858 | #define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)
859 |
860 | #define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)
861 |
862 | #endif /* GLX_MESA_copy_sub_buffer */
863 |
864 | /* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */
865 |
866 | #ifndef GLX_MESA_pixmap_colormap
867 | #define GLX_MESA_pixmap_colormap 1
868 |
869 | typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
870 |
871 | #define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)
872 |
873 | #define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)
874 |
875 | #endif /* GLX_MESA_pixmap_colormap */
876 |
877 | /* ------------------------ GLX_MESA_query_renderer ------------------------ */
878 |
879 | #ifndef GLX_MESA_query_renderer
880 | #define GLX_MESA_query_renderer 1
881 |
882 | #define GLX_RENDERER_VENDOR_ID_MESA 0x8183
883 | #define GLX_RENDERER_DEVICE_ID_MESA 0x8184
884 | #define GLX_RENDERER_VERSION_MESA 0x8185
885 | #define GLX_RENDERER_ACCELERATED_MESA 0x8186
886 | #define GLX_RENDERER_VIDEO_MEMORY_MESA 0x8187
887 | #define GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA 0x8188
888 | #define GLX_RENDERER_PREFERRED_PROFILE_MESA 0x8189
889 | #define GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA 0x818A
890 | #define GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA 0x818B
891 | #define GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA 0x818C
892 | #define GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA 0x818D
893 | #define GLX_RENDERER_ID_MESA 0x818E
894 |
895 | typedef Bool ( * PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC) (int attribute, unsigned int* value);
896 | typedef const char* ( * PFNGLXQUERYCURRENTRENDERERSTRINGMESAPROC) (int attribute);
897 | typedef Bool ( * PFNGLXQUERYRENDERERINTEGERMESAPROC) (Display* dpy, int screen, int renderer, int attribute, unsigned int *value);
898 | typedef const char* ( * PFNGLXQUERYRENDERERSTRINGMESAPROC) (Display *dpy, int screen, int renderer, int attribute);
899 |
900 | #define glXQueryCurrentRendererIntegerMESA GLXEW_GET_FUN(__glewXQueryCurrentRendererIntegerMESA)
901 | #define glXQueryCurrentRendererStringMESA GLXEW_GET_FUN(__glewXQueryCurrentRendererStringMESA)
902 | #define glXQueryRendererIntegerMESA GLXEW_GET_FUN(__glewXQueryRendererIntegerMESA)
903 | #define glXQueryRendererStringMESA GLXEW_GET_FUN(__glewXQueryRendererStringMESA)
904 |
905 | #define GLXEW_MESA_query_renderer GLXEW_GET_VAR(__GLXEW_MESA_query_renderer)
906 |
907 | #endif /* GLX_MESA_query_renderer */
908 |
909 | /* ------------------------ GLX_MESA_release_buffers ----------------------- */
910 |
911 | #ifndef GLX_MESA_release_buffers
912 | #define GLX_MESA_release_buffers 1
913 |
914 | typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);
915 |
916 | #define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)
917 |
918 | #define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)
919 |
920 | #endif /* GLX_MESA_release_buffers */
921 |
922 | /* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */
923 |
924 | #ifndef GLX_MESA_set_3dfx_mode
925 | #define GLX_MESA_set_3dfx_mode 1
926 |
927 | #define GLX_3DFX_WINDOW_MODE_MESA 0x1
928 | #define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
929 |
930 | typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
931 |
932 | #define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)
933 |
934 | #define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)
935 |
936 | #endif /* GLX_MESA_set_3dfx_mode */
937 |
938 | /* ------------------------- GLX_MESA_swap_control ------------------------- */
939 |
940 | #ifndef GLX_MESA_swap_control
941 | #define GLX_MESA_swap_control 1
942 |
943 | typedef int ( * PFNGLXGETSWAPINTERVALMESAPROC) (void);
944 | typedef int ( * PFNGLXSWAPINTERVALMESAPROC) (unsigned int interval);
945 |
946 | #define glXGetSwapIntervalMESA GLXEW_GET_FUN(__glewXGetSwapIntervalMESA)
947 | #define glXSwapIntervalMESA GLXEW_GET_FUN(__glewXSwapIntervalMESA)
948 |
949 | #define GLXEW_MESA_swap_control GLXEW_GET_VAR(__GLXEW_MESA_swap_control)
950 |
951 | #endif /* GLX_MESA_swap_control */
952 |
953 | /* --------------------------- GLX_NV_copy_buffer -------------------------- */
954 |
955 | #ifndef GLX_NV_copy_buffer
956 | #define GLX_NV_copy_buffer 1
957 |
958 | typedef void ( * PFNGLXCOPYBUFFERSUBDATANVPROC) (Display* dpy, GLXContext readCtx, GLXContext writeCtx, GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
959 | typedef void ( * PFNGLXNAMEDCOPYBUFFERSUBDATANVPROC) (Display* dpy, GLXContext readCtx, GLXContext writeCtx, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
960 |
961 | #define glXCopyBufferSubDataNV GLXEW_GET_FUN(__glewXCopyBufferSubDataNV)
962 | #define glXNamedCopyBufferSubDataNV GLXEW_GET_FUN(__glewXNamedCopyBufferSubDataNV)
963 |
964 | #define GLXEW_NV_copy_buffer GLXEW_GET_VAR(__GLXEW_NV_copy_buffer)
965 |
966 | #endif /* GLX_NV_copy_buffer */
967 |
968 | /* --------------------------- GLX_NV_copy_image --------------------------- */
969 |
970 | #ifndef GLX_NV_copy_image
971 | #define GLX_NV_copy_image 1
972 |
973 | typedef void ( * PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
974 |
975 | #define glXCopyImageSubDataNV GLXEW_GET_FUN(__glewXCopyImageSubDataNV)
976 |
977 | #define GLXEW_NV_copy_image GLXEW_GET_VAR(__GLXEW_NV_copy_image)
978 |
979 | #endif /* GLX_NV_copy_image */
980 |
981 | /* ------------------------ GLX_NV_delay_before_swap ----------------------- */
982 |
983 | #ifndef GLX_NV_delay_before_swap
984 | #define GLX_NV_delay_before_swap 1
985 |
986 | typedef Bool ( * PFNGLXDELAYBEFORESWAPNVPROC) (Display* dpy, GLXDrawable drawable, GLfloat seconds);
987 |
988 | #define glXDelayBeforeSwapNV GLXEW_GET_FUN(__glewXDelayBeforeSwapNV)
989 |
990 | #define GLXEW_NV_delay_before_swap GLXEW_GET_VAR(__GLXEW_NV_delay_before_swap)
991 |
992 | #endif /* GLX_NV_delay_before_swap */
993 |
994 | /* -------------------------- GLX_NV_float_buffer -------------------------- */
995 |
996 | #ifndef GLX_NV_float_buffer
997 | #define GLX_NV_float_buffer 1
998 |
999 | #define GLX_FLOAT_COMPONENTS_NV 0x20B0
1000 |
1001 | #define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)
1002 |
1003 | #endif /* GLX_NV_float_buffer */
1004 |
1005 | /* ---------------------- GLX_NV_multisample_coverage ---------------------- */
1006 |
1007 | #ifndef GLX_NV_multisample_coverage
1008 | #define GLX_NV_multisample_coverage 1
1009 |
1010 | #define GLX_COLOR_SAMPLES_NV 0x20B3
1011 | #define GLX_COVERAGE_SAMPLES_NV 100001
1012 |
1013 | #define GLXEW_NV_multisample_coverage GLXEW_GET_VAR(__GLXEW_NV_multisample_coverage)
1014 |
1015 | #endif /* GLX_NV_multisample_coverage */
1016 |
1017 | /* -------------------------- GLX_NV_present_video ------------------------- */
1018 |
1019 | #ifndef GLX_NV_present_video
1020 | #define GLX_NV_present_video 1
1021 |
1022 | #define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
1023 |
1024 | typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display* dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
1025 | typedef unsigned int* ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
1026 |
1027 | #define glXBindVideoDeviceNV GLXEW_GET_FUN(__glewXBindVideoDeviceNV)
1028 | #define glXEnumerateVideoDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoDevicesNV)
1029 |
1030 | #define GLXEW_NV_present_video GLXEW_GET_VAR(__GLXEW_NV_present_video)
1031 |
1032 | #endif /* GLX_NV_present_video */
1033 |
1034 | /* ------------------ GLX_NV_robustness_video_memory_purge ----------------- */
1035 |
1036 | #ifndef GLX_NV_robustness_video_memory_purge
1037 | #define GLX_NV_robustness_video_memory_purge 1
1038 |
1039 | #define GLX_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV 0x20F7
1040 |
1041 | #define GLXEW_NV_robustness_video_memory_purge GLXEW_GET_VAR(__GLXEW_NV_robustness_video_memory_purge)
1042 |
1043 | #endif /* GLX_NV_robustness_video_memory_purge */
1044 |
1045 | /* --------------------------- GLX_NV_swap_group --------------------------- */
1046 |
1047 | #ifndef GLX_NV_swap_group
1048 | #define GLX_NV_swap_group 1
1049 |
1050 | typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint group, GLuint barrier);
1051 | typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint group);
1052 | typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display* dpy, int screen, GLuint *count);
1053 | typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display* dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
1054 | typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
1055 | typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen);
1056 |
1057 | #define glXBindSwapBarrierNV GLXEW_GET_FUN(__glewXBindSwapBarrierNV)
1058 | #define glXJoinSwapGroupNV GLXEW_GET_FUN(__glewXJoinSwapGroupNV)
1059 | #define glXQueryFrameCountNV GLXEW_GET_FUN(__glewXQueryFrameCountNV)
1060 | #define glXQueryMaxSwapGroupsNV GLXEW_GET_FUN(__glewXQueryMaxSwapGroupsNV)
1061 | #define glXQuerySwapGroupNV GLXEW_GET_FUN(__glewXQuerySwapGroupNV)
1062 | #define glXResetFrameCountNV GLXEW_GET_FUN(__glewXResetFrameCountNV)
1063 |
1064 | #define GLXEW_NV_swap_group GLXEW_GET_VAR(__GLXEW_NV_swap_group)
1065 |
1066 | #endif /* GLX_NV_swap_group */
1067 |
1068 | /* ----------------------- GLX_NV_vertex_array_range ----------------------- */
1069 |
1070 | #ifndef GLX_NV_vertex_array_range
1071 | #define GLX_NV_vertex_array_range 1
1072 |
1073 | typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
1074 | typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);
1075 |
1076 | #define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)
1077 | #define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)
1078 |
1079 | #define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)
1080 |
1081 | #endif /* GLX_NV_vertex_array_range */
1082 |
1083 | /* -------------------------- GLX_NV_video_capture ------------------------- */
1084 |
1085 | #ifndef GLX_NV_video_capture
1086 | #define GLX_NV_video_capture 1
1087 |
1088 | #define GLX_DEVICE_ID_NV 0x20CD
1089 | #define GLX_UNIQUE_ID_NV 0x20CE
1090 | #define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
1091 |
1092 | typedef XID GLXVideoCaptureDeviceNV;
1093 |
1094 | typedef int ( * PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display* dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
1095 | typedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display* dpy, int screen, int *nelements);
1096 | typedef void ( * PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display* dpy, GLXVideoCaptureDeviceNV device);
1097 | typedef int ( * PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display* dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
1098 | typedef void ( * PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display* dpy, GLXVideoCaptureDeviceNV device);
1099 |
1100 | #define glXBindVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXBindVideoCaptureDeviceNV)
1101 | #define glXEnumerateVideoCaptureDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoCaptureDevicesNV)
1102 | #define glXLockVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXLockVideoCaptureDeviceNV)
1103 | #define glXQueryVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXQueryVideoCaptureDeviceNV)
1104 | #define glXReleaseVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoCaptureDeviceNV)
1105 |
1106 | #define GLXEW_NV_video_capture GLXEW_GET_VAR(__GLXEW_NV_video_capture)
1107 |
1108 | #endif /* GLX_NV_video_capture */
1109 |
1110 | /* ---------------------------- GLX_NV_video_out --------------------------- */
1111 |
1112 | #ifndef GLX_NV_video_out
1113 | #define GLX_NV_video_out 1
1114 |
1115 | #define GLX_VIDEO_OUT_COLOR_NV 0x20C3
1116 | #define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
1117 | #define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
1118 | #define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
1119 | #define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
1120 | #define GLX_VIDEO_OUT_FRAME_NV 0x20C8
1121 | #define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
1122 | #define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
1123 | #define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
1124 | #define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
1125 |
1126 | typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display* dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
1127 | typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display* dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
1128 | typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
1129 | typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice);
1130 | typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display* dpy, GLXPbuffer pbuf);
1131 | typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display* dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
1132 |
1133 | #define glXBindVideoImageNV GLXEW_GET_FUN(__glewXBindVideoImageNV)
1134 | #define glXGetVideoDeviceNV GLXEW_GET_FUN(__glewXGetVideoDeviceNV)
1135 | #define glXGetVideoInfoNV GLXEW_GET_FUN(__glewXGetVideoInfoNV)
1136 | #define glXReleaseVideoDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoDeviceNV)
1137 | #define glXReleaseVideoImageNV GLXEW_GET_FUN(__glewXReleaseVideoImageNV)
1138 | #define glXSendPbufferToVideoNV GLXEW_GET_FUN(__glewXSendPbufferToVideoNV)
1139 |
1140 | #define GLXEW_NV_video_out GLXEW_GET_VAR(__GLXEW_NV_video_out)
1141 |
1142 | #endif /* GLX_NV_video_out */
1143 |
1144 | /* -------------------------- GLX_OML_swap_method -------------------------- */
1145 |
1146 | #ifndef GLX_OML_swap_method
1147 | #define GLX_OML_swap_method 1
1148 |
1149 | #define GLX_SWAP_METHOD_OML 0x8060
1150 | #define GLX_SWAP_EXCHANGE_OML 0x8061
1151 | #define GLX_SWAP_COPY_OML 0x8062
1152 | #define GLX_SWAP_UNDEFINED_OML 0x8063
1153 |
1154 | #define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)
1155 |
1156 | #endif /* GLX_OML_swap_method */
1157 |
1158 | /* -------------------------- GLX_OML_sync_control ------------------------- */
1159 |
1160 | #ifndef GLX_OML_sync_control
1161 | #define GLX_OML_sync_control 1
1162 |
1163 | typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);
1164 | typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);
1165 | typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
1166 | typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* msc, int64_t* sbc);
1167 | typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);
1168 |
1169 | #define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)
1170 | #define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)
1171 | #define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)
1172 | #define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)
1173 | #define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)
1174 |
1175 | #define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)
1176 |
1177 | #endif /* GLX_OML_sync_control */
1178 |
1179 | /* ------------------------ GLX_SGIS_blended_overlay ----------------------- */
1180 |
1181 | #ifndef GLX_SGIS_blended_overlay
1182 | #define GLX_SGIS_blended_overlay 1
1183 |
1184 | #define GLX_BLENDED_RGBA_SGIS 0x8025
1185 |
1186 | #define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)
1187 |
1188 | #endif /* GLX_SGIS_blended_overlay */
1189 |
1190 | /* -------------------------- GLX_SGIS_color_range ------------------------- */
1191 |
1192 | #ifndef GLX_SGIS_color_range
1193 | #define GLX_SGIS_color_range 1
1194 |
1195 | #define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)
1196 |
1197 | #endif /* GLX_SGIS_color_range */
1198 |
1199 | /* -------------------------- GLX_SGIS_multisample ------------------------- */
1200 |
1201 | #ifndef GLX_SGIS_multisample
1202 | #define GLX_SGIS_multisample 1
1203 |
1204 | #define GLX_SAMPLE_BUFFERS_SGIS 100000
1205 | #define GLX_SAMPLES_SGIS 100001
1206 |
1207 | #define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)
1208 |
1209 | #endif /* GLX_SGIS_multisample */
1210 |
1211 | /* ---------------------- GLX_SGIS_shared_multisample ---------------------- */
1212 |
1213 | #ifndef GLX_SGIS_shared_multisample
1214 | #define GLX_SGIS_shared_multisample 1
1215 |
1216 | #define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
1217 | #define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
1218 |
1219 | #define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)
1220 |
1221 | #endif /* GLX_SGIS_shared_multisample */
1222 |
1223 | /* --------------------------- GLX_SGIX_fbconfig --------------------------- */
1224 |
1225 | #ifndef GLX_SGIX_fbconfig
1226 | #define GLX_SGIX_fbconfig 1
1227 |
1228 | #define GLX_RGBA_BIT_SGIX 0x00000001
1229 | #define GLX_WINDOW_BIT_SGIX 0x00000001
1230 | #define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
1231 | #define GLX_PIXMAP_BIT_SGIX 0x00000002
1232 | #define GLX_SCREEN_EXT 0x800C
1233 | #define GLX_DRAWABLE_TYPE_SGIX 0x8010
1234 | #define GLX_RENDER_TYPE_SGIX 0x8011
1235 | #define GLX_X_RENDERABLE_SGIX 0x8012
1236 | #define GLX_FBCONFIG_ID_SGIX 0x8013
1237 | #define GLX_RGBA_TYPE_SGIX 0x8014
1238 | #define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
1239 |
1240 | typedef XID GLXFBConfigIDSGIX;
1241 | typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
1242 |
1243 | typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
1244 | typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
1245 | typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);
1246 | typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);
1247 | typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);
1248 | typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);
1249 |
1250 | #define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)
1251 | #define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)
1252 | #define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)
1253 | #define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)
1254 | #define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)
1255 | #define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)
1256 |
1257 | #define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)
1258 |
1259 | #endif /* GLX_SGIX_fbconfig */
1260 |
1261 | /* --------------------------- GLX_SGIX_hyperpipe -------------------------- */
1262 |
1263 | #ifndef GLX_SGIX_hyperpipe
1264 | #define GLX_SGIX_hyperpipe 1
1265 |
1266 | #define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
1267 | #define GLX_PIPE_RECT_SGIX 0x00000001
1268 | #define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
1269 | #define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
1270 | #define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
1271 | #define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
1272 | #define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
1273 | #define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
1274 | #define GLX_BAD_HYPERPIPE_SGIX 92
1275 | #define GLX_HYPERPIPE_ID_SGIX 0x8030
1276 |
1277 | typedef struct {
1278 | char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
1279 | int networkId;
1280 | } GLXHyperpipeNetworkSGIX;
1281 | typedef struct {
1282 | char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
1283 | int XOrigin;
1284 | int YOrigin;
1285 | int maxHeight;
1286 | int maxWidth;
1287 | } GLXPipeRectLimits;
1288 | typedef struct {
1289 | char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
1290 | int channel;
1291 | unsigned int participationType;
1292 | int timeSlice;
1293 | } GLXHyperpipeConfigSGIX;
1294 | typedef struct {
1295 | char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
1296 | int srcXOrigin;
1297 | int srcYOrigin;
1298 | int srcWidth;
1299 | int srcHeight;
1300 | int destXOrigin;
1301 | int destYOrigin;
1302 | int destWidth;
1303 | int destHeight;
1304 | } GLXPipeRect;
1305 |
1306 | typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
1307 | typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
1308 | typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
1309 | typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
1310 | typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
1311 | typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
1312 | typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
1313 | typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
1314 |
1315 | #define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)
1316 | #define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)
1317 | #define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)
1318 | #define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)
1319 | #define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)
1320 | #define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)
1321 | #define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)
1322 | #define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)
1323 |
1324 | #define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)
1325 |
1326 | #endif /* GLX_SGIX_hyperpipe */
1327 |
1328 | /* ---------------------------- GLX_SGIX_pbuffer --------------------------- */
1329 |
1330 | #ifndef GLX_SGIX_pbuffer
1331 | #define GLX_SGIX_pbuffer 1
1332 |
1333 | #define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
1334 | #define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
1335 | #define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
1336 | #define GLX_PBUFFER_BIT_SGIX 0x00000004
1337 | #define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
1338 | #define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
1339 | #define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
1340 | #define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
1341 | #define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
1342 | #define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
1343 | #define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
1344 | #define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
1345 | #define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
1346 | #define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
1347 | #define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
1348 | #define GLX_PRESERVED_CONTENTS_SGIX 0x801B
1349 | #define GLX_LARGEST_PBUFFER_SGIX 0x801C
1350 | #define GLX_WIDTH_SGIX 0x801D
1351 | #define GLX_HEIGHT_SGIX 0x801E
1352 | #define GLX_EVENT_MASK_SGIX 0x801F
1353 | #define GLX_DAMAGED_SGIX 0x8020
1354 | #define GLX_SAVED_SGIX 0x8021
1355 | #define GLX_WINDOW_SGIX 0x8022
1356 | #define GLX_PBUFFER_SGIX 0x8023
1357 | #define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
1358 |
1359 | typedef XID GLXPbufferSGIX;
1360 | typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX;
1361 |
1362 | typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);
1363 | typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);
1364 | typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);
1365 | typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);
1366 | typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);
1367 |
1368 | #define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)
1369 | #define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)
1370 | #define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)
1371 | #define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)
1372 | #define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)
1373 |
1374 | #define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)
1375 |
1376 | #endif /* GLX_SGIX_pbuffer */
1377 |
1378 | /* ------------------------- GLX_SGIX_swap_barrier ------------------------- */
1379 |
1380 | #ifndef GLX_SGIX_swap_barrier
1381 | #define GLX_SGIX_swap_barrier 1
1382 |
1383 | typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
1384 | typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
1385 |
1386 | #define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)
1387 | #define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)
1388 |
1389 | #define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)
1390 |
1391 | #endif /* GLX_SGIX_swap_barrier */
1392 |
1393 | /* -------------------------- GLX_SGIX_swap_group -------------------------- */
1394 |
1395 | #ifndef GLX_SGIX_swap_group
1396 | #define GLX_SGIX_swap_group 1
1397 |
1398 | typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
1399 |
1400 | #define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)
1401 |
1402 | #define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)
1403 |
1404 | #endif /* GLX_SGIX_swap_group */
1405 |
1406 | /* ------------------------- GLX_SGIX_video_resize ------------------------- */
1407 |
1408 | #ifndef GLX_SGIX_video_resize
1409 | #define GLX_SGIX_video_resize 1
1410 |
1411 | #define GLX_SYNC_FRAME_SGIX 0x00000000
1412 | #define GLX_SYNC_SWAP_SGIX 0x00000001
1413 |
1414 | typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);
1415 | typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);
1416 | typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);
1417 | typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);
1418 | typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
1419 |
1420 | #define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)
1421 | #define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)
1422 | #define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)
1423 | #define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)
1424 | #define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)
1425 |
1426 | #define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)
1427 |
1428 | #endif /* GLX_SGIX_video_resize */
1429 |
1430 | /* ---------------------- GLX_SGIX_visual_select_group --------------------- */
1431 |
1432 | #ifndef GLX_SGIX_visual_select_group
1433 | #define GLX_SGIX_visual_select_group 1
1434 |
1435 | #define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
1436 |
1437 | #define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)
1438 |
1439 | #endif /* GLX_SGIX_visual_select_group */
1440 |
1441 | /* ---------------------------- GLX_SGI_cushion ---------------------------- */
1442 |
1443 | #ifndef GLX_SGI_cushion
1444 | #define GLX_SGI_cushion 1
1445 |
1446 | typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);
1447 |
1448 | #define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)
1449 |
1450 | #define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)
1451 |
1452 | #endif /* GLX_SGI_cushion */
1453 |
1454 | /* ----------------------- GLX_SGI_make_current_read ----------------------- */
1455 |
1456 | #ifndef GLX_SGI_make_current_read
1457 | #define GLX_SGI_make_current_read 1
1458 |
1459 | typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
1460 | typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
1461 |
1462 | #define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)
1463 | #define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)
1464 |
1465 | #define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)
1466 |
1467 | #endif /* GLX_SGI_make_current_read */
1468 |
1469 | /* -------------------------- GLX_SGI_swap_control ------------------------- */
1470 |
1471 | #ifndef GLX_SGI_swap_control
1472 | #define GLX_SGI_swap_control 1
1473 |
1474 | typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
1475 |
1476 | #define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)
1477 |
1478 | #define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)
1479 |
1480 | #endif /* GLX_SGI_swap_control */
1481 |
1482 | /* --------------------------- GLX_SGI_video_sync -------------------------- */
1483 |
1484 | #ifndef GLX_SGI_video_sync
1485 | #define GLX_SGI_video_sync 1
1486 |
1487 | typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int* count);
1488 | typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);
1489 |
1490 | #define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)
1491 | #define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)
1492 |
1493 | #define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)
1494 |
1495 | #endif /* GLX_SGI_video_sync */
1496 |
1497 | /* --------------------- GLX_SUN_get_transparent_index --------------------- */
1498 |
1499 | #ifndef GLX_SUN_get_transparent_index
1500 | #define GLX_SUN_get_transparent_index 1
1501 |
1502 | typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);
1503 |
1504 | #define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)
1505 |
1506 | #define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)
1507 |
1508 | #endif /* GLX_SUN_get_transparent_index */
1509 |
1510 | /* -------------------------- GLX_SUN_video_resize ------------------------- */
1511 |
1512 | #ifndef GLX_SUN_video_resize
1513 | #define GLX_SUN_video_resize 1
1514 |
1515 | #define GLX_VIDEO_RESIZE_SUN 0x8171
1516 | #define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
1517 |
1518 | typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);
1519 | typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);
1520 |
1521 | #define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)
1522 | #define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)
1523 |
1524 | #define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)
1525 |
1526 | #endif /* GLX_SUN_video_resize */
1527 |
1528 | /* ------------------------------------------------------------------------- */
1529 |
1530 | #define GLXEW_FUN_EXPORT GLEW_FUN_EXPORT
1531 | #define GLXEW_VAR_EXPORT GLEW_VAR_EXPORT
1532 |
1533 | GLXEW_FUN_EXPORT PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;
1534 |
1535 | GLXEW_FUN_EXPORT PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;
1536 | GLXEW_FUN_EXPORT PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;
1537 | GLXEW_FUN_EXPORT PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;
1538 | GLXEW_FUN_EXPORT PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;
1539 | GLXEW_FUN_EXPORT PFNGLXCREATEWINDOWPROC __glewXCreateWindow;
1540 | GLXEW_FUN_EXPORT PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;
1541 | GLXEW_FUN_EXPORT PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;
1542 | GLXEW_FUN_EXPORT PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;
1543 | GLXEW_FUN_EXPORT PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;
1544 | GLXEW_FUN_EXPORT PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;
1545 | GLXEW_FUN_EXPORT PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;
1546 | GLXEW_FUN_EXPORT PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;
1547 | GLXEW_FUN_EXPORT PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;
1548 | GLXEW_FUN_EXPORT PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;
1549 | GLXEW_FUN_EXPORT PFNGLXQUERYCONTEXTPROC __glewXQueryContext;
1550 | GLXEW_FUN_EXPORT PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;
1551 | GLXEW_FUN_EXPORT PFNGLXSELECTEVENTPROC __glewXSelectEvent;
1552 |
1553 | GLXEW_FUN_EXPORT PFNGLXBLITCONTEXTFRAMEBUFFERAMDPROC __glewXBlitContextFramebufferAMD;
1554 | GLXEW_FUN_EXPORT PFNGLXCREATEASSOCIATEDCONTEXTAMDPROC __glewXCreateAssociatedContextAMD;
1555 | GLXEW_FUN_EXPORT PFNGLXCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __glewXCreateAssociatedContextAttribsAMD;
1556 | GLXEW_FUN_EXPORT PFNGLXDELETEASSOCIATEDCONTEXTAMDPROC __glewXDeleteAssociatedContextAMD;
1557 | GLXEW_FUN_EXPORT PFNGLXGETCONTEXTGPUIDAMDPROC __glewXGetContextGPUIDAMD;
1558 | GLXEW_FUN_EXPORT PFNGLXGETCURRENTASSOCIATEDCONTEXTAMDPROC __glewXGetCurrentAssociatedContextAMD;
1559 | GLXEW_FUN_EXPORT PFNGLXGETGPUIDSAMDPROC __glewXGetGPUIDsAMD;
1560 | GLXEW_FUN_EXPORT PFNGLXGETGPUINFOAMDPROC __glewXGetGPUInfoAMD;
1561 | GLXEW_FUN_EXPORT PFNGLXMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __glewXMakeAssociatedContextCurrentAMD;
1562 |
1563 | GLXEW_FUN_EXPORT PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB;
1564 |
1565 | GLXEW_FUN_EXPORT PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;
1566 | GLXEW_FUN_EXPORT PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;
1567 | GLXEW_FUN_EXPORT PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;
1568 |
1569 | GLXEW_FUN_EXPORT PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;
1570 | GLXEW_FUN_EXPORT PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;
1571 | GLXEW_FUN_EXPORT PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;
1572 | GLXEW_FUN_EXPORT PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;
1573 |
1574 | GLXEW_FUN_EXPORT PFNGLXSWAPINTERVALEXTPROC __glewXSwapIntervalEXT;
1575 |
1576 | GLXEW_FUN_EXPORT PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT;
1577 | GLXEW_FUN_EXPORT PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT;
1578 |
1579 | GLXEW_FUN_EXPORT PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;
1580 |
1581 | GLXEW_FUN_EXPORT PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;
1582 |
1583 | GLXEW_FUN_EXPORT PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;
1584 |
1585 | GLXEW_FUN_EXPORT PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC __glewXQueryCurrentRendererIntegerMESA;
1586 | GLXEW_FUN_EXPORT PFNGLXQUERYCURRENTRENDERERSTRINGMESAPROC __glewXQueryCurrentRendererStringMESA;
1587 | GLXEW_FUN_EXPORT PFNGLXQUERYRENDERERINTEGERMESAPROC __glewXQueryRendererIntegerMESA;
1588 | GLXEW_FUN_EXPORT PFNGLXQUERYRENDERERSTRINGMESAPROC __glewXQueryRendererStringMESA;
1589 |
1590 | GLXEW_FUN_EXPORT PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;
1591 |
1592 | GLXEW_FUN_EXPORT PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;
1593 |
1594 | GLXEW_FUN_EXPORT PFNGLXGETSWAPINTERVALMESAPROC __glewXGetSwapIntervalMESA;
1595 | GLXEW_FUN_EXPORT PFNGLXSWAPINTERVALMESAPROC __glewXSwapIntervalMESA;
1596 |
1597 | GLXEW_FUN_EXPORT PFNGLXCOPYBUFFERSUBDATANVPROC __glewXCopyBufferSubDataNV;
1598 | GLXEW_FUN_EXPORT PFNGLXNAMEDCOPYBUFFERSUBDATANVPROC __glewXNamedCopyBufferSubDataNV;
1599 |
1600 | GLXEW_FUN_EXPORT PFNGLXCOPYIMAGESUBDATANVPROC __glewXCopyImageSubDataNV;
1601 |
1602 | GLXEW_FUN_EXPORT PFNGLXDELAYBEFORESWAPNVPROC __glewXDelayBeforeSwapNV;
1603 |
1604 | GLXEW_FUN_EXPORT PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV;
1605 | GLXEW_FUN_EXPORT PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV;
1606 |
1607 | GLXEW_FUN_EXPORT PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV;
1608 | GLXEW_FUN_EXPORT PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV;
1609 | GLXEW_FUN_EXPORT PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV;
1610 | GLXEW_FUN_EXPORT PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV;
1611 | GLXEW_FUN_EXPORT PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV;
1612 | GLXEW_FUN_EXPORT PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV;
1613 |
1614 | GLXEW_FUN_EXPORT PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;
1615 | GLXEW_FUN_EXPORT PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;
1616 |
1617 | GLXEW_FUN_EXPORT PFNGLXBINDVIDEOCAPTUREDEVICENVPROC __glewXBindVideoCaptureDeviceNV;
1618 | GLXEW_FUN_EXPORT PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC __glewXEnumerateVideoCaptureDevicesNV;
1619 | GLXEW_FUN_EXPORT PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC __glewXLockVideoCaptureDeviceNV;
1620 | GLXEW_FUN_EXPORT PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC __glewXQueryVideoCaptureDeviceNV;
1621 | GLXEW_FUN_EXPORT PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC __glewXReleaseVideoCaptureDeviceNV;
1622 |
1623 | GLXEW_FUN_EXPORT PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV;
1624 | GLXEW_FUN_EXPORT PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV;
1625 | GLXEW_FUN_EXPORT PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV;
1626 | GLXEW_FUN_EXPORT PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV;
1627 | GLXEW_FUN_EXPORT PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV;
1628 | GLXEW_FUN_EXPORT PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV;
1629 |
1630 | GLXEW_FUN_EXPORT PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;
1631 | GLXEW_FUN_EXPORT PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;
1632 | GLXEW_FUN_EXPORT PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;
1633 | GLXEW_FUN_EXPORT PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;
1634 | GLXEW_FUN_EXPORT PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;
1635 |
1636 | GLXEW_FUN_EXPORT PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;
1637 | GLXEW_FUN_EXPORT PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;
1638 | GLXEW_FUN_EXPORT PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;
1639 | GLXEW_FUN_EXPORT PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;
1640 | GLXEW_FUN_EXPORT PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;
1641 | GLXEW_FUN_EXPORT PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;
1642 |
1643 | GLXEW_FUN_EXPORT PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;
1644 | GLXEW_FUN_EXPORT PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;
1645 | GLXEW_FUN_EXPORT PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;
1646 | GLXEW_FUN_EXPORT PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;
1647 | GLXEW_FUN_EXPORT PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;
1648 | GLXEW_FUN_EXPORT PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;
1649 | GLXEW_FUN_EXPORT PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;
1650 | GLXEW_FUN_EXPORT PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;
1651 |
1652 | GLXEW_FUN_EXPORT PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;
1653 | GLXEW_FUN_EXPORT PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;
1654 | GLXEW_FUN_EXPORT PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;
1655 | GLXEW_FUN_EXPORT PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;
1656 | GLXEW_FUN_EXPORT PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;
1657 |
1658 | GLXEW_FUN_EXPORT PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;
1659 | GLXEW_FUN_EXPORT PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;
1660 |
1661 | GLXEW_FUN_EXPORT PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;
1662 |
1663 | GLXEW_FUN_EXPORT PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;
1664 | GLXEW_FUN_EXPORT PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;
1665 | GLXEW_FUN_EXPORT PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;
1666 | GLXEW_FUN_EXPORT PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;
1667 | GLXEW_FUN_EXPORT PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;
1668 |
1669 | GLXEW_FUN_EXPORT PFNGLXCUSHIONSGIPROC __glewXCushionSGI;
1670 |
1671 | GLXEW_FUN_EXPORT PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;
1672 | GLXEW_FUN_EXPORT PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;
1673 |
1674 | GLXEW_FUN_EXPORT PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;
1675 |
1676 | GLXEW_FUN_EXPORT PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;
1677 | GLXEW_FUN_EXPORT PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;
1678 |
1679 | GLXEW_FUN_EXPORT PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;
1680 |
1681 | GLXEW_FUN_EXPORT PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;
1682 | GLXEW_FUN_EXPORT PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;
1683 | GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_0;
1684 | GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_1;
1685 | GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_2;
1686 | GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_3;
1687 | GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_4;
1688 | GLXEW_VAR_EXPORT GLboolean __GLXEW_3DFX_multisample;
1689 | GLXEW_VAR_EXPORT GLboolean __GLXEW_AMD_gpu_association;
1690 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_context_flush_control;
1691 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_create_context;
1692 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_create_context_no_error;
1693 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_create_context_profile;
1694 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_create_context_robustness;
1695 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;
1696 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_framebuffer_sRGB;
1697 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_get_proc_address;
1698 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_multisample;
1699 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_robustness_application_isolation;
1700 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_robustness_share_group_isolation;
1701 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ARB_vertex_buffer_object;
1702 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;
1703 | GLXEW_VAR_EXPORT GLboolean __GLXEW_ATI_render_texture;
1704 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_buffer_age;
1705 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_create_context_es2_profile;
1706 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_create_context_es_profile;
1707 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;
1708 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;
1709 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_import_context;
1710 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_libglvnd;
1711 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_scene_marker;
1712 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_stereo_tree;
1713 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_swap_control;
1714 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_swap_control_tear;
1715 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_texture_from_pixmap;
1716 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_visual_info;
1717 | GLXEW_VAR_EXPORT GLboolean __GLXEW_EXT_visual_rating;
1718 | GLXEW_VAR_EXPORT GLboolean __GLXEW_INTEL_swap_event;
1719 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_agp_offset;
1720 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;
1721 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;
1722 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_query_renderer;
1723 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_release_buffers;
1724 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;
1725 | GLXEW_VAR_EXPORT GLboolean __GLXEW_MESA_swap_control;
1726 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_copy_buffer;
1727 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_copy_image;
1728 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_delay_before_swap;
1729 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_float_buffer;
1730 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_multisample_coverage;
1731 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_present_video;
1732 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_robustness_video_memory_purge;
1733 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_swap_group;
1734 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_vertex_array_range;
1735 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_video_capture;
1736 | GLXEW_VAR_EXPORT GLboolean __GLXEW_NV_video_out;
1737 | GLXEW_VAR_EXPORT GLboolean __GLXEW_OML_swap_method;
1738 | GLXEW_VAR_EXPORT GLboolean __GLXEW_OML_sync_control;
1739 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;
1740 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIS_color_range;
1741 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIS_multisample;
1742 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;
1743 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_fbconfig;
1744 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;
1745 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_pbuffer;
1746 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;
1747 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_swap_group;
1748 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_video_resize;
1749 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;
1750 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGI_cushion;
1751 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGI_make_current_read;
1752 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGI_swap_control;
1753 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SGI_video_sync;
1754 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;
1755 | GLXEW_VAR_EXPORT GLboolean __GLXEW_SUN_video_resize;
1756 | /* ------------------------------------------------------------------------ */
1757 |
1758 | GLEWAPI GLenum GLEWAPIENTRY glxewInit ();
1759 | GLEWAPI GLboolean GLEWAPIENTRY glxewIsSupported (const char *name);
1760 |
1761 | #ifndef GLXEW_GET_VAR
1762 | #define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
1763 | #endif
1764 |
1765 | #ifndef GLXEW_GET_FUN
1766 | #define GLXEW_GET_FUN(x) x
1767 | #endif
1768 |
1769 | GLEWAPI GLboolean GLEWAPIENTRY glxewGetExtension (const char *name);
1770 |
1771 | #ifdef __cplusplus
1772 | }
1773 | #endif
1774 |
1775 | #endif /* __glxew_h__ */
1776 |
--------------------------------------------------------------------------------
/common_VS2017/common/GL/wglew.h:
--------------------------------------------------------------------------------
1 | /*
2 | ** The OpenGL Extension Wrangler Library
3 | ** Copyright (C) 2008-2017, Nigel Stewart
4 | ** Copyright (C) 2002-2008, Milan Ikits
5 | ** Copyright (C) 2002-2008, Marcelo E. Magallon
6 | ** Copyright (C) 2002, Lev Povalahev
7 | ** All rights reserved.
8 | **
9 | ** Redistribution and use in source and binary forms, with or without
10 | ** modification, are permitted provided that the following conditions are met:
11 | **
12 | ** * Redistributions of source code must retain the above copyright notice,
13 | ** this list of conditions and the following disclaimer.
14 | ** * Redistributions in binary form must reproduce the above copyright notice,
15 | ** this list of conditions and the following disclaimer in the documentation
16 | ** and/or other materials provided with the distribution.
17 | ** * The name of the author may be used to endorse or promote products
18 | ** derived from this software without specific prior written permission.
19 | **
20 | ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 | ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 | ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 | ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24 | ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 | ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 | ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 | ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30 | ** THE POSSIBILITY OF SUCH DAMAGE.
31 | */
32 |
33 | /*
34 | ** Copyright (c) 2007 The Khronos Group Inc.
35 | **
36 | ** Permission is hereby granted, free of charge, to any person obtaining a
37 | ** copy of this software and/or associated documentation files (the
38 | ** "Materials"), to deal in the Materials without restriction, including
39 | ** without limitation the rights to use, copy, modify, merge, publish,
40 | ** distribute, sublicense, and/or sell copies of the Materials, and to
41 | ** permit persons to whom the Materials are furnished to do so, subject to
42 | ** the following conditions:
43 | **
44 | ** The above copyright notice and this permission notice shall be included
45 | ** in all copies or substantial portions of the Materials.
46 | **
47 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
48 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
49 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
50 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
51 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
52 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
53 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
54 | */
55 |
56 | #ifndef __wglew_h__
57 | #define __wglew_h__
58 | #define __WGLEW_H__
59 |
60 | #ifdef __wglext_h_
61 | #error wglext.h included before wglew.h
62 | #endif
63 |
64 | #define __wglext_h_
65 |
66 | #if !defined(WINAPI)
67 | # ifndef WIN32_LEAN_AND_MEAN
68 | # define WIN32_LEAN_AND_MEAN 1
69 | # endif
70 | #include
71 | # undef WIN32_LEAN_AND_MEAN
72 | #endif
73 |
74 | /*
75 | * GLEW_STATIC needs to be set when using the static version.
76 | * GLEW_BUILD is set when building the DLL version.
77 | */
78 | #ifdef GLEW_STATIC
79 | # define GLEWAPI extern
80 | #else
81 | # ifdef GLEW_BUILD
82 | # define GLEWAPI extern __declspec(dllexport)
83 | # else
84 | # define GLEWAPI extern __declspec(dllimport)
85 | # endif
86 | #endif
87 |
88 | #ifdef __cplusplus
89 | extern "C" {
90 | #endif
91 |
92 | /* -------------------------- WGL_3DFX_multisample ------------------------- */
93 |
94 | #ifndef WGL_3DFX_multisample
95 | #define WGL_3DFX_multisample 1
96 |
97 | #define WGL_SAMPLE_BUFFERS_3DFX 0x2060
98 | #define WGL_SAMPLES_3DFX 0x2061
99 |
100 | #define WGLEW_3DFX_multisample WGLEW_GET_VAR(__WGLEW_3DFX_multisample)
101 |
102 | #endif /* WGL_3DFX_multisample */
103 |
104 | /* ------------------------- WGL_3DL_stereo_control ------------------------ */
105 |
106 | #ifndef WGL_3DL_stereo_control
107 | #define WGL_3DL_stereo_control 1
108 |
109 | #define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
110 | #define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
111 | #define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
112 | #define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
113 |
114 | typedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
115 |
116 | #define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)
117 |
118 | #define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)
119 |
120 | #endif /* WGL_3DL_stereo_control */
121 |
122 | /* ------------------------ WGL_AMD_gpu_association ------------------------ */
123 |
124 | #ifndef WGL_AMD_gpu_association
125 | #define WGL_AMD_gpu_association 1
126 |
127 | #define WGL_GPU_VENDOR_AMD 0x1F00
128 | #define WGL_GPU_RENDERER_STRING_AMD 0x1F01
129 | #define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
130 | #define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
131 | #define WGL_GPU_RAM_AMD 0x21A3
132 | #define WGL_GPU_CLOCK_AMD 0x21A4
133 | #define WGL_GPU_NUM_PIPES_AMD 0x21A5
134 | #define WGL_GPU_NUM_SIMD_AMD 0x21A6
135 | #define WGL_GPU_NUM_RB_AMD 0x21A7
136 | #define WGL_GPU_NUM_SPI_AMD 0x21A8
137 |
138 | typedef VOID (WINAPI * PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC) (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
139 | typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
140 | typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int* attribList);
141 | typedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
142 | typedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
143 | typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
144 | typedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT* ids);
145 | typedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, INT property, GLenum dataType, UINT size, void* data);
146 | typedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
147 |
148 | #define wglBlitContextFramebufferAMD WGLEW_GET_FUN(__wglewBlitContextFramebufferAMD)
149 | #define wglCreateAssociatedContextAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAMD)
150 | #define wglCreateAssociatedContextAttribsAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAttribsAMD)
151 | #define wglDeleteAssociatedContextAMD WGLEW_GET_FUN(__wglewDeleteAssociatedContextAMD)
152 | #define wglGetContextGPUIDAMD WGLEW_GET_FUN(__wglewGetContextGPUIDAMD)
153 | #define wglGetCurrentAssociatedContextAMD WGLEW_GET_FUN(__wglewGetCurrentAssociatedContextAMD)
154 | #define wglGetGPUIDsAMD WGLEW_GET_FUN(__wglewGetGPUIDsAMD)
155 | #define wglGetGPUInfoAMD WGLEW_GET_FUN(__wglewGetGPUInfoAMD)
156 | #define wglMakeAssociatedContextCurrentAMD WGLEW_GET_FUN(__wglewMakeAssociatedContextCurrentAMD)
157 |
158 | #define WGLEW_AMD_gpu_association WGLEW_GET_VAR(__WGLEW_AMD_gpu_association)
159 |
160 | #endif /* WGL_AMD_gpu_association */
161 |
162 | /* ------------------------- WGL_ARB_buffer_region ------------------------- */
163 |
164 | #ifndef WGL_ARB_buffer_region
165 | #define WGL_ARB_buffer_region 1
166 |
167 | #define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
168 | #define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
169 | #define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
170 | #define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
171 |
172 | typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
173 | typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
174 | typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
175 | typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
176 |
177 | #define wglCreateBufferRegionARB WGLEW_GET_FUN(__wglewCreateBufferRegionARB)
178 | #define wglDeleteBufferRegionARB WGLEW_GET_FUN(__wglewDeleteBufferRegionARB)
179 | #define wglRestoreBufferRegionARB WGLEW_GET_FUN(__wglewRestoreBufferRegionARB)
180 | #define wglSaveBufferRegionARB WGLEW_GET_FUN(__wglewSaveBufferRegionARB)
181 |
182 | #define WGLEW_ARB_buffer_region WGLEW_GET_VAR(__WGLEW_ARB_buffer_region)
183 |
184 | #endif /* WGL_ARB_buffer_region */
185 |
186 | /* --------------------- WGL_ARB_context_flush_control --------------------- */
187 |
188 | #ifndef WGL_ARB_context_flush_control
189 | #define WGL_ARB_context_flush_control 1
190 |
191 | #define WGLEW_ARB_context_flush_control WGLEW_GET_VAR(__WGLEW_ARB_context_flush_control)
192 |
193 | #endif /* WGL_ARB_context_flush_control */
194 |
195 | /* ------------------------- WGL_ARB_create_context ------------------------ */
196 |
197 | #ifndef WGL_ARB_create_context
198 | #define WGL_ARB_create_context 1
199 |
200 | #define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001
201 | #define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
202 | #define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
203 | #define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
204 | #define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
205 | #define WGL_CONTEXT_FLAGS_ARB 0x2094
206 | #define ERROR_INVALID_VERSION_ARB 0x2095
207 | #define ERROR_INVALID_PROFILE_ARB 0x2096
208 |
209 | typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int* attribList);
210 |
211 | #define wglCreateContextAttribsARB WGLEW_GET_FUN(__wglewCreateContextAttribsARB)
212 |
213 | #define WGLEW_ARB_create_context WGLEW_GET_VAR(__WGLEW_ARB_create_context)
214 |
215 | #endif /* WGL_ARB_create_context */
216 |
217 | /* -------------------- WGL_ARB_create_context_no_error -------------------- */
218 |
219 | #ifndef WGL_ARB_create_context_no_error
220 | #define WGL_ARB_create_context_no_error 1
221 |
222 | #define WGLEW_ARB_create_context_no_error WGLEW_GET_VAR(__WGLEW_ARB_create_context_no_error)
223 |
224 | #endif /* WGL_ARB_create_context_no_error */
225 |
226 | /* --------------------- WGL_ARB_create_context_profile -------------------- */
227 |
228 | #ifndef WGL_ARB_create_context_profile
229 | #define WGL_ARB_create_context_profile 1
230 |
231 | #define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
232 | #define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
233 | #define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
234 |
235 | #define WGLEW_ARB_create_context_profile WGLEW_GET_VAR(__WGLEW_ARB_create_context_profile)
236 |
237 | #endif /* WGL_ARB_create_context_profile */
238 |
239 | /* ------------------- WGL_ARB_create_context_robustness ------------------- */
240 |
241 | #ifndef WGL_ARB_create_context_robustness
242 | #define WGL_ARB_create_context_robustness 1
243 |
244 | #define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
245 | #define WGL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
246 | #define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
247 | #define WGL_NO_RESET_NOTIFICATION_ARB 0x8261
248 |
249 | #define WGLEW_ARB_create_context_robustness WGLEW_GET_VAR(__WGLEW_ARB_create_context_robustness)
250 |
251 | #endif /* WGL_ARB_create_context_robustness */
252 |
253 | /* ----------------------- WGL_ARB_extensions_string ----------------------- */
254 |
255 | #ifndef WGL_ARB_extensions_string
256 | #define WGL_ARB_extensions_string 1
257 |
258 | typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
259 |
260 | #define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)
261 |
262 | #define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)
263 |
264 | #endif /* WGL_ARB_extensions_string */
265 |
266 | /* ------------------------ WGL_ARB_framebuffer_sRGB ----------------------- */
267 |
268 | #ifndef WGL_ARB_framebuffer_sRGB
269 | #define WGL_ARB_framebuffer_sRGB 1
270 |
271 | #define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
272 |
273 | #define WGLEW_ARB_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_ARB_framebuffer_sRGB)
274 |
275 | #endif /* WGL_ARB_framebuffer_sRGB */
276 |
277 | /* ----------------------- WGL_ARB_make_current_read ----------------------- */
278 |
279 | #ifndef WGL_ARB_make_current_read
280 | #define WGL_ARB_make_current_read 1
281 |
282 | #define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
283 | #define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
284 |
285 | typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (VOID);
286 | typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
287 |
288 | #define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)
289 | #define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)
290 |
291 | #define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)
292 |
293 | #endif /* WGL_ARB_make_current_read */
294 |
295 | /* -------------------------- WGL_ARB_multisample -------------------------- */
296 |
297 | #ifndef WGL_ARB_multisample
298 | #define WGL_ARB_multisample 1
299 |
300 | #define WGL_SAMPLE_BUFFERS_ARB 0x2041
301 | #define WGL_SAMPLES_ARB 0x2042
302 |
303 | #define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)
304 |
305 | #endif /* WGL_ARB_multisample */
306 |
307 | /* ---------------------------- WGL_ARB_pbuffer ---------------------------- */
308 |
309 | #ifndef WGL_ARB_pbuffer
310 | #define WGL_ARB_pbuffer 1
311 |
312 | #define WGL_DRAW_TO_PBUFFER_ARB 0x202D
313 | #define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
314 | #define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
315 | #define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
316 | #define WGL_PBUFFER_LARGEST_ARB 0x2033
317 | #define WGL_PBUFFER_WIDTH_ARB 0x2034
318 | #define WGL_PBUFFER_HEIGHT_ARB 0x2035
319 | #define WGL_PBUFFER_LOST_ARB 0x2036
320 |
321 | DECLARE_HANDLE(HPBUFFERARB);
322 |
323 | typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
324 | typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
325 | typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
326 | typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int* piValue);
327 | typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
328 |
329 | #define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)
330 | #define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)
331 | #define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)
332 | #define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)
333 | #define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)
334 |
335 | #define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)
336 |
337 | #endif /* WGL_ARB_pbuffer */
338 |
339 | /* -------------------------- WGL_ARB_pixel_format ------------------------- */
340 |
341 | #ifndef WGL_ARB_pixel_format
342 | #define WGL_ARB_pixel_format 1
343 |
344 | #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
345 | #define WGL_DRAW_TO_WINDOW_ARB 0x2001
346 | #define WGL_DRAW_TO_BITMAP_ARB 0x2002
347 | #define WGL_ACCELERATION_ARB 0x2003
348 | #define WGL_NEED_PALETTE_ARB 0x2004
349 | #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
350 | #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
351 | #define WGL_SWAP_METHOD_ARB 0x2007
352 | #define WGL_NUMBER_OVERLAYS_ARB 0x2008
353 | #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
354 | #define WGL_TRANSPARENT_ARB 0x200A
355 | #define WGL_SHARE_DEPTH_ARB 0x200C
356 | #define WGL_SHARE_STENCIL_ARB 0x200D
357 | #define WGL_SHARE_ACCUM_ARB 0x200E
358 | #define WGL_SUPPORT_GDI_ARB 0x200F
359 | #define WGL_SUPPORT_OPENGL_ARB 0x2010
360 | #define WGL_DOUBLE_BUFFER_ARB 0x2011
361 | #define WGL_STEREO_ARB 0x2012
362 | #define WGL_PIXEL_TYPE_ARB 0x2013
363 | #define WGL_COLOR_BITS_ARB 0x2014
364 | #define WGL_RED_BITS_ARB 0x2015
365 | #define WGL_RED_SHIFT_ARB 0x2016
366 | #define WGL_GREEN_BITS_ARB 0x2017
367 | #define WGL_GREEN_SHIFT_ARB 0x2018
368 | #define WGL_BLUE_BITS_ARB 0x2019
369 | #define WGL_BLUE_SHIFT_ARB 0x201A
370 | #define WGL_ALPHA_BITS_ARB 0x201B
371 | #define WGL_ALPHA_SHIFT_ARB 0x201C
372 | #define WGL_ACCUM_BITS_ARB 0x201D
373 | #define WGL_ACCUM_RED_BITS_ARB 0x201E
374 | #define WGL_ACCUM_GREEN_BITS_ARB 0x201F
375 | #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
376 | #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
377 | #define WGL_DEPTH_BITS_ARB 0x2022
378 | #define WGL_STENCIL_BITS_ARB 0x2023
379 | #define WGL_AUX_BUFFERS_ARB 0x2024
380 | #define WGL_NO_ACCELERATION_ARB 0x2025
381 | #define WGL_GENERIC_ACCELERATION_ARB 0x2026
382 | #define WGL_FULL_ACCELERATION_ARB 0x2027
383 | #define WGL_SWAP_EXCHANGE_ARB 0x2028
384 | #define WGL_SWAP_COPY_ARB 0x2029
385 | #define WGL_SWAP_UNDEFINED_ARB 0x202A
386 | #define WGL_TYPE_RGBA_ARB 0x202B
387 | #define WGL_TYPE_COLORINDEX_ARB 0x202C
388 | #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
389 | #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
390 | #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
391 | #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
392 | #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
393 |
394 | typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
395 | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, FLOAT *pfValues);
396 | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, int *piValues);
397 |
398 | #define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)
399 | #define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)
400 | #define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)
401 |
402 | #define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)
403 |
404 | #endif /* WGL_ARB_pixel_format */
405 |
406 | /* ----------------------- WGL_ARB_pixel_format_float ---------------------- */
407 |
408 | #ifndef WGL_ARB_pixel_format_float
409 | #define WGL_ARB_pixel_format_float 1
410 |
411 | #define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
412 |
413 | #define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)
414 |
415 | #endif /* WGL_ARB_pixel_format_float */
416 |
417 | /* ------------------------- WGL_ARB_render_texture ------------------------ */
418 |
419 | #ifndef WGL_ARB_render_texture
420 | #define WGL_ARB_render_texture 1
421 |
422 | #define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
423 | #define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
424 | #define WGL_TEXTURE_FORMAT_ARB 0x2072
425 | #define WGL_TEXTURE_TARGET_ARB 0x2073
426 | #define WGL_MIPMAP_TEXTURE_ARB 0x2074
427 | #define WGL_TEXTURE_RGB_ARB 0x2075
428 | #define WGL_TEXTURE_RGBA_ARB 0x2076
429 | #define WGL_NO_TEXTURE_ARB 0x2077
430 | #define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
431 | #define WGL_TEXTURE_1D_ARB 0x2079
432 | #define WGL_TEXTURE_2D_ARB 0x207A
433 | #define WGL_MIPMAP_LEVEL_ARB 0x207B
434 | #define WGL_CUBE_MAP_FACE_ARB 0x207C
435 | #define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
436 | #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
437 | #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
438 | #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
439 | #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
440 | #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
441 | #define WGL_FRONT_LEFT_ARB 0x2083
442 | #define WGL_FRONT_RIGHT_ARB 0x2084
443 | #define WGL_BACK_LEFT_ARB 0x2085
444 | #define WGL_BACK_RIGHT_ARB 0x2086
445 | #define WGL_AUX0_ARB 0x2087
446 | #define WGL_AUX1_ARB 0x2088
447 | #define WGL_AUX2_ARB 0x2089
448 | #define WGL_AUX3_ARB 0x208A
449 | #define WGL_AUX4_ARB 0x208B
450 | #define WGL_AUX5_ARB 0x208C
451 | #define WGL_AUX6_ARB 0x208D
452 | #define WGL_AUX7_ARB 0x208E
453 | #define WGL_AUX8_ARB 0x208F
454 | #define WGL_AUX9_ARB 0x2090
455 |
456 | typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
457 | typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
458 | typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int* piAttribList);
459 |
460 | #define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)
461 | #define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)
462 | #define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)
463 |
464 | #define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)
465 |
466 | #endif /* WGL_ARB_render_texture */
467 |
468 | /* ---------------- WGL_ARB_robustness_application_isolation --------------- */
469 |
470 | #ifndef WGL_ARB_robustness_application_isolation
471 | #define WGL_ARB_robustness_application_isolation 1
472 |
473 | #define WGL_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
474 |
475 | #define WGLEW_ARB_robustness_application_isolation WGLEW_GET_VAR(__WGLEW_ARB_robustness_application_isolation)
476 |
477 | #endif /* WGL_ARB_robustness_application_isolation */
478 |
479 | /* ---------------- WGL_ARB_robustness_share_group_isolation --------------- */
480 |
481 | #ifndef WGL_ARB_robustness_share_group_isolation
482 | #define WGL_ARB_robustness_share_group_isolation 1
483 |
484 | #define WGL_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
485 |
486 | #define WGLEW_ARB_robustness_share_group_isolation WGLEW_GET_VAR(__WGLEW_ARB_robustness_share_group_isolation)
487 |
488 | #endif /* WGL_ARB_robustness_share_group_isolation */
489 |
490 | /* ----------------------- WGL_ATI_pixel_format_float ---------------------- */
491 |
492 | #ifndef WGL_ATI_pixel_format_float
493 | #define WGL_ATI_pixel_format_float 1
494 |
495 | #define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
496 | #define GL_RGBA_FLOAT_MODE_ATI 0x8820
497 | #define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
498 |
499 | #define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)
500 |
501 | #endif /* WGL_ATI_pixel_format_float */
502 |
503 | /* -------------------- WGL_ATI_render_texture_rectangle ------------------- */
504 |
505 | #ifndef WGL_ATI_render_texture_rectangle
506 | #define WGL_ATI_render_texture_rectangle 1
507 |
508 | #define WGL_TEXTURE_RECTANGLE_ATI 0x21A5
509 |
510 | #define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)
511 |
512 | #endif /* WGL_ATI_render_texture_rectangle */
513 |
514 | /* --------------------------- WGL_EXT_colorspace -------------------------- */
515 |
516 | #ifndef WGL_EXT_colorspace
517 | #define WGL_EXT_colorspace 1
518 |
519 | #define WGL_COLORSPACE_SRGB_EXT 0x3089
520 | #define WGL_COLORSPACE_LINEAR_EXT 0x308A
521 | #define WGL_COLORSPACE_EXT 0x309D
522 |
523 | #define WGLEW_EXT_colorspace WGLEW_GET_VAR(__WGLEW_EXT_colorspace)
524 |
525 | #endif /* WGL_EXT_colorspace */
526 |
527 | /* ------------------- WGL_EXT_create_context_es2_profile ------------------ */
528 |
529 | #ifndef WGL_EXT_create_context_es2_profile
530 | #define WGL_EXT_create_context_es2_profile 1
531 |
532 | #define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
533 |
534 | #define WGLEW_EXT_create_context_es2_profile WGLEW_GET_VAR(__WGLEW_EXT_create_context_es2_profile)
535 |
536 | #endif /* WGL_EXT_create_context_es2_profile */
537 |
538 | /* ------------------- WGL_EXT_create_context_es_profile ------------------- */
539 |
540 | #ifndef WGL_EXT_create_context_es_profile
541 | #define WGL_EXT_create_context_es_profile 1
542 |
543 | #define WGL_CONTEXT_ES_PROFILE_BIT_EXT 0x00000004
544 |
545 | #define WGLEW_EXT_create_context_es_profile WGLEW_GET_VAR(__WGLEW_EXT_create_context_es_profile)
546 |
547 | #endif /* WGL_EXT_create_context_es_profile */
548 |
549 | /* -------------------------- WGL_EXT_depth_float -------------------------- */
550 |
551 | #ifndef WGL_EXT_depth_float
552 | #define WGL_EXT_depth_float 1
553 |
554 | #define WGL_DEPTH_FLOAT_EXT 0x2040
555 |
556 | #define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)
557 |
558 | #endif /* WGL_EXT_depth_float */
559 |
560 | /* ---------------------- WGL_EXT_display_color_table ---------------------- */
561 |
562 | #ifndef WGL_EXT_display_color_table
563 | #define WGL_EXT_display_color_table 1
564 |
565 | typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
566 | typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
567 | typedef void (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
568 | typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (GLushort* table, GLuint length);
569 |
570 | #define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)
571 | #define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)
572 | #define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)
573 | #define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)
574 |
575 | #define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)
576 |
577 | #endif /* WGL_EXT_display_color_table */
578 |
579 | /* ----------------------- WGL_EXT_extensions_string ----------------------- */
580 |
581 | #ifndef WGL_EXT_extensions_string
582 | #define WGL_EXT_extensions_string 1
583 |
584 | typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
585 |
586 | #define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)
587 |
588 | #define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)
589 |
590 | #endif /* WGL_EXT_extensions_string */
591 |
592 | /* ------------------------ WGL_EXT_framebuffer_sRGB ----------------------- */
593 |
594 | #ifndef WGL_EXT_framebuffer_sRGB
595 | #define WGL_EXT_framebuffer_sRGB 1
596 |
597 | #define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
598 |
599 | #define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)
600 |
601 | #endif /* WGL_EXT_framebuffer_sRGB */
602 |
603 | /* ----------------------- WGL_EXT_make_current_read ----------------------- */
604 |
605 | #ifndef WGL_EXT_make_current_read
606 | #define WGL_EXT_make_current_read 1
607 |
608 | #define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
609 |
610 | typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (VOID);
611 | typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
612 |
613 | #define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)
614 | #define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)
615 |
616 | #define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)
617 |
618 | #endif /* WGL_EXT_make_current_read */
619 |
620 | /* -------------------------- WGL_EXT_multisample -------------------------- */
621 |
622 | #ifndef WGL_EXT_multisample
623 | #define WGL_EXT_multisample 1
624 |
625 | #define WGL_SAMPLE_BUFFERS_EXT 0x2041
626 | #define WGL_SAMPLES_EXT 0x2042
627 |
628 | #define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)
629 |
630 | #endif /* WGL_EXT_multisample */
631 |
632 | /* ---------------------------- WGL_EXT_pbuffer ---------------------------- */
633 |
634 | #ifndef WGL_EXT_pbuffer
635 | #define WGL_EXT_pbuffer 1
636 |
637 | #define WGL_DRAW_TO_PBUFFER_EXT 0x202D
638 | #define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
639 | #define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
640 | #define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
641 | #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
642 | #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
643 | #define WGL_PBUFFER_LARGEST_EXT 0x2033
644 | #define WGL_PBUFFER_WIDTH_EXT 0x2034
645 | #define WGL_PBUFFER_HEIGHT_EXT 0x2035
646 |
647 | DECLARE_HANDLE(HPBUFFEREXT);
648 |
649 | typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
650 | typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
651 | typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
652 | typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int* piValue);
653 | typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
654 |
655 | #define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)
656 | #define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)
657 | #define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)
658 | #define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)
659 | #define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)
660 |
661 | #define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)
662 |
663 | #endif /* WGL_EXT_pbuffer */
664 |
665 | /* -------------------------- WGL_EXT_pixel_format ------------------------- */
666 |
667 | #ifndef WGL_EXT_pixel_format
668 | #define WGL_EXT_pixel_format 1
669 |
670 | #define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
671 | #define WGL_DRAW_TO_WINDOW_EXT 0x2001
672 | #define WGL_DRAW_TO_BITMAP_EXT 0x2002
673 | #define WGL_ACCELERATION_EXT 0x2003
674 | #define WGL_NEED_PALETTE_EXT 0x2004
675 | #define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
676 | #define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
677 | #define WGL_SWAP_METHOD_EXT 0x2007
678 | #define WGL_NUMBER_OVERLAYS_EXT 0x2008
679 | #define WGL_NUMBER_UNDERLAYS_EXT 0x2009
680 | #define WGL_TRANSPARENT_EXT 0x200A
681 | #define WGL_TRANSPARENT_VALUE_EXT 0x200B
682 | #define WGL_SHARE_DEPTH_EXT 0x200C
683 | #define WGL_SHARE_STENCIL_EXT 0x200D
684 | #define WGL_SHARE_ACCUM_EXT 0x200E
685 | #define WGL_SUPPORT_GDI_EXT 0x200F
686 | #define WGL_SUPPORT_OPENGL_EXT 0x2010
687 | #define WGL_DOUBLE_BUFFER_EXT 0x2011
688 | #define WGL_STEREO_EXT 0x2012
689 | #define WGL_PIXEL_TYPE_EXT 0x2013
690 | #define WGL_COLOR_BITS_EXT 0x2014
691 | #define WGL_RED_BITS_EXT 0x2015
692 | #define WGL_RED_SHIFT_EXT 0x2016
693 | #define WGL_GREEN_BITS_EXT 0x2017
694 | #define WGL_GREEN_SHIFT_EXT 0x2018
695 | #define WGL_BLUE_BITS_EXT 0x2019
696 | #define WGL_BLUE_SHIFT_EXT 0x201A
697 | #define WGL_ALPHA_BITS_EXT 0x201B
698 | #define WGL_ALPHA_SHIFT_EXT 0x201C
699 | #define WGL_ACCUM_BITS_EXT 0x201D
700 | #define WGL_ACCUM_RED_BITS_EXT 0x201E
701 | #define WGL_ACCUM_GREEN_BITS_EXT 0x201F
702 | #define WGL_ACCUM_BLUE_BITS_EXT 0x2020
703 | #define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
704 | #define WGL_DEPTH_BITS_EXT 0x2022
705 | #define WGL_STENCIL_BITS_EXT 0x2023
706 | #define WGL_AUX_BUFFERS_EXT 0x2024
707 | #define WGL_NO_ACCELERATION_EXT 0x2025
708 | #define WGL_GENERIC_ACCELERATION_EXT 0x2026
709 | #define WGL_FULL_ACCELERATION_EXT 0x2027
710 | #define WGL_SWAP_EXCHANGE_EXT 0x2028
711 | #define WGL_SWAP_COPY_EXT 0x2029
712 | #define WGL_SWAP_UNDEFINED_EXT 0x202A
713 | #define WGL_TYPE_RGBA_EXT 0x202B
714 | #define WGL_TYPE_COLORINDEX_EXT 0x202C
715 |
716 | typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
717 | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, FLOAT *pfValues);
718 | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, int *piValues);
719 |
720 | #define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)
721 | #define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)
722 | #define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)
723 |
724 | #define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)
725 |
726 | #endif /* WGL_EXT_pixel_format */
727 |
728 | /* ------------------- WGL_EXT_pixel_format_packed_float ------------------- */
729 |
730 | #ifndef WGL_EXT_pixel_format_packed_float
731 | #define WGL_EXT_pixel_format_packed_float 1
732 |
733 | #define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
734 |
735 | #define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)
736 |
737 | #endif /* WGL_EXT_pixel_format_packed_float */
738 |
739 | /* -------------------------- WGL_EXT_swap_control ------------------------- */
740 |
741 | #ifndef WGL_EXT_swap_control
742 | #define WGL_EXT_swap_control 1
743 |
744 | typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
745 | typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
746 |
747 | #define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)
748 | #define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)
749 |
750 | #define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)
751 |
752 | #endif /* WGL_EXT_swap_control */
753 |
754 | /* ----------------------- WGL_EXT_swap_control_tear ----------------------- */
755 |
756 | #ifndef WGL_EXT_swap_control_tear
757 | #define WGL_EXT_swap_control_tear 1
758 |
759 | #define WGLEW_EXT_swap_control_tear WGLEW_GET_VAR(__WGLEW_EXT_swap_control_tear)
760 |
761 | #endif /* WGL_EXT_swap_control_tear */
762 |
763 | /* --------------------- WGL_I3D_digital_video_control --------------------- */
764 |
765 | #ifndef WGL_I3D_digital_video_control
766 | #define WGL_I3D_digital_video_control 1
767 |
768 | #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
769 | #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
770 | #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
771 | #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
772 |
773 | typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
774 | typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
775 |
776 | #define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)
777 | #define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)
778 |
779 | #define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)
780 |
781 | #endif /* WGL_I3D_digital_video_control */
782 |
783 | /* ----------------------------- WGL_I3D_gamma ----------------------------- */
784 |
785 | #ifndef WGL_I3D_gamma
786 | #define WGL_I3D_gamma 1
787 |
788 | #define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
789 | #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
790 |
791 | typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT* puRed, USHORT *puGreen, USHORT *puBlue);
792 | typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
793 | typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT* puRed, const USHORT *puGreen, const USHORT *puBlue);
794 | typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
795 |
796 | #define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)
797 | #define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)
798 | #define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)
799 | #define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)
800 |
801 | #define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)
802 |
803 | #endif /* WGL_I3D_gamma */
804 |
805 | /* ---------------------------- WGL_I3D_genlock ---------------------------- */
806 |
807 | #ifndef WGL_I3D_genlock
808 | #define WGL_I3D_genlock 1
809 |
810 | #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
811 | #define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
812 | #define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
813 | #define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
814 | #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
815 | #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
816 | #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
817 | #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
818 | #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
819 |
820 | typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
821 | typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
822 | typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
823 | typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
824 | typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
825 | typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
826 | typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT* uRate);
827 | typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT* uDelay);
828 | typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT* uEdge);
829 | typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT* uSource);
830 | typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL* pFlag);
831 | typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT* uMaxLineDelay, UINT *uMaxPixelDelay);
832 |
833 | #define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)
834 | #define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)
835 | #define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)
836 | #define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)
837 | #define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)
838 | #define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)
839 | #define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)
840 | #define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)
841 | #define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)
842 | #define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)
843 | #define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)
844 | #define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)
845 |
846 | #define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)
847 |
848 | #endif /* WGL_I3D_genlock */
849 |
850 | /* -------------------------- WGL_I3D_image_buffer ------------------------- */
851 |
852 | #ifndef WGL_I3D_image_buffer
853 | #define WGL_I3D_image_buffer 1
854 |
855 | #define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
856 | #define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
857 |
858 | typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, HANDLE* pEvent, LPVOID *pAddress, DWORD *pSize, UINT count);
859 | typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
860 | typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
861 | typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, LPVOID* pAddress, UINT count);
862 |
863 | #define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)
864 | #define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)
865 | #define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)
866 | #define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)
867 |
868 | #define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)
869 |
870 | #endif /* WGL_I3D_image_buffer */
871 |
872 | /* ------------------------ WGL_I3D_swap_frame_lock ------------------------ */
873 |
874 | #ifndef WGL_I3D_swap_frame_lock
875 | #define WGL_I3D_swap_frame_lock 1
876 |
877 | typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (VOID);
878 | typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (VOID);
879 | typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL* pFlag);
880 | typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL* pFlag);
881 |
882 | #define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)
883 | #define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)
884 | #define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)
885 | #define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)
886 |
887 | #define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)
888 |
889 | #endif /* WGL_I3D_swap_frame_lock */
890 |
891 | /* ------------------------ WGL_I3D_swap_frame_usage ----------------------- */
892 |
893 | #ifndef WGL_I3D_swap_frame_usage
894 | #define WGL_I3D_swap_frame_usage 1
895 |
896 | typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
897 | typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
898 | typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float* pUsage);
899 | typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD* pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
900 |
901 | #define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)
902 | #define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)
903 | #define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)
904 | #define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)
905 |
906 | #define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)
907 |
908 | #endif /* WGL_I3D_swap_frame_usage */
909 |
910 | /* --------------------------- WGL_NV_DX_interop --------------------------- */
911 |
912 | #ifndef WGL_NV_DX_interop
913 | #define WGL_NV_DX_interop 1
914 |
915 | #define WGL_ACCESS_READ_ONLY_NV 0x0000
916 | #define WGL_ACCESS_READ_WRITE_NV 0x0001
917 | #define WGL_ACCESS_WRITE_DISCARD_NV 0x0002
918 |
919 | typedef BOOL (WINAPI * PFNWGLDXCLOSEDEVICENVPROC) (HANDLE hDevice);
920 | typedef BOOL (WINAPI * PFNWGLDXLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE* hObjects);
921 | typedef BOOL (WINAPI * PFNWGLDXOBJECTACCESSNVPROC) (HANDLE hObject, GLenum access);
922 | typedef HANDLE (WINAPI * PFNWGLDXOPENDEVICENVPROC) (void* dxDevice);
923 | typedef HANDLE (WINAPI * PFNWGLDXREGISTEROBJECTNVPROC) (HANDLE hDevice, void* dxObject, GLuint name, GLenum type, GLenum access);
924 | typedef BOOL (WINAPI * PFNWGLDXSETRESOURCESHAREHANDLENVPROC) (void* dxObject, HANDLE shareHandle);
925 | typedef BOOL (WINAPI * PFNWGLDXUNLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE* hObjects);
926 | typedef BOOL (WINAPI * PFNWGLDXUNREGISTEROBJECTNVPROC) (HANDLE hDevice, HANDLE hObject);
927 |
928 | #define wglDXCloseDeviceNV WGLEW_GET_FUN(__wglewDXCloseDeviceNV)
929 | #define wglDXLockObjectsNV WGLEW_GET_FUN(__wglewDXLockObjectsNV)
930 | #define wglDXObjectAccessNV WGLEW_GET_FUN(__wglewDXObjectAccessNV)
931 | #define wglDXOpenDeviceNV WGLEW_GET_FUN(__wglewDXOpenDeviceNV)
932 | #define wglDXRegisterObjectNV WGLEW_GET_FUN(__wglewDXRegisterObjectNV)
933 | #define wglDXSetResourceShareHandleNV WGLEW_GET_FUN(__wglewDXSetResourceShareHandleNV)
934 | #define wglDXUnlockObjectsNV WGLEW_GET_FUN(__wglewDXUnlockObjectsNV)
935 | #define wglDXUnregisterObjectNV WGLEW_GET_FUN(__wglewDXUnregisterObjectNV)
936 |
937 | #define WGLEW_NV_DX_interop WGLEW_GET_VAR(__WGLEW_NV_DX_interop)
938 |
939 | #endif /* WGL_NV_DX_interop */
940 |
941 | /* --------------------------- WGL_NV_DX_interop2 -------------------------- */
942 |
943 | #ifndef WGL_NV_DX_interop2
944 | #define WGL_NV_DX_interop2 1
945 |
946 | #define WGLEW_NV_DX_interop2 WGLEW_GET_VAR(__WGLEW_NV_DX_interop2)
947 |
948 | #endif /* WGL_NV_DX_interop2 */
949 |
950 | /* --------------------------- WGL_NV_copy_image --------------------------- */
951 |
952 | #ifndef WGL_NV_copy_image
953 | #define WGL_NV_copy_image 1
954 |
955 | typedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
956 |
957 | #define wglCopyImageSubDataNV WGLEW_GET_FUN(__wglewCopyImageSubDataNV)
958 |
959 | #define WGLEW_NV_copy_image WGLEW_GET_VAR(__WGLEW_NV_copy_image)
960 |
961 | #endif /* WGL_NV_copy_image */
962 |
963 | /* ------------------------ WGL_NV_delay_before_swap ----------------------- */
964 |
965 | #ifndef WGL_NV_delay_before_swap
966 | #define WGL_NV_delay_before_swap 1
967 |
968 | typedef BOOL (WINAPI * PFNWGLDELAYBEFORESWAPNVPROC) (HDC hDC, GLfloat seconds);
969 |
970 | #define wglDelayBeforeSwapNV WGLEW_GET_FUN(__wglewDelayBeforeSwapNV)
971 |
972 | #define WGLEW_NV_delay_before_swap WGLEW_GET_VAR(__WGLEW_NV_delay_before_swap)
973 |
974 | #endif /* WGL_NV_delay_before_swap */
975 |
976 | /* -------------------------- WGL_NV_float_buffer -------------------------- */
977 |
978 | #ifndef WGL_NV_float_buffer
979 | #define WGL_NV_float_buffer 1
980 |
981 | #define WGL_FLOAT_COMPONENTS_NV 0x20B0
982 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
983 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
984 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
985 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
986 | #define WGL_TEXTURE_FLOAT_R_NV 0x20B5
987 | #define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
988 | #define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
989 | #define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
990 |
991 | #define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)
992 |
993 | #endif /* WGL_NV_float_buffer */
994 |
995 | /* -------------------------- WGL_NV_gpu_affinity -------------------------- */
996 |
997 | #ifndef WGL_NV_gpu_affinity
998 | #define WGL_NV_gpu_affinity 1
999 |
1000 | #define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
1001 | #define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
1002 |
1003 | DECLARE_HANDLE(HGPUNV);
1004 | typedef struct _GPU_DEVICE {
1005 | DWORD cb;
1006 | CHAR DeviceName[32];
1007 | CHAR DeviceString[128];
1008 | DWORD Flags;
1009 | RECT rcVirtualScreen;
1010 | } GPU_DEVICE, *PGPU_DEVICE;
1011 |
1012 | typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
1013 | typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
1014 | typedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
1015 | typedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
1016 | typedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
1017 |
1018 | #define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)
1019 | #define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)
1020 | #define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)
1021 | #define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)
1022 | #define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)
1023 |
1024 | #define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)
1025 |
1026 | #endif /* WGL_NV_gpu_affinity */
1027 |
1028 | /* ---------------------- WGL_NV_multisample_coverage ---------------------- */
1029 |
1030 | #ifndef WGL_NV_multisample_coverage
1031 | #define WGL_NV_multisample_coverage 1
1032 |
1033 | #define WGL_COVERAGE_SAMPLES_NV 0x2042
1034 | #define WGL_COLOR_SAMPLES_NV 0x20B9
1035 |
1036 | #define WGLEW_NV_multisample_coverage WGLEW_GET_VAR(__WGLEW_NV_multisample_coverage)
1037 |
1038 | #endif /* WGL_NV_multisample_coverage */
1039 |
1040 | /* -------------------------- WGL_NV_present_video ------------------------- */
1041 |
1042 | #ifndef WGL_NV_present_video
1043 | #define WGL_NV_present_video 1
1044 |
1045 | #define WGL_NUM_VIDEO_SLOTS_NV 0x20F0
1046 |
1047 | DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
1048 |
1049 | typedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDc, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int* piAttribList);
1050 | typedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDc, HVIDEOOUTPUTDEVICENV* phDeviceList);
1051 | typedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int* piValue);
1052 |
1053 | #define wglBindVideoDeviceNV WGLEW_GET_FUN(__wglewBindVideoDeviceNV)
1054 | #define wglEnumerateVideoDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoDevicesNV)
1055 | #define wglQueryCurrentContextNV WGLEW_GET_FUN(__wglewQueryCurrentContextNV)
1056 |
1057 | #define WGLEW_NV_present_video WGLEW_GET_VAR(__WGLEW_NV_present_video)
1058 |
1059 | #endif /* WGL_NV_present_video */
1060 |
1061 | /* ---------------------- WGL_NV_render_depth_texture ---------------------- */
1062 |
1063 | #ifndef WGL_NV_render_depth_texture
1064 | #define WGL_NV_render_depth_texture 1
1065 |
1066 | #define WGL_NO_TEXTURE_ARB 0x2077
1067 | #define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
1068 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
1069 | #define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
1070 | #define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
1071 | #define WGL_DEPTH_COMPONENT_NV 0x20A7
1072 |
1073 | #define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)
1074 |
1075 | #endif /* WGL_NV_render_depth_texture */
1076 |
1077 | /* -------------------- WGL_NV_render_texture_rectangle -------------------- */
1078 |
1079 | #ifndef WGL_NV_render_texture_rectangle
1080 | #define WGL_NV_render_texture_rectangle 1
1081 |
1082 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
1083 | #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
1084 | #define WGL_TEXTURE_RECTANGLE_NV 0x20A2
1085 |
1086 | #define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)
1087 |
1088 | #endif /* WGL_NV_render_texture_rectangle */
1089 |
1090 | /* --------------------------- WGL_NV_swap_group --------------------------- */
1091 |
1092 | #ifndef WGL_NV_swap_group
1093 | #define WGL_NV_swap_group 1
1094 |
1095 | typedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
1096 | typedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
1097 | typedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint* count);
1098 | typedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint* maxGroups, GLuint *maxBarriers);
1099 | typedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint* group, GLuint *barrier);
1100 | typedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
1101 |
1102 | #define wglBindSwapBarrierNV WGLEW_GET_FUN(__wglewBindSwapBarrierNV)
1103 | #define wglJoinSwapGroupNV WGLEW_GET_FUN(__wglewJoinSwapGroupNV)
1104 | #define wglQueryFrameCountNV WGLEW_GET_FUN(__wglewQueryFrameCountNV)
1105 | #define wglQueryMaxSwapGroupsNV WGLEW_GET_FUN(__wglewQueryMaxSwapGroupsNV)
1106 | #define wglQuerySwapGroupNV WGLEW_GET_FUN(__wglewQuerySwapGroupNV)
1107 | #define wglResetFrameCountNV WGLEW_GET_FUN(__wglewResetFrameCountNV)
1108 |
1109 | #define WGLEW_NV_swap_group WGLEW_GET_VAR(__WGLEW_NV_swap_group)
1110 |
1111 | #endif /* WGL_NV_swap_group */
1112 |
1113 | /* ----------------------- WGL_NV_vertex_array_range ----------------------- */
1114 |
1115 | #ifndef WGL_NV_vertex_array_range
1116 | #define WGL_NV_vertex_array_range 1
1117 |
1118 | typedef void * (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
1119 | typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
1120 |
1121 | #define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)
1122 | #define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)
1123 |
1124 | #define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)
1125 |
1126 | #endif /* WGL_NV_vertex_array_range */
1127 |
1128 | /* -------------------------- WGL_NV_video_capture ------------------------- */
1129 |
1130 | #ifndef WGL_NV_video_capture
1131 | #define WGL_NV_video_capture 1
1132 |
1133 | #define WGL_UNIQUE_ID_NV 0x20CE
1134 | #define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
1135 |
1136 | DECLARE_HANDLE(HVIDEOINPUTDEVICENV);
1137 |
1138 | typedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
1139 | typedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV* phDeviceList);
1140 | typedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
1141 | typedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int* piValue);
1142 | typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
1143 |
1144 | #define wglBindVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewBindVideoCaptureDeviceNV)
1145 | #define wglEnumerateVideoCaptureDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoCaptureDevicesNV)
1146 | #define wglLockVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewLockVideoCaptureDeviceNV)
1147 | #define wglQueryVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewQueryVideoCaptureDeviceNV)
1148 | #define wglReleaseVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoCaptureDeviceNV)
1149 |
1150 | #define WGLEW_NV_video_capture WGLEW_GET_VAR(__WGLEW_NV_video_capture)
1151 |
1152 | #endif /* WGL_NV_video_capture */
1153 |
1154 | /* -------------------------- WGL_NV_video_output -------------------------- */
1155 |
1156 | #ifndef WGL_NV_video_output
1157 | #define WGL_NV_video_output 1
1158 |
1159 | #define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
1160 | #define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
1161 | #define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
1162 | #define WGL_VIDEO_OUT_COLOR_NV 0x20C3
1163 | #define WGL_VIDEO_OUT_ALPHA_NV 0x20C4
1164 | #define WGL_VIDEO_OUT_DEPTH_NV 0x20C5
1165 | #define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
1166 | #define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
1167 | #define WGL_VIDEO_OUT_FRAME 0x20C8
1168 | #define WGL_VIDEO_OUT_FIELD_1 0x20C9
1169 | #define WGL_VIDEO_OUT_FIELD_2 0x20CA
1170 | #define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
1171 | #define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
1172 |
1173 | DECLARE_HANDLE(HPVIDEODEV);
1174 |
1175 | typedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
1176 | typedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV* hVideoDevice);
1177 | typedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long* pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
1178 | typedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
1179 | typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
1180 | typedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long* pulCounterPbuffer, BOOL bBlock);
1181 |
1182 | #define wglBindVideoImageNV WGLEW_GET_FUN(__wglewBindVideoImageNV)
1183 | #define wglGetVideoDeviceNV WGLEW_GET_FUN(__wglewGetVideoDeviceNV)
1184 | #define wglGetVideoInfoNV WGLEW_GET_FUN(__wglewGetVideoInfoNV)
1185 | #define wglReleaseVideoDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoDeviceNV)
1186 | #define wglReleaseVideoImageNV WGLEW_GET_FUN(__wglewReleaseVideoImageNV)
1187 | #define wglSendPbufferToVideoNV WGLEW_GET_FUN(__wglewSendPbufferToVideoNV)
1188 |
1189 | #define WGLEW_NV_video_output WGLEW_GET_VAR(__WGLEW_NV_video_output)
1190 |
1191 | #endif /* WGL_NV_video_output */
1192 |
1193 | /* -------------------------- WGL_OML_sync_control ------------------------- */
1194 |
1195 | #ifndef WGL_OML_sync_control
1196 | #define WGL_OML_sync_control 1
1197 |
1198 | typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32* numerator, INT32 *denominator);
1199 | typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64* ust, INT64 *msc, INT64 *sbc);
1200 | typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
1201 | typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, INT fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
1202 | typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64* ust, INT64 *msc, INT64 *sbc);
1203 | typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64* ust, INT64 *msc, INT64 *sbc);
1204 |
1205 | #define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)
1206 | #define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)
1207 | #define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)
1208 | #define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)
1209 | #define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)
1210 | #define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)
1211 |
1212 | #define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)
1213 |
1214 | #endif /* WGL_OML_sync_control */
1215 |
1216 | /* ------------------------------------------------------------------------- */
1217 |
1218 | #define WGLEW_FUN_EXPORT GLEW_FUN_EXPORT
1219 | #define WGLEW_VAR_EXPORT GLEW_VAR_EXPORT
1220 |
1221 | WGLEW_FUN_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL;
1222 |
1223 | WGLEW_FUN_EXPORT PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC __wglewBlitContextFramebufferAMD;
1224 | WGLEW_FUN_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC __wglewCreateAssociatedContextAMD;
1225 | WGLEW_FUN_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __wglewCreateAssociatedContextAttribsAMD;
1226 | WGLEW_FUN_EXPORT PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC __wglewDeleteAssociatedContextAMD;
1227 | WGLEW_FUN_EXPORT PFNWGLGETCONTEXTGPUIDAMDPROC __wglewGetContextGPUIDAMD;
1228 | WGLEW_FUN_EXPORT PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC __wglewGetCurrentAssociatedContextAMD;
1229 | WGLEW_FUN_EXPORT PFNWGLGETGPUIDSAMDPROC __wglewGetGPUIDsAMD;
1230 | WGLEW_FUN_EXPORT PFNWGLGETGPUINFOAMDPROC __wglewGetGPUInfoAMD;
1231 | WGLEW_FUN_EXPORT PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __wglewMakeAssociatedContextCurrentAMD;
1232 |
1233 | WGLEW_FUN_EXPORT PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB;
1234 | WGLEW_FUN_EXPORT PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB;
1235 | WGLEW_FUN_EXPORT PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB;
1236 | WGLEW_FUN_EXPORT PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB;
1237 |
1238 | WGLEW_FUN_EXPORT PFNWGLCREATECONTEXTATTRIBSARBPROC __wglewCreateContextAttribsARB;
1239 |
1240 | WGLEW_FUN_EXPORT PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB;
1241 |
1242 | WGLEW_FUN_EXPORT PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB;
1243 | WGLEW_FUN_EXPORT PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB;
1244 |
1245 | WGLEW_FUN_EXPORT PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB;
1246 | WGLEW_FUN_EXPORT PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB;
1247 | WGLEW_FUN_EXPORT PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB;
1248 | WGLEW_FUN_EXPORT PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB;
1249 | WGLEW_FUN_EXPORT PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB;
1250 |
1251 | WGLEW_FUN_EXPORT PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB;
1252 | WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB;
1253 | WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB;
1254 |
1255 | WGLEW_FUN_EXPORT PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB;
1256 | WGLEW_FUN_EXPORT PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB;
1257 | WGLEW_FUN_EXPORT PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB;
1258 |
1259 | WGLEW_FUN_EXPORT PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT;
1260 | WGLEW_FUN_EXPORT PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT;
1261 | WGLEW_FUN_EXPORT PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT;
1262 | WGLEW_FUN_EXPORT PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT;
1263 |
1264 | WGLEW_FUN_EXPORT PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT;
1265 |
1266 | WGLEW_FUN_EXPORT PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT;
1267 | WGLEW_FUN_EXPORT PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT;
1268 |
1269 | WGLEW_FUN_EXPORT PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT;
1270 | WGLEW_FUN_EXPORT PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT;
1271 | WGLEW_FUN_EXPORT PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT;
1272 | WGLEW_FUN_EXPORT PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT;
1273 | WGLEW_FUN_EXPORT PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT;
1274 |
1275 | WGLEW_FUN_EXPORT PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT;
1276 | WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT;
1277 | WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT;
1278 |
1279 | WGLEW_FUN_EXPORT PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT;
1280 | WGLEW_FUN_EXPORT PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT;
1281 |
1282 | WGLEW_FUN_EXPORT PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D;
1283 | WGLEW_FUN_EXPORT PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D;
1284 |
1285 | WGLEW_FUN_EXPORT PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D;
1286 | WGLEW_FUN_EXPORT PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D;
1287 | WGLEW_FUN_EXPORT PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D;
1288 | WGLEW_FUN_EXPORT PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D;
1289 |
1290 | WGLEW_FUN_EXPORT PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D;
1291 | WGLEW_FUN_EXPORT PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D;
1292 | WGLEW_FUN_EXPORT PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D;
1293 | WGLEW_FUN_EXPORT PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D;
1294 | WGLEW_FUN_EXPORT PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D;
1295 | WGLEW_FUN_EXPORT PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D;
1296 | WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D;
1297 | WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D;
1298 | WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D;
1299 | WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D;
1300 | WGLEW_FUN_EXPORT PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D;
1301 | WGLEW_FUN_EXPORT PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D;
1302 |
1303 | WGLEW_FUN_EXPORT PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D;
1304 | WGLEW_FUN_EXPORT PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D;
1305 | WGLEW_FUN_EXPORT PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D;
1306 | WGLEW_FUN_EXPORT PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D;
1307 |
1308 | WGLEW_FUN_EXPORT PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D;
1309 | WGLEW_FUN_EXPORT PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D;
1310 | WGLEW_FUN_EXPORT PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D;
1311 | WGLEW_FUN_EXPORT PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D;
1312 |
1313 | WGLEW_FUN_EXPORT PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D;
1314 | WGLEW_FUN_EXPORT PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D;
1315 | WGLEW_FUN_EXPORT PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D;
1316 | WGLEW_FUN_EXPORT PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D;
1317 |
1318 | WGLEW_FUN_EXPORT PFNWGLDXCLOSEDEVICENVPROC __wglewDXCloseDeviceNV;
1319 | WGLEW_FUN_EXPORT PFNWGLDXLOCKOBJECTSNVPROC __wglewDXLockObjectsNV;
1320 | WGLEW_FUN_EXPORT PFNWGLDXOBJECTACCESSNVPROC __wglewDXObjectAccessNV;
1321 | WGLEW_FUN_EXPORT PFNWGLDXOPENDEVICENVPROC __wglewDXOpenDeviceNV;
1322 | WGLEW_FUN_EXPORT PFNWGLDXREGISTEROBJECTNVPROC __wglewDXRegisterObjectNV;
1323 | WGLEW_FUN_EXPORT PFNWGLDXSETRESOURCESHAREHANDLENVPROC __wglewDXSetResourceShareHandleNV;
1324 | WGLEW_FUN_EXPORT PFNWGLDXUNLOCKOBJECTSNVPROC __wglewDXUnlockObjectsNV;
1325 | WGLEW_FUN_EXPORT PFNWGLDXUNREGISTEROBJECTNVPROC __wglewDXUnregisterObjectNV;
1326 |
1327 | WGLEW_FUN_EXPORT PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV;
1328 |
1329 | WGLEW_FUN_EXPORT PFNWGLDELAYBEFORESWAPNVPROC __wglewDelayBeforeSwapNV;
1330 |
1331 | WGLEW_FUN_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV;
1332 | WGLEW_FUN_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV;
1333 | WGLEW_FUN_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV;
1334 | WGLEW_FUN_EXPORT PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV;
1335 | WGLEW_FUN_EXPORT PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV;
1336 |
1337 | WGLEW_FUN_EXPORT PFNWGLBINDVIDEODEVICENVPROC __wglewBindVideoDeviceNV;
1338 | WGLEW_FUN_EXPORT PFNWGLENUMERATEVIDEODEVICESNVPROC __wglewEnumerateVideoDevicesNV;
1339 | WGLEW_FUN_EXPORT PFNWGLQUERYCURRENTCONTEXTNVPROC __wglewQueryCurrentContextNV;
1340 |
1341 | WGLEW_FUN_EXPORT PFNWGLBINDSWAPBARRIERNVPROC __wglewBindSwapBarrierNV;
1342 | WGLEW_FUN_EXPORT PFNWGLJOINSWAPGROUPNVPROC __wglewJoinSwapGroupNV;
1343 | WGLEW_FUN_EXPORT PFNWGLQUERYFRAMECOUNTNVPROC __wglewQueryFrameCountNV;
1344 | WGLEW_FUN_EXPORT PFNWGLQUERYMAXSWAPGROUPSNVPROC __wglewQueryMaxSwapGroupsNV;
1345 | WGLEW_FUN_EXPORT PFNWGLQUERYSWAPGROUPNVPROC __wglewQuerySwapGroupNV;
1346 | WGLEW_FUN_EXPORT PFNWGLRESETFRAMECOUNTNVPROC __wglewResetFrameCountNV;
1347 |
1348 | WGLEW_FUN_EXPORT PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV;
1349 | WGLEW_FUN_EXPORT PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV;
1350 |
1351 | WGLEW_FUN_EXPORT PFNWGLBINDVIDEOCAPTUREDEVICENVPROC __wglewBindVideoCaptureDeviceNV;
1352 | WGLEW_FUN_EXPORT PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC __wglewEnumerateVideoCaptureDevicesNV;
1353 | WGLEW_FUN_EXPORT PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC __wglewLockVideoCaptureDeviceNV;
1354 | WGLEW_FUN_EXPORT PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC __wglewQueryVideoCaptureDeviceNV;
1355 | WGLEW_FUN_EXPORT PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC __wglewReleaseVideoCaptureDeviceNV;
1356 |
1357 | WGLEW_FUN_EXPORT PFNWGLBINDVIDEOIMAGENVPROC __wglewBindVideoImageNV;
1358 | WGLEW_FUN_EXPORT PFNWGLGETVIDEODEVICENVPROC __wglewGetVideoDeviceNV;
1359 | WGLEW_FUN_EXPORT PFNWGLGETVIDEOINFONVPROC __wglewGetVideoInfoNV;
1360 | WGLEW_FUN_EXPORT PFNWGLRELEASEVIDEODEVICENVPROC __wglewReleaseVideoDeviceNV;
1361 | WGLEW_FUN_EXPORT PFNWGLRELEASEVIDEOIMAGENVPROC __wglewReleaseVideoImageNV;
1362 | WGLEW_FUN_EXPORT PFNWGLSENDPBUFFERTOVIDEONVPROC __wglewSendPbufferToVideoNV;
1363 |
1364 | WGLEW_FUN_EXPORT PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML;
1365 | WGLEW_FUN_EXPORT PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML;
1366 | WGLEW_FUN_EXPORT PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML;
1367 | WGLEW_FUN_EXPORT PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML;
1368 | WGLEW_FUN_EXPORT PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML;
1369 | WGLEW_FUN_EXPORT PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML;
1370 | WGLEW_VAR_EXPORT GLboolean __WGLEW_3DFX_multisample;
1371 | WGLEW_VAR_EXPORT GLboolean __WGLEW_3DL_stereo_control;
1372 | WGLEW_VAR_EXPORT GLboolean __WGLEW_AMD_gpu_association;
1373 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_buffer_region;
1374 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_context_flush_control;
1375 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context;
1376 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_no_error;
1377 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_profile;
1378 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_robustness;
1379 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_extensions_string;
1380 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_framebuffer_sRGB;
1381 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_make_current_read;
1382 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_multisample;
1383 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_pbuffer;
1384 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_pixel_format;
1385 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_pixel_format_float;
1386 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_render_texture;
1387 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_robustness_application_isolation;
1388 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_robustness_share_group_isolation;
1389 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ATI_pixel_format_float;
1390 | WGLEW_VAR_EXPORT GLboolean __WGLEW_ATI_render_texture_rectangle;
1391 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_colorspace;
1392 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_create_context_es2_profile;
1393 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_create_context_es_profile;
1394 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_depth_float;
1395 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_display_color_table;
1396 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_extensions_string;
1397 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_framebuffer_sRGB;
1398 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_make_current_read;
1399 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_multisample;
1400 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_pbuffer;
1401 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_pixel_format;
1402 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_pixel_format_packed_float;
1403 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_swap_control;
1404 | WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_swap_control_tear;
1405 | WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_digital_video_control;
1406 | WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_gamma;
1407 | WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_genlock;
1408 | WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_image_buffer;
1409 | WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_swap_frame_lock;
1410 | WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage;
1411 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_DX_interop;
1412 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_DX_interop2;
1413 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_copy_image;
1414 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_delay_before_swap;
1415 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_float_buffer;
1416 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_gpu_affinity;
1417 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_multisample_coverage;
1418 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_present_video;
1419 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_render_depth_texture;
1420 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_render_texture_rectangle;
1421 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_swap_group;
1422 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_vertex_array_range;
1423 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_video_capture;
1424 | WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_video_output;
1425 | WGLEW_VAR_EXPORT GLboolean __WGLEW_OML_sync_control;
1426 | /* ------------------------------------------------------------------------- */
1427 |
1428 | GLEWAPI GLenum GLEWAPIENTRY wglewInit ();
1429 | GLEWAPI GLboolean GLEWAPIENTRY wglewIsSupported (const char *name);
1430 |
1431 | #ifndef WGLEW_GET_VAR
1432 | #define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
1433 | #endif
1434 |
1435 | #ifndef WGLEW_GET_FUN
1436 | #define WGLEW_GET_FUN(x) x
1437 | #endif
1438 |
1439 | GLEWAPI GLboolean GLEWAPIENTRY wglewGetExtension (const char *name);
1440 |
1441 | #ifdef __cplusplus
1442 | }
1443 | #endif
1444 |
1445 | #undef GLEWAPI
1446 |
1447 | #endif /* __wglew_h__ */
1448 |
--------------------------------------------------------------------------------
/common_VS2017/common/GLFW/glfw3native.h:
--------------------------------------------------------------------------------
1 | /*************************************************************************
2 | * GLFW 3.2 - www.glfw.org
3 | * A library for OpenGL, window and input
4 | *------------------------------------------------------------------------
5 | * Copyright (c) 2002-2006 Marcus Geelnard
6 | * Copyright (c) 2006-2016 Camilla Berglund
7 | *
8 | * This software is provided 'as-is', without any express or implied
9 | * warranty. In no event will the authors be held liable for any damages
10 | * arising from the use of this software.
11 | *
12 | * Permission is granted to anyone to use this software for any purpose,
13 | * including commercial applications, and to alter it and redistribute it
14 | * freely, subject to the following restrictions:
15 | *
16 | * 1. The origin of this software must not be misrepresented; you must not
17 | * claim that you wrote the original software. If you use this software
18 | * in a product, an acknowledgment in the product documentation would
19 | * be appreciated but is not required.
20 | *
21 | * 2. Altered source versions must be plainly marked as such, and must not
22 | * be misrepresented as being the original software.
23 | *
24 | * 3. This notice may not be removed or altered from any source
25 | * distribution.
26 | *
27 | *************************************************************************/
28 |
29 | #ifndef _glfw3_native_h_
30 | #define _glfw3_native_h_
31 |
32 | #ifdef __cplusplus
33 | extern "C" {
34 | #endif
35 |
36 |
37 | /*************************************************************************
38 | * Doxygen documentation
39 | *************************************************************************/
40 |
41 | /*! @file glfw3native.h
42 | * @brief The header of the native access functions.
43 | *
44 | * This is the header file of the native access functions. See @ref native for
45 | * more information.
46 | */
47 | /*! @defgroup native Native access
48 | *
49 | * **By using the native access functions you assert that you know what you're
50 | * doing and how to fix problems caused by using them. If you don't, you
51 | * shouldn't be using them.**
52 | *
53 | * Before the inclusion of @ref glfw3native.h, you may define exactly one
54 | * window system API macro and zero or more context creation API macros.
55 | *
56 | * The chosen backends must match those the library was compiled for. Failure
57 | * to do this will cause a link-time error.
58 | *
59 | * The available window API macros are:
60 | * * `GLFW_EXPOSE_NATIVE_WIN32`
61 | * * `GLFW_EXPOSE_NATIVE_COCOA`
62 | * * `GLFW_EXPOSE_NATIVE_X11`
63 | * * `GLFW_EXPOSE_NATIVE_WAYLAND`
64 | * * `GLFW_EXPOSE_NATIVE_MIR`
65 | *
66 | * The available context API macros are:
67 | * * `GLFW_EXPOSE_NATIVE_WGL`
68 | * * `GLFW_EXPOSE_NATIVE_NSGL`
69 | * * `GLFW_EXPOSE_NATIVE_GLX`
70 | * * `GLFW_EXPOSE_NATIVE_EGL`
71 | *
72 | * These macros select which of the native access functions that are declared
73 | * and which platform-specific headers to include. It is then up your (by
74 | * definition platform-specific) code to handle which of these should be
75 | * defined.
76 | */
77 |
78 |
79 | /*************************************************************************
80 | * System headers and types
81 | *************************************************************************/
82 |
83 | #if defined(GLFW_EXPOSE_NATIVE_WIN32)
84 | // This is a workaround for the fact that glfw3.h needs to export APIENTRY (for
85 | // example to allow applications to correctly declare a GL_ARB_debug_output
86 | // callback) but windows.h assumes no one will define APIENTRY before it does
87 | #undef APIENTRY
88 | #include
89 | #elif defined(GLFW_EXPOSE_NATIVE_COCOA)
90 | #include
91 | #if defined(__OBJC__)
92 | #import
93 | #else
94 | typedef void* id;
95 | #endif
96 | #elif defined(GLFW_EXPOSE_NATIVE_X11)
97 | #include
98 | #include
99 | #elif defined(GLFW_EXPOSE_NATIVE_WAYLAND)
100 | #include
101 | #elif defined(GLFW_EXPOSE_NATIVE_MIR)
102 | #include
103 | #endif
104 |
105 | #if defined(GLFW_EXPOSE_NATIVE_WGL)
106 | /* WGL is declared by windows.h */
107 | #endif
108 | #if defined(GLFW_EXPOSE_NATIVE_NSGL)
109 | /* NSGL is declared by Cocoa.h */
110 | #endif
111 | #if defined(GLFW_EXPOSE_NATIVE_GLX)
112 | #include
113 | #endif
114 | #if defined(GLFW_EXPOSE_NATIVE_EGL)
115 | #include
116 | #endif
117 |
118 |
119 | /*************************************************************************
120 | * Functions
121 | *************************************************************************/
122 |
123 | #if defined(GLFW_EXPOSE_NATIVE_WIN32)
124 | /*! @brief Returns the adapter device name of the specified monitor.
125 | *
126 | * @return The UTF-8 encoded adapter device name (for example `\\.\DISPLAY1`)
127 | * of the specified monitor, or `NULL` if an [error](@ref error_handling)
128 | * occurred.
129 | *
130 | * @thread_safety This function may be called from any thread. Access is not
131 | * synchronized.
132 | *
133 | * @since Added in version 3.1.
134 | *
135 | * @ingroup native
136 | */
137 | GLFWAPI const char* glfwGetWin32Adapter(GLFWmonitor* monitor);
138 |
139 | /*! @brief Returns the display device name of the specified monitor.
140 | *
141 | * @return The UTF-8 encoded display device name (for example
142 | * `\\.\DISPLAY1\Monitor0`) of the specified monitor, or `NULL` if an
143 | * [error](@ref error_handling) occurred.
144 | *
145 | * @thread_safety This function may be called from any thread. Access is not
146 | * synchronized.
147 | *
148 | * @since Added in version 3.1.
149 | *
150 | * @ingroup native
151 | */
152 | GLFWAPI const char* glfwGetWin32Monitor(GLFWmonitor* monitor);
153 |
154 | /*! @brief Returns the `HWND` of the specified window.
155 | *
156 | * @return The `HWND` of the specified window, or `NULL` if an
157 | * [error](@ref error_handling) occurred.
158 | *
159 | * @thread_safety This function may be called from any thread. Access is not
160 | * synchronized.
161 | *
162 | * @since Added in version 3.0.
163 | *
164 | * @ingroup native
165 | */
166 | GLFWAPI HWND glfwGetWin32Window(GLFWwindow* window);
167 | #endif
168 |
169 | #if defined(GLFW_EXPOSE_NATIVE_WGL)
170 | /*! @brief Returns the `HGLRC` of the specified window.
171 | *
172 | * @return The `HGLRC` of the specified window, or `NULL` if an
173 | * [error](@ref error_handling) occurred.
174 | *
175 | * @thread_safety This function may be called from any thread. Access is not
176 | * synchronized.
177 | *
178 | * @since Added in version 3.0.
179 | *
180 | * @ingroup native
181 | */
182 | GLFWAPI HGLRC glfwGetWGLContext(GLFWwindow* window);
183 | #endif
184 |
185 | #if defined(GLFW_EXPOSE_NATIVE_COCOA)
186 | /*! @brief Returns the `CGDirectDisplayID` of the specified monitor.
187 | *
188 | * @return The `CGDirectDisplayID` of the specified monitor, or
189 | * `kCGNullDirectDisplay` if an [error](@ref error_handling) occurred.
190 | *
191 | * @thread_safety This function may be called from any thread. Access is not
192 | * synchronized.
193 | *
194 | * @since Added in version 3.1.
195 | *
196 | * @ingroup native
197 | */
198 | GLFWAPI CGDirectDisplayID glfwGetCocoaMonitor(GLFWmonitor* monitor);
199 |
200 | /*! @brief Returns the `NSWindow` of the specified window.
201 | *
202 | * @return The `NSWindow` of the specified window, or `nil` if an
203 | * [error](@ref error_handling) occurred.
204 | *
205 | * @thread_safety This function may be called from any thread. Access is not
206 | * synchronized.
207 | *
208 | * @since Added in version 3.0.
209 | *
210 | * @ingroup native
211 | */
212 | GLFWAPI id glfwGetCocoaWindow(GLFWwindow* window);
213 | #endif
214 |
215 | #if defined(GLFW_EXPOSE_NATIVE_NSGL)
216 | /*! @brief Returns the `NSOpenGLContext` of the specified window.
217 | *
218 | * @return The `NSOpenGLContext` of the specified window, or `nil` if an
219 | * [error](@ref error_handling) occurred.
220 | *
221 | * @thread_safety This function may be called from any thread. Access is not
222 | * synchronized.
223 | *
224 | * @since Added in version 3.0.
225 | *
226 | * @ingroup native
227 | */
228 | GLFWAPI id glfwGetNSGLContext(GLFWwindow* window);
229 | #endif
230 |
231 | #if defined(GLFW_EXPOSE_NATIVE_X11)
232 | /*! @brief Returns the `Display` used by GLFW.
233 | *
234 | * @return The `Display` used by GLFW, or `NULL` if an
235 | * [error](@ref error_handling) occurred.
236 | *
237 | * @thread_safety This function may be called from any thread. Access is not
238 | * synchronized.
239 | *
240 | * @since Added in version 3.0.
241 | *
242 | * @ingroup native
243 | */
244 | GLFWAPI Display* glfwGetX11Display(void);
245 |
246 | /*! @brief Returns the `RRCrtc` of the specified monitor.
247 | *
248 | * @return The `RRCrtc` of the specified monitor, or `None` if an
249 | * [error](@ref error_handling) occurred.
250 | *
251 | * @thread_safety This function may be called from any thread. Access is not
252 | * synchronized.
253 | *
254 | * @since Added in version 3.1.
255 | *
256 | * @ingroup native
257 | */
258 | GLFWAPI RRCrtc glfwGetX11Adapter(GLFWmonitor* monitor);
259 |
260 | /*! @brief Returns the `RROutput` of the specified monitor.
261 | *
262 | * @return The `RROutput` of the specified monitor, or `None` if an
263 | * [error](@ref error_handling) occurred.
264 | *
265 | * @thread_safety This function may be called from any thread. Access is not
266 | * synchronized.
267 | *
268 | * @since Added in version 3.1.
269 | *
270 | * @ingroup native
271 | */
272 | GLFWAPI RROutput glfwGetX11Monitor(GLFWmonitor* monitor);
273 |
274 | /*! @brief Returns the `Window` of the specified window.
275 | *
276 | * @return The `Window` of the specified window, or `None` if an
277 | * [error](@ref error_handling) occurred.
278 | *
279 | * @thread_safety This function may be called from any thread. Access is not
280 | * synchronized.
281 | *
282 | * @since Added in version 3.0.
283 | *
284 | * @ingroup native
285 | */
286 | GLFWAPI Window glfwGetX11Window(GLFWwindow* window);
287 | #endif
288 |
289 | #if defined(GLFW_EXPOSE_NATIVE_GLX)
290 | /*! @brief Returns the `GLXContext` of the specified window.
291 | *
292 | * @return The `GLXContext` of the specified window, or `NULL` if an
293 | * [error](@ref error_handling) occurred.
294 | *
295 | * @thread_safety This function may be called from any thread. Access is not
296 | * synchronized.
297 | *
298 | * @since Added in version 3.0.
299 | *
300 | * @ingroup native
301 | */
302 | GLFWAPI GLXContext glfwGetGLXContext(GLFWwindow* window);
303 |
304 | /*! @brief Returns the `GLXWindow` of the specified window.
305 | *
306 | * @return The `GLXWindow` of the specified window, or `None` if an
307 | * [error](@ref error_handling) occurred.
308 | *
309 | * @thread_safety This function may be called from any thread. Access is not
310 | * synchronized.
311 | *
312 | * @since Added in version 3.2.
313 | *
314 | * @ingroup native
315 | */
316 | GLFWAPI GLXWindow glfwGetGLXWindow(GLFWwindow* window);
317 | #endif
318 |
319 | #if defined(GLFW_EXPOSE_NATIVE_WAYLAND)
320 | /*! @brief Returns the `struct wl_display*` used by GLFW.
321 | *
322 | * @return The `struct wl_display*` used by GLFW, or `NULL` if an
323 | * [error](@ref error_handling) occurred.
324 | *
325 | * @thread_safety This function may be called from any thread. Access is not
326 | * synchronized.
327 | *
328 | * @since Added in version 3.2.
329 | *
330 | * @ingroup native
331 | */
332 | GLFWAPI struct wl_display* glfwGetWaylandDisplay(void);
333 |
334 | /*! @brief Returns the `struct wl_output*` of the specified monitor.
335 | *
336 | * @return The `struct wl_output*` of the specified monitor, or `NULL` if an
337 | * [error](@ref error_handling) occurred.
338 | *
339 | * @thread_safety This function may be called from any thread. Access is not
340 | * synchronized.
341 | *
342 | * @since Added in version 3.2.
343 | *
344 | * @ingroup native
345 | */
346 | GLFWAPI struct wl_output* glfwGetWaylandMonitor(GLFWmonitor* monitor);
347 |
348 | /*! @brief Returns the main `struct wl_surface*` of the specified window.
349 | *
350 | * @return The main `struct wl_surface*` of the specified window, or `NULL` if
351 | * an [error](@ref error_handling) occurred.
352 | *
353 | * @thread_safety This function may be called from any thread. Access is not
354 | * synchronized.
355 | *
356 | * @since Added in version 3.2.
357 | *
358 | * @ingroup native
359 | */
360 | GLFWAPI struct wl_surface* glfwGetWaylandWindow(GLFWwindow* window);
361 | #endif
362 |
363 | #if defined(GLFW_EXPOSE_NATIVE_MIR)
364 | /*! @brief Returns the `MirConnection*` used by GLFW.
365 | *
366 | * @return The `MirConnection*` used by GLFW, or `NULL` if an
367 | * [error](@ref error_handling) occurred.
368 | *
369 | * @thread_safety This function may be called from any thread. Access is not
370 | * synchronized.
371 | *
372 | * @since Added in version 3.2.
373 | *
374 | * @ingroup native
375 | */
376 | GLFWAPI MirConnection* glfwGetMirDisplay(void);
377 |
378 | /*! @brief Returns the Mir output ID of the specified monitor.
379 | *
380 | * @return The Mir output ID of the specified monitor, or zero if an
381 | * [error](@ref error_handling) occurred.
382 | *
383 | * @thread_safety This function may be called from any thread. Access is not
384 | * synchronized.
385 | *
386 | * @since Added in version 3.2.
387 | *
388 | * @ingroup native
389 | */
390 | GLFWAPI int glfwGetMirMonitor(GLFWmonitor* monitor);
391 |
392 | /*! @brief Returns the `MirSurface*` of the specified window.
393 | *
394 | * @return The `MirSurface*` of the specified window, or `NULL` if an
395 | * [error](@ref error_handling) occurred.
396 | *
397 | * @thread_safety This function may be called from any thread. Access is not
398 | * synchronized.
399 | *
400 | * @since Added in version 3.2.
401 | *
402 | * @ingroup native
403 | */
404 | GLFWAPI MirSurface* glfwGetMirWindow(GLFWwindow* window);
405 | #endif
406 |
407 | #if defined(GLFW_EXPOSE_NATIVE_EGL)
408 | /*! @brief Returns the `EGLDisplay` used by GLFW.
409 | *
410 | * @return The `EGLDisplay` used by GLFW, or `EGL_NO_DISPLAY` if an
411 | * [error](@ref error_handling) occurred.
412 | *
413 | * @thread_safety This function may be called from any thread. Access is not
414 | * synchronized.
415 | *
416 | * @since Added in version 3.0.
417 | *
418 | * @ingroup native
419 | */
420 | GLFWAPI EGLDisplay glfwGetEGLDisplay(void);
421 |
422 | /*! @brief Returns the `EGLContext` of the specified window.
423 | *
424 | * @return The `EGLContext` of the specified window, or `EGL_NO_CONTEXT` if an
425 | * [error](@ref error_handling) occurred.
426 | *
427 | * @thread_safety This function may be called from any thread. Access is not
428 | * synchronized.
429 | *
430 | * @since Added in version 3.0.
431 | *
432 | * @ingroup native
433 | */
434 | GLFWAPI EGLContext glfwGetEGLContext(GLFWwindow* window);
435 |
436 | /*! @brief Returns the `EGLSurface` of the specified window.
437 | *
438 | * @return The `EGLSurface` of the specified window, or `EGL_NO_SURFACE` if an
439 | * [error](@ref error_handling) occurred.
440 | *
441 | * @thread_safety This function may be called from any thread. Access is not
442 | * synchronized.
443 | *
444 | * @since Added in version 3.0.
445 | *
446 | * @ingroup native
447 | */
448 | GLFWAPI EGLSurface glfwGetEGLSurface(GLFWwindow* window);
449 | #endif
450 |
451 | #ifdef __cplusplus
452 | }
453 | #endif
454 |
455 | #endif /* _glfw3_native_h_ */
456 |
457 |
--------------------------------------------------------------------------------
/common_VS2017/common/glew32.exp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glew32.exp
--------------------------------------------------------------------------------
/common_VS2017/common/glew32.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glew32.lib
--------------------------------------------------------------------------------
/common_VS2017/common/glew32d.exp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glew32d.exp
--------------------------------------------------------------------------------
/common_VS2017/common/glew32d.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glew32d.lib
--------------------------------------------------------------------------------
/common_VS2017/common/glew32s.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glew32s.lib
--------------------------------------------------------------------------------
/common_VS2017/common/glew32sd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glew32sd.lib
--------------------------------------------------------------------------------
/common_VS2017/common/glfw3.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PacktPublishing/Learn-Modern-OpenGL-Programming/1228c01e42bc9125622f2f0e76284d69ec93d310/common_VS2017/common/glfw3.lib
--------------------------------------------------------------------------------