Full Code of leecbaker/datareftool for AI

master a2b238838a13 cached
130 files
3.8 MB
991.0k tokens
1790 symbols
1 requests
Download .txt
Showing preview only (3,963K chars total). Download the full file or copy to clipboard to get everything.
Repository: leecbaker/datareftool
Branch: master
Commit: a2b238838a13
Files: 130
Total size: 3.8 MB

Directory structure:
gitextract_gjnt3x0x/

├── .github/
│   └── workflows/
│       └── build.yml
├── .gitignore
├── .gitmodules
├── .vscode/
│   └── c_cpp_properties.json
├── CMakeLists.txt
├── CNAME
├── INSTALL.txt
├── LICENSE
├── README.md
├── _config.yml
├── doc/
│   └── API.md
├── lib/
│   ├── CMakeLists.txt
│   ├── clipboard/
│   │   ├── CMakeLists.txt
│   │   ├── clipboard.h
│   │   ├── clipboard_linux.cpp
│   │   ├── clipboard_mac.mm
│   │   └── clipboard_win.cpp
│   ├── glew/
│   │   ├── CMakeLists.txt
│   │   ├── eglew.h
│   │   ├── glew.c
│   │   ├── glew.h
│   │   ├── glxew.h
│   │   └── wglew.h
│   ├── lb_xplane/
│   │   ├── CMakeLists.txt
│   │   ├── command.h
│   │   ├── command_provider.cpp
│   │   ├── command_provider.h
│   │   ├── dataref.h
│   │   ├── dataref_provider.h
│   │   ├── flight_loop.h
│   │   ├── logging.cpp
│   │   ├── logging.h
│   │   ├── menus.cpp
│   │   └── menus.h
│   ├── lb_xplane_ui/
│   │   ├── CMakeLists.txt
│   │   ├── container/
│   │   │   ├── container.cpp
│   │   │   ├── container.h
│   │   │   ├── scroll.cpp
│   │   │   ├── scroll.h
│   │   │   ├── single_axis_layout.cpp
│   │   │   └── single_axis_layout.h
│   │   ├── containers.h
│   │   ├── draw_basic.cpp
│   │   ├── draw_basic.h
│   │   ├── geometry.h
│   │   ├── gl_utils.cpp
│   │   ├── gl_utils.h
│   │   ├── layout_object.cpp
│   │   ├── layout_object.h
│   │   ├── widgets/
│   │   │   ├── button.cpp
│   │   │   ├── button.h
│   │   │   ├── horizontal_bar.cpp
│   │   │   ├── horizontal_bar.h
│   │   │   ├── image.cpp
│   │   │   ├── image.h
│   │   │   ├── progress.cpp
│   │   │   ├── progress.h
│   │   │   ├── scroll_bar.cpp
│   │   │   ├── scroll_bar.h
│   │   │   ├── spacer.h
│   │   │   ├── text.cpp
│   │   │   ├── text.h
│   │   │   ├── text_field.cpp
│   │   │   ├── text_field.h
│   │   │   └── widget.h
│   │   ├── widgets.h
│   │   ├── window11.cpp
│   │   └── window11.h
│   ├── mio/
│   │   ├── CMakeLists.txt
│   │   ├── README.md
│   │   └── include/
│   │       └── mio.hpp
│   └── nlohmann/
│       └── json.hpp
├── make_release_zip.sh
├── scripts/
│   └── make_keychain.sh
└── src/
    ├── CMakeLists.txt
    ├── drt_client/
    │   ├── CMakeLists.txt
    │   ├── drt_client.c
    │   ├── drt_client.h
    │   ├── example_queries.c
    │   ├── example_queries.h
    │   └── plugin.c
    ├── libdrt/
    │   ├── CMakeLists.txt
    │   ├── scan/
    │   │   ├── deduplicate_vector.h
    │   │   ├── scan_entity.cpp
    │   │   ├── scan_entity.h
    │   │   ├── scan_files.cpp
    │   │   └── scan_files.h
    │   ├── search/
    │   │   ├── allrefs.cpp
    │   │   ├── allrefs.h
    │   │   ├── commandref.cpp
    │   │   ├── commandref.h
    │   │   ├── dataref.cpp
    │   │   ├── dataref.h
    │   │   ├── ref.cpp
    │   │   ├── ref.h
    │   │   ├── search.cpp
    │   │   └── search.h
    │   └── util/
    │       ├── string_util.cpp
    │       ├── string_util.h
    │       └── visit_backport.h
    └── plugin/
        ├── CMakeLists.txt
        ├── drt_datarefs.cpp
        ├── drt_datarefs.h
        ├── drt_plugin.cpp
        ├── drt_plugin.h
        ├── internal_dataref_list.cpp
        ├── internal_dataref_list.h
        ├── next_flight_loop_callback.h
        ├── plugin.cpp
        ├── plugin.h
        ├── plugin_menu.cpp
        ├── plugin_menu.h
        ├── prefs.cpp
        ├── prefs.h
        ├── search_api.cpp
        ├── search_api.h
        ├── threaded_scanner.cpp
        ├── threaded_scanner.h
        └── ui/
            ├── about_window.cpp
            ├── about_window.h
            ├── commandref_window.cpp
            ├── commandref_window.h
            ├── dataref_edit_panel.cpp
            ├── dataref_edit_panel.h
            ├── dataref_window.cpp
            ├── dataref_window.h
            ├── search_window.cpp
            ├── search_window.h
            ├── selectable_list.cpp
            └── selectable_list.h

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/workflows/build.yml
================================================
name: Compile

on: [push]

jobs:
  build-mac:
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@v2
        with:
          submodules: recursive
      - name: Developer certificate
        env:
          CERTIFICATE: ${{ secrets.APPLE_SIGNING_CERTIFICATE }}
          CERTIFICATE_PASSWORD: ${{ secrets.APPLE_SIGNING_CERTIFICATE_PASSWORD }}
        run: ./scripts/make_keychain.sh
      - name: Install boost
        env:
          HOMEBREW_NO_INSTALL_CLEANUP: 1
        run: brew install boost ninja
      - name: CMake
        run: |
          mkdir -p build
          cd build && cmake -DCMAKE_BUILD_TYPE=Release -G Ninja ..; cd ..
      - name: Build
        run: ninja -v -C build
      - name: Code signing
        run: |
          codesign --sign "Lee Baker" --verbose=4 build/src/plugin/mac.xpl
          codesign --sign "Lee Baker" --verbose=4 build/src/plugin/datareftool.xpl
          codesign --display --verbose=4 build/src/plugin/mac.xpl
          codesign --display --verbose=4 build/src/plugin/datareftool.xpl
      - uses: actions/upload-artifact@master
        with:
          name: drt_mac_xp10
          path: build/src/plugin/mac.xpl
      - uses: actions/upload-artifact@master
        with:
          name: drt_mac_xp11
          path: build/src/plugin/datareftool.xpl
      - name: Dependencies
        run: |
          otool -L build/src/plugin/mac.xpl
          otool -L build/src/plugin/datareftool.xpl

  build-lin:
    runs-on: ubuntu-18.04
    steps:
      - name: Install dependencies
        run: |
          sudo apt-get update -qq
          sudo apt-get install -y cmake libx11-dev libbz2-dev libgl-dev libglu1-mesa-dev ninja-build
      - uses: actions/checkout@v2
        with:
          submodules: recursive
      - name: CMake
        env:
          CC: gcc-10
          CXX: g++-10
        run: |
          mkdir -p build
          cd build && cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ..; cd ..
      - name: Build
        run: ninja -v -C build
      - uses: actions/upload-artifact@master
        with:
          name: drt_lin_xp10
          path: build/src/plugin/lin.xpl
      - uses: actions/upload-artifact@master
        with:
          name: drt_lin_xp11
          path: build/src/plugin/datareftool.xpl
      - name: Dependencies
        run: |
          ldd build/src/plugin/lin.xpl
          ldd build/src/plugin/datareftool.xpl

  build-win:
    runs-on: windows-latest
    steps:
      - name: Install dependencies
        run: vcpkg install libpng:x64-windows-static
      - uses: actions/checkout@v2
        with:
          submodules: recursive
      - name: Prebuild
        run: mkdir -p build
      - name: CMake
        working-directory: build
        shell: cmd
        run: cmake -G "Visual Studio 16 2019" -DVCPKG_TARGET_TRIPLET=x64-windows-static -A x64 -DCMAKE_TOOLCHAIN_FILE=c:/vcpkg/scripts/buildsystems/vcpkg.cmake ..
      - name: Setup MSBuild.exe
        uses: microsoft/setup-msbuild@v1.0.2

      - name: MSBuild
        working-directory: build
        shell: cmd
        run: msbuild /p:Configuration=Release ALL_BUILD.vcxproj

      - uses: actions/upload-artifact@master
        with:
          name: drt_win_xp10
          path: build/src/plugin/Release/win.xpl
      - uses: actions/upload-artifact@master
        with:
          name: drt_win_xp11
          path: build/src/plugin/Release/datareftool.xpl
      - name: Dependencies
        shell: cmd
        run: |
          call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
          dumpbin.exe /dependents build/src/plugin/Release/win.xpl
          dumpbin.exe /dependents build/src/plugin/Release/datareftool.xpl

  build-zip:
    runs-on: macos-latest
    needs: [build-mac, build-lin, build-win]
    steps:
      - name: Install dependencies
        env:
          HOMEBREW_NO_INSTALL_CLEANUP: 1
        run: brew install tree
      - uses: actions/checkout@v2
      - name: Create directories
        run: |
          mkdir -p xp10/64
          mkdir -p xp11/64
      - uses: actions/download-artifact@master
        with:
          name: drt_lin_xp10
          path: xp10/64/
      - uses: actions/download-artifact@master
        with:
          name: drt_lin_xp11
          path: xp11/lin_x64/
      - uses: actions/download-artifact@master
        with:
          name: drt_mac_xp10
          path: xp10/64/
      - uses: actions/download-artifact@master
        with:
          name: drt_mac_xp11
          path: xp11/mac_x64/
      - uses: actions/download-artifact@master
        with:
          name: drt_win_xp10
          path: xp10/64/
      - uses: actions/download-artifact@master
        with:
          name: drt_win_xp11
          path: xp11/win_x64/
      - name: Zip the distribution
        run: |
          tree xp10/
          tree xp11/
          mv xp11/lin_x64/datareftool.xpl xp11/64/lin.xpl
          mv xp11/mac_x64/datareftool.xpl xp11/64/mac.xpl
          mv xp11/win_x64/datareftool.xpl xp11/64/win.xpl
          rmdir xp11/lin_x64 xp11/mac_x64 xp11/win_x64
          mv xp10/ DataRefTool_XP10_`date +%Y_%m_%d`
          mv xp11/ DataRefTool_XP11_`date +%Y_%m_%d`
          zip -r DataRefTool_build.zip DataRefTool_XP10_`date +%Y_%m_%d`/64/ DataRefTool_XP11_`date +%Y_%m_%d`/64/ LICENSE INSTALL.txt
          unzip -l DataRefTool_build.zip
      - name: Notarize ZIP
        run: xcrun altool --notarize-app --primary-bundle-id "com.leecbaker.datareftool.zip" --username "lee@leecbaker.com" --password "${{ secrets. APP_STORE_CONNECT_PASSWORD }}" --file DataRefTool_build.zip
      - uses: actions/upload-artifact@master
        with:
          name: datareftool_build
          path: DataRefTool_build.zip


================================================
FILE: .gitignore
================================================
# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

# Build directories
build/*
debug/*
bin/*
xcode/*
.vscode/ipch


================================================
FILE: .gitmodules
================================================
[submodule "lib/lb_common"]
	path = lib/lb_common
	url = https://github.com/leecbaker/lb_common.git
[submodule "lib/json"]
	path = lib/json
	url = https://github.com/nlohmann/json.git
[submodule "lib/xplane_sdk"]
	path = lib/xplane_sdk
	url = https://github.com/leecbaker/xplane_sdk.git


================================================
FILE: .vscode/c_cpp_properties.json
================================================
{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/usr/bin/clang",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "clang-x64",
            "compileCommands": "${workspaceFolder}/build/compile_commands.json"
        }
    ],
    "version": 4
}

================================================
FILE: CMakeLists.txt
================================================
cmake_policy(VERSION 3.15)

project(datareftool LANGUAGES C CXX VERSION 2.0.0)

cmake_minimum_required(VERSION 3.15)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

if(APPLE)
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wshadow -ftemplate-backtrace-limit=0 -ferror-limit=100")
endif()

if(WIN32)
    add_compile_definitions(NOMINMAX)
endif()

add_subdirectory(lib)
add_subdirectory(src)



================================================
FILE: CNAME
================================================
datareftool.com

================================================
FILE: INSTALL.txt
================================================
DataRefTool Install Instructions

By Lee Baker
datareftool.com

DOWNLOADING

To download DRT, please visit datareftool.com and click the link there, or visit https://github.com/leecbaker/datareftool/releases to see get the latest released version.

INSTALLING

To install the plugin, download the latest release. Unzip the files, and copy the `DataRefTool_XP11_2021_??_??` to your plugins directory `X-Plane 11/Resources/plugins/`. Make sure to choose the XP11 version for X-Plane 11, or XP10 for X-Plane 10.

SUPPORT

DataRefTool is provided as a free tool to the community, with the hope that it's helpful. There's a discussion thread at the X-Plane.org forums where you can post a question (or answer someone else's question!). The thread can be found at https://forums.x-plane.org/index.php?/forums/topic/82960-datareftool-is-an-improved-datarefeditor-open-source-better-search-change-detection/

If you would like to report a bug, you can do so at https://github.com/leecbaker/datareftool/issues . Please search the existing bug reports to make sure that you aren't duplicating one that already exists.


================================================
FILE: LICENSE
================================================
The MIT License (MIT)

Copyright (c) 2015-2021 Lee Baker

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



================================================
FILE: README.md
================================================
# DataRefTool has moved to DataRefTool.com

All future activity will be at [DataRefTool.com](https://datareftool.com).

This github repo contains DRT version 1, which is compatible with X-Plane 10 and 11, and remains only as an archive. No further development will be tracked here, and I won't be reading any new Issues or Pull Requests.

---

### Data Ref Tool for X-Plane plugin development

**[Download from GitHub](https://github.com/leecbaker/datareftool/releases)**

[![Compile status](https://github.com/leecbaker/datareftool/workflows/Compile/badge.svg)](https://github.com/leecbaker/datareftool/actions)

DRT is an X-plane plugin intended to replacement for Sandy Barbour's Data Ref Editor (DRE). While the core functionality is much the same, many features are improved to make the experience nicer:

* Case insensitive search option
* Regex search option
* Only show datarefs that have changed recently
* Easier to deselect the search field
* Better display of array data

DRT is a work in progress; code contributions are welcome.

![Screenshot of data ref tool](doc/datareftool.png)

## Feature list

* Read, write, and search for datarefs
* Search for and execute commands
* Case insensitive search
* Regex search
* Supports Windows/Linux/Mac on X-Plane 10 and 11
* Filter only recently changed datarefs, and color datarefs that recently changed
* Displays all data types
* Display multiple elements of an array at once
* Make it easy to deselect the search field (unlike DRE). Use enter, return, escape, or tab, or click elsewhere in the DRT window.
* Cut/copy/paste/select all in search field and for datarefs (uses standard keyboard shortcuts)
* Multiple DRT windows viewable at once

## How to install

To install the plugin, download the latest release [on this page](https://github.com/leecbaker/datareftool/releases). Unzip the files, and copy the `DataRefTool_XP11_2020_12_06` to your plugins directory `X-Plane 11/Resources/plugins/`. Make sure to choose the XP11 version for X-Plane 11, or XP10 for X-Plane 10.

## Frequently Asked Questions

### FAQ: What are the keyboard shortcuts?

Glad you asked!

In general, normal text editing shortcuts are respected:

* Ctrl-X / ⌘-X : cut
* Ctrl-C / ⌘-C : copy
* Ctrl-V / ⌘-V : paste
* Ctrl-A / ⌘-A : select all

In the search window, there are some additional things you can do:

* Ctrl-N / ⌘-N : open a new search window
* Ctrl-W / ⌘-W : close current window
* Tab / shift-tab : switch between search field and results

Search field:

* Ctrl-F / ⌘-F or Ctrl-L / ⌘-L : go to the search field
* Ctrl-alt-C / ⌥⌘-C : Toggle Change detection
* Ctrl-alt-I / ⌥⌘-I : Toggle case-Insensitive search
* Ctrl-alt-R / ⌥⌘-R : Toggle Regex search
* Ctrl-alt-S / ⌥⌘-S : Toggle Source (dataref/command/all)

Search results:

* Enter/return : open details window for the current dataref/command
* Ctrl-C / ⌘-C: Copy currently-selected dataref name
* Ctrl-alt-C / ⌘⌥-C : Copy currently-selected dataref value
* Type a number : Set new value for currently-selected scalar dataref (int/float/double only)
* Space: activate current command
* J/K or up/down arrow : Go up or down in the list (like vim)

If you want additional keyboard shortcuts (to open a search window, for instance) these can be added by searching for "datareftool" in X-Plane's keyboard settings.

### FAQ: DRT can't find my dataref

DRT scans files to find datarefs. This might not work if your dataref is in an encrypted Lua file or something, so you have several options:

* If this is an aircraft, add a file called "dataref.txt" inside your aircraft directory with a list of datarefs and commands, one on each line
* Have your plugin send DRT a message with as described above in "Adding custom datarefs"
* Turn on "Impersonate DataRefEditor" on the plugin menu inside X-Plane. Before you do this, ensure that the DataRefEditor plugin is not installed. This way, X-Plane itself will tell DRT about all datarefs it knows about.

### FAQ: Using DRT causes X-Plane to crash

DRT reads every dataref published by every aircraft and plugin, on every frame of the simulation. Sometimes, they haven't fully been debugged, and may crash. (If you're a developer, the best way to do this is to run X-Plane in a debugger and look at the backtrace of the crash- if you see RefRecords::update() in the backtrace, this is likely what happened.)

If you can figure out which dataref caused the crash, the best way to work around this is to add the name of the dataref to a file called `X-Plane 11/Resources/plugins/drt_ignore.txt`. This will cause DRT to never read the value of the dataref, even if it does come up in search results.

### FAQ: Using DRT with the Bell 407 causes X-Plane to crash

If you're flying the Bell 407, there is a known issue with this aircraft where reading some datarefs triggers an immediate crash. To work around this, create a file called `X-Plane 11/Resources/plugins/drt_ignore.txt`, and add the following lines to the file:

```txt
B407/Lights/CL1
B407/Lights/CL2
B407/Lights/CL3
```

The Bell 407 problem is being tracked in issue #33 in this repository.

### FAQ: DataRefTool causes me to loose FPS! Why?

DRT reads datarefs every frame in order to detect changes to values. This takes time; moreover, it takes time for other plugins and for X-Plane to compute the dataref values (which is what actually takes most of the time). It takes CPU time to actually do what DRT does; this is why you're losing FPS.

Here are the best ways to make sure that DRT is having the smallest impact on your FPS:

1. Close all DRT windows when you aren't using them. DRT does stop reading datarefs completely when all windows are closed; you should not lose any FPS at all when all windows are closed.
2. Ignore datarefs from other plugins that are slow to read. You can do this buy creating a file called `X-Plane 11/Resources/Plugins/drt_ignore.txt`, and list the datarefs you want to ignore there. In X-Plane 11, I'd recommend adding these slow datarefs to the ignore file:

    ```text
    sim/airfoils/afl_cd
    sim/airfoils/afl_cm
    sim/airfoils/afl_cl
    ```

    To identify datarefs that are slow to read, use a CPU profiler (I use X-Code Instruments).

3. Buy a faster CPU! :-) DRT is written in a highly optimized and efficient manner; however, it does a lot of work, and that work takes CPU time.

## Development details

### Compiling DataRefTool

The steps for how to build DRT can be seen in the [Github Actions file](.github/workflows/build.yml). You'll need to follow several steps to install all the necessary dependencies using Homebrew (Mac), vcpkg (Windows) or apt-get (Linux).

### Adding custom datarefs

You can use DRT to display your plugin's custom datarefs. Just send a message of type 0x01000000 with a pointer to the name of the dataref as the payload. There is an example of how to do this in [plugin_custom_dataref.cpp](src/plugin_custom_dataref.cpp). (This is exactly the same method that you use to add a custom dataref to Data Ref Editor.)

### Searching DRT from another plugin

DRT provides an API to allow other plugins to search the dataref list. See [doc/API.md](doc/API.md) for details.

## License

DRT is available under the MIT license. See the LICENSE file for more details.

## Author

DRT is written by Lee C. Baker. If you benefitted from this plugin, please consider purchasing the [PlaneCommand](https://planecommand.com) voice recognition plugin.

© 2017-2021 Lee C. Baker.


================================================
FILE: _config.yml
================================================
theme: jekyll-theme-architect
exclude: ["lib/", "src/"]


================================================
FILE: doc/API.md
================================================
# DataRefTool API

DRT has a search API for 3rd party plugins. With this, other plugins can request a list of commands or datarefs, and perform searches in the same way that a user can in a DRT window.

## Example code

An example plugin is provided in `src/drt_client/`. This plugin queries DRT 5 seconds after the plugin has loaded; it make 5 different searches, writing results out to Log.txt and to some files on the filesystem. Most use cases will match one of the examples in `example_queries.c`.

## Compiling the API

To use DRT's API, copy `src/drt_client/drt_client.h` and `src/drt_client/drt_client.h` into your project. They should compile with any C or C++ compiler.

## Using the API

To search DRT's list of commands and datarefs, you'll need to do the following:

1. Write a callback function for handling search results from DRT (see `DRTSearchResultCallback`)
2. Put your query parameters in to the `DRTSearchParameters` structure
3. Call `DRTPerformSearch()`
4. Check the return value of `DRTPerformSearch()` to ensure that the search was successful

There are several examples of using the API in `src/drt_client/example_queries.c`.

```c
// This function will be called once for every result.
// Refcon is a value that you provide- you can use this to pass information to the
// callback.
// Name is the name of a dataref or command.
void results_callback(void * refcon, const char * name) {
    ...
}

// An example of how to perform a search
void perform_search() {
    DRTSearchParameters search_params;
    search_params.struct_size = sizeof(DRTSearchParameters);
    search_params.refcon = ...; // You can use this to pass data to your
    search_params.callback = results_callback; // The callback defined above

    // Option flags (see drt_client.h). These flags correspond to the buttons in DRT.
    search_params.flags = 
        (DRT_API_SEARCH_DATAREFS | DRT_API_SEARCH_COMMANDS) |
        DRT_API_SEARCH_TERM_CASE_SENSITIVE | 
        DRT_API_DETECT_CHANGES_NONE |
        DRT_API_SEARCH_TERM_TEXT;

    search_params.search_term = ""; // no search term, so you get all results

    // Perform the search itself
    int search_success = DRTPerformSearch(&search_params);

    // Check the return value.
    switch(search_success) {
        case DRT_SEARCH_RESULT_SUCCESS:
            // yay
            break;
        case DRT_SEARCH_RESULT_PLUGIN_NOT_FOUND:
            // DRT is not installed, or an older version of DRT without the search API
            break;
        case DRT_SEARCH_RESULT_INVALID_PARAMETER:
            // One of the values provided in the DRTSearchParameters structure was invalid
            break;
        default:
            // Another return value; none are currently defined.
            break;
    }

    print_search_success(search_success);

    fclose(file_pointer);
}
```


================================================
FILE: lib/CMakeLists.txt
================================================

add_subdirectory(clipboard)
add_subdirectory(json EXCLUDE_FROM_ALL)
add_subdirectory(xplane_sdk)

add_subdirectory(glew)
add_subdirectory(mio)

add_subdirectory(lb_common)

add_subdirectory(lb_xplane) # depends on xplane_sdk, glew, and lb_filesystem (lb_common)
add_subdirectory(lb_xplane_ui) # depends on lb_xplane


================================================
FILE: lib/clipboard/CMakeLists.txt
================================================
if(APPLE)
	FILE(GLOB CLIPBOARD_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*mac.mm")
ELSEIF(WIN32)
	FILE(GLOB CLIPBOARD_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*win.cpp")
ELSE()
	FILE(GLOB CLIPBOARD_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*linux.cpp")
ENDIF()

add_library(clipboard STATIC ${CLIPBOARD_SRC})
target_include_directories(clipboard INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

if(WIN32)
	TARGET_COMPILE_OPTIONS(clipboard PRIVATE "/MT$<$<CONFIG:Debug>:d>")
endif(WIN32)

if(UNIX AND NOT APPLE)
    set_property(TARGET clipboard PROPERTY POSITION_INDEPENDENT_CODE ON)
endif()


================================================
FILE: lib/clipboard/clipboard.h
================================================
#pragma once

#include <string>

std::string getClipboard();
void setClipboard(const std::string & s);


================================================
FILE: lib/clipboard/clipboard_linux.cpp
================================================
#include "clipboard.h"

#include <X11/Xlib.h>
#include <X11/Xatom.h>

#include <iostream>

//implementation from @jason-watkins
std::string getClipboard() {
	std::string result;

	Display* display = XOpenDisplay(nullptr);
	if(display == nullptr) {
		return result;
	}
	// Need a window to pass into the conversion request.
	int black = BlackPixel (display, DefaultScreen (display));
	Window root = XDefaultRootWindow (display);
	Window window = XCreateSimpleWindow (display, root, 0, 0, 1, 1, 0, black, black);
	// Get/create the CLIPBOARD atom.
	// TODO(jason-watkins): Should we really ever create this atom? My limited knowledge of Linux is failing me here.
	Atom clipboard = XInternAtom (display, "CLIPBOARD", False);
	// Get/create an atom to represent datareftool
	Atom prop = XInternAtom(display, "DRT_DATA", False);

	// Request that the clipboard value be converted to a string
	XConvertSelection(display, clipboard, XA_STRING, prop, window, CurrentTime);
	XSync (display, False);

	// Spin several times waiting for the conversion to trigger a SelectionNotify
	// event.
	Bool keep_waiting = True;
	for(int i = 0; keep_waiting && i < 200; ++i)
	{
		XEvent event;
		XNextEvent(display, &event);
		switch (event.type) {
			case SelectionNotify:
				if (event.xselection.selection != clipboard) {
					break;
				}
				if (event.xselection.property == None) {
					keep_waiting = False;
				}
				else {
					int format;
					Atom target;
					unsigned char * value;
					unsigned long length;
					unsigned long bytesafter;
					XGetWindowProperty (event.xselection.display,
						event.xselection.requestor,
						event.xselection.property, 0L, 1000000,
						False, (Atom)AnyPropertyType, &target,
						&format, &length, &bytesafter, &value);
					result = (char *)value;
					XFree(value);
					keep_waiting = False;
					XDeleteProperty (event.xselection.display,
						event.xselection.requestor,
						event.xselection.property);
				}
				break;
			default:
				break;
		}
	}
	XCloseDisplay(display);
	return result;
}

// implementation from @sparker256
void setClipboard(const std::string & s) {
	std::string command = "echo -n " + s + " | xclip -sel c";
	if(0 != system(command.c_str())) {
		std::cerr << "DRT: Copy command failed. Do you have xclip on your system?\n";
	}
}


================================================
FILE: lib/clipboard/clipboard_mac.mm
================================================
#include "clipboard.h"

#import <Appkit/Appkit.h>


std::string getClipboard() {
	NSString * contents = [[NSPasteboard generalPasteboard] stringForType:NSPasteboardTypeString];
	const char * utf8 = [contents UTF8String];
	return std::string(utf8);
}

void setClipboard(const std::string & s) {
	NSString * nss = [NSString stringWithCString:s.c_str() encoding:[NSString defaultCStringEncoding]];
	[[NSPasteboard generalPasteboard] clearContents];
	[[NSPasteboard generalPasteboard] setString:nss forType:NSPasteboardTypeString];
}


================================================
FILE: lib/clipboard/clipboard_win.cpp
================================================
#include <windows.h>

#include "clipboard.h"


std::string getClipboard() {
	std::string ret;

	if (TRUE == OpenClipboard(nullptr)) {
		HANDLE hData = GetClipboardData(CF_TEXT);
		if (nullptr != hData) {
			char * pszText = static_cast<char*>(GlobalLock(hData));
			if (nullptr != pszText) {
				ret.assign(pszText);
			}

			GlobalUnlock(hData);
		}

		CloseClipboard();
	}

	return ret;
}

void setClipboard(const std::string & s) {
	if (TRUE == OpenClipboard(nullptr)) {
		EmptyClipboard();

		HGLOBAL hClipboardData = GlobalAlloc(GMEM_FIXED, s.size() + 1);
		if (nullptr != hClipboardData) {

			char * pchData = (char*)GlobalLock(hClipboardData);
			if (nullptr != pchData) {
				strcpy(pchData, LPCSTR(s.c_str()));

				GlobalUnlock(hClipboardData);

				SetClipboardData(CF_TEXT, hClipboardData);

			}
		}

		CloseClipboard();
	}
}


================================================
FILE: lib/glew/CMakeLists.txt
================================================
add_library(glew STATIC glew.c)
target_compile_definitions(glew PUBLIC GLEW_STATIC)
target_include_directories(glew INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

if(UNIX AND NOT APPLE)
    set_property(TARGET glew PROPERTY POSITION_INDEPENDENT_CODE ON)
endif()

if(APPLE)
    find_library(GL_LIBRARY OpenGL)
    target_link_libraries(glew PUBLIC ${GL_LIBRARY})
endif()

================================================
FILE: lib/glew/eglew.h
================================================
/*
** The OpenGL Extension Wrangler Library
** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>
** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
** Copyright (C) 2002, Lev Povalahev
** All rights reserved.
** 
** Redistribution and use in source and binary forms, with or without 
** modification, are permitted provided that the following conditions are met:
** 
** * Redistributions of source code must retain the above copyright notice, 
**   this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright notice, 
**   this list of conditions and the following disclaimer in the documentation 
**   and/or other materials provided with the distribution.
** * The name of the author may be used to endorse or promote products 
**   derived from this software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
** THE POSSIBILITY OF SUCH DAMAGE.
*/

/*
 * Mesa 3-D graphics library
 * Version:  7.0
 *
 * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a
 * copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included
 * in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */

/*
** Copyright (c) 2007 The Khronos Group Inc.
** 
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
** 
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
** 
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/

#ifndef __eglew_h__
#define __eglew_h__
#define __EGLEW_H__

#ifdef __eglext_h_
#error eglext.h included before eglew.h
#endif

#if defined(__egl_h_)
#error egl.h included before eglew.h
#endif

#define __eglext_h_

#define __egl_h_

#ifndef EGLAPIENTRY
#define EGLAPIENTRY
#endif
#ifndef EGLAPI
#define EGLAPI extern
#endif

/* EGL Types */
#include <sys/types.h>

#include <KHR/khrplatform.h>
#include <EGL/eglplatform.h>

#include "glew.h"

#ifdef __cplusplus
extern "C" {
#endif

typedef int32_t EGLint;

typedef unsigned int EGLBoolean;
typedef void *EGLDisplay;
typedef void *EGLConfig;
typedef void *EGLSurface;
typedef void *EGLContext;
typedef void (*__eglMustCastToProperFunctionPointerType)(void);

typedef unsigned int EGLenum;
typedef void *EGLClientBuffer;

typedef void *EGLSync;
typedef intptr_t EGLAttrib;
typedef khronos_utime_nanoseconds_t EGLTime;
typedef void *EGLImage;

typedef void *EGLSyncKHR;
typedef intptr_t EGLAttribKHR;
typedef void *EGLLabelKHR;
typedef void *EGLObjectKHR;
typedef void (EGLAPIENTRY  *EGLDEBUGPROCKHR)(EGLenum error,const char *command,EGLint messageType,EGLLabelKHR threadLabel,EGLLabelKHR objectLabel,const char* message);
typedef khronos_utime_nanoseconds_t EGLTimeKHR;
typedef void *EGLImageKHR;
typedef void *EGLStreamKHR;
typedef khronos_uint64_t EGLuint64KHR;
typedef int EGLNativeFileDescriptorKHR;
typedef khronos_ssize_t EGLsizeiANDROID;
typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize);
typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize);
typedef void *EGLDeviceEXT;
typedef void *EGLOutputLayerEXT;
typedef void *EGLOutputPortEXT;
typedef void *EGLSyncNV;
typedef khronos_utime_nanoseconds_t EGLTimeNV;
typedef khronos_utime_nanoseconds_t EGLuint64NV;
typedef khronos_stime_nanoseconds_t EGLnsecsANDROID;

struct EGLClientPixmapHI;

#define EGL_DONT_CARE                     ((EGLint)-1)

#define EGL_NO_CONTEXT                    ((EGLContext)0)
#define EGL_NO_DISPLAY                    ((EGLDisplay)0)
#define EGL_NO_IMAGE                      ((EGLImage)0)
#define EGL_NO_SURFACE                    ((EGLSurface)0)
#define EGL_NO_SYNC                       ((EGLSync)0)

#define EGL_UNKNOWN                       ((EGLint)-1)

#define EGL_DEFAULT_DISPLAY               ((EGLNativeDisplayType)0)

EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname);
/* ---------------------------- EGL_VERSION_1_0 ---------------------------- */

#ifndef EGL_VERSION_1_0
#define EGL_VERSION_1_0 1

#define EGL_FALSE 0
#define EGL_PBUFFER_BIT 0x0001
#define EGL_TRUE 1
#define EGL_PIXMAP_BIT 0x0002
#define EGL_WINDOW_BIT 0x0004
#define EGL_SUCCESS 0x3000
#define EGL_NOT_INITIALIZED 0x3001
#define EGL_BAD_ACCESS 0x3002
#define EGL_BAD_ALLOC 0x3003
#define EGL_BAD_ATTRIBUTE 0x3004
#define EGL_BAD_CONFIG 0x3005
#define EGL_BAD_CONTEXT 0x3006
#define EGL_BAD_CURRENT_SURFACE 0x3007
#define EGL_BAD_DISPLAY 0x3008
#define EGL_BAD_MATCH 0x3009
#define EGL_BAD_NATIVE_PIXMAP 0x300A
#define EGL_BAD_NATIVE_WINDOW 0x300B
#define EGL_BAD_PARAMETER 0x300C
#define EGL_BAD_SURFACE 0x300D
#define EGL_BUFFER_SIZE 0x3020
#define EGL_ALPHA_SIZE 0x3021
#define EGL_BLUE_SIZE 0x3022
#define EGL_GREEN_SIZE 0x3023
#define EGL_RED_SIZE 0x3024
#define EGL_DEPTH_SIZE 0x3025
#define EGL_STENCIL_SIZE 0x3026
#define EGL_CONFIG_CAVEAT 0x3027
#define EGL_CONFIG_ID 0x3028
#define EGL_LEVEL 0x3029
#define EGL_MAX_PBUFFER_HEIGHT 0x302A
#define EGL_MAX_PBUFFER_PIXELS 0x302B
#define EGL_MAX_PBUFFER_WIDTH 0x302C
#define EGL_NATIVE_RENDERABLE 0x302D
#define EGL_NATIVE_VISUAL_ID 0x302E
#define EGL_NATIVE_VISUAL_TYPE 0x302F
#define EGL_SAMPLES 0x3031
#define EGL_SAMPLE_BUFFERS 0x3032
#define EGL_SURFACE_TYPE 0x3033
#define EGL_TRANSPARENT_TYPE 0x3034
#define EGL_TRANSPARENT_BLUE_VALUE 0x3035
#define EGL_TRANSPARENT_GREEN_VALUE 0x3036
#define EGL_TRANSPARENT_RED_VALUE 0x3037
#define EGL_NONE 0x3038
#define EGL_SLOW_CONFIG 0x3050
#define EGL_NON_CONFORMANT_CONFIG 0x3051
#define EGL_TRANSPARENT_RGB 0x3052
#define EGL_VENDOR 0x3053
#define EGL_VERSION 0x3054
#define EGL_EXTENSIONS 0x3055
#define EGL_HEIGHT 0x3056
#define EGL_WIDTH 0x3057
#define EGL_LARGEST_PBUFFER 0x3058
#define EGL_DRAW 0x3059
#define EGL_READ 0x305A
#define EGL_CORE_NATIVE_ENGINE 0x305B

typedef EGLBoolean  ( * PFNEGLCHOOSECONFIGPROC) (EGLDisplay  dpy, const EGLint * attrib_list, EGLConfig * configs, EGLint  config_size, EGLint * num_config);
typedef EGLBoolean  ( * PFNEGLCOPYBUFFERSPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLNativePixmapType  target);
typedef EGLContext  ( * PFNEGLCREATECONTEXTPROC) (EGLDisplay  dpy, EGLConfig  config, EGLContext  share_context, const EGLint * attrib_list);
typedef EGLSurface  ( * PFNEGLCREATEPBUFFERSURFACEPROC) (EGLDisplay  dpy, EGLConfig  config, const EGLint * attrib_list);
typedef EGLSurface  ( * PFNEGLCREATEPIXMAPSURFACEPROC) (EGLDisplay  dpy, EGLConfig  config, EGLNativePixmapType  pixmap, const EGLint * attrib_list);
typedef EGLSurface  ( * PFNEGLCREATEWINDOWSURFACEPROC) (EGLDisplay  dpy, EGLConfig  config, EGLNativeWindowType  win, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLDESTROYCONTEXTPROC) (EGLDisplay  dpy, EGLContext  ctx);
typedef EGLBoolean  ( * PFNEGLDESTROYSURFACEPROC) (EGLDisplay  dpy, EGLSurface  surface);
typedef EGLBoolean  ( * PFNEGLGETCONFIGATTRIBPROC) (EGLDisplay  dpy, EGLConfig  config, EGLint  attribute, EGLint * value);
typedef EGLBoolean  ( * PFNEGLGETCONFIGSPROC) (EGLDisplay  dpy, EGLConfig * configs, EGLint  config_size, EGLint * num_config);
typedef EGLDisplay  ( * PFNEGLGETCURRENTDISPLAYPROC) ( void );
typedef EGLSurface  ( * PFNEGLGETCURRENTSURFACEPROC) (EGLint  readdraw);
typedef EGLDisplay  ( * PFNEGLGETDISPLAYPROC) (EGLNativeDisplayType  display_id);
typedef EGLint  ( * PFNEGLGETERRORPROC) ( void );
typedef EGLBoolean  ( * PFNEGLINITIALIZEPROC) (EGLDisplay  dpy, EGLint * major, EGLint * minor);
typedef EGLBoolean  ( * PFNEGLMAKECURRENTPROC) (EGLDisplay  dpy, EGLSurface  draw, EGLSurface  read, EGLContext  ctx);
typedef EGLBoolean  ( * PFNEGLQUERYCONTEXTPROC) (EGLDisplay  dpy, EGLContext  ctx, EGLint  attribute, EGLint * value);
typedef const char * ( * PFNEGLQUERYSTRINGPROC) (EGLDisplay  dpy, EGLint  name);
typedef EGLBoolean  ( * PFNEGLQUERYSURFACEPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  attribute, EGLint * value);
typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSPROC) (EGLDisplay  dpy, EGLSurface  surface);
typedef EGLBoolean  ( * PFNEGLTERMINATEPROC) (EGLDisplay  dpy);
typedef EGLBoolean  ( * PFNEGLWAITGLPROC) ( void );
typedef EGLBoolean  ( * PFNEGLWAITNATIVEPROC) (EGLint  engine);

#define eglChooseConfig EGLEW_GET_FUN(__eglewChooseConfig)
#define eglCopyBuffers EGLEW_GET_FUN(__eglewCopyBuffers)
#define eglCreateContext EGLEW_GET_FUN(__eglewCreateContext)
#define eglCreatePbufferSurface EGLEW_GET_FUN(__eglewCreatePbufferSurface)
#define eglCreatePixmapSurface EGLEW_GET_FUN(__eglewCreatePixmapSurface)
#define eglCreateWindowSurface EGLEW_GET_FUN(__eglewCreateWindowSurface)
#define eglDestroyContext EGLEW_GET_FUN(__eglewDestroyContext)
#define eglDestroySurface EGLEW_GET_FUN(__eglewDestroySurface)
#define eglGetConfigAttrib EGLEW_GET_FUN(__eglewGetConfigAttrib)
#define eglGetConfigs EGLEW_GET_FUN(__eglewGetConfigs)
#define eglGetCurrentDisplay EGLEW_GET_FUN(__eglewGetCurrentDisplay)
#define eglGetCurrentSurface EGLEW_GET_FUN(__eglewGetCurrentSurface)
#define eglGetDisplay EGLEW_GET_FUN(__eglewGetDisplay)
#define eglGetError EGLEW_GET_FUN(__eglewGetError)
#define eglInitialize EGLEW_GET_FUN(__eglewInitialize)
#define eglMakeCurrent EGLEW_GET_FUN(__eglewMakeCurrent)
#define eglQueryContext EGLEW_GET_FUN(__eglewQueryContext)
#define eglQueryString EGLEW_GET_FUN(__eglewQueryString)
#define eglQuerySurface EGLEW_GET_FUN(__eglewQuerySurface)
#define eglSwapBuffers EGLEW_GET_FUN(__eglewSwapBuffers)
#define eglTerminate EGLEW_GET_FUN(__eglewTerminate)
#define eglWaitGL EGLEW_GET_FUN(__eglewWaitGL)
#define eglWaitNative EGLEW_GET_FUN(__eglewWaitNative)

#define EGLEW_VERSION_1_0 EGLEW_GET_VAR(__EGLEW_VERSION_1_0)

#endif /* EGL_VERSION_1_0 */

/* ---------------------------- EGL_VERSION_1_1 ---------------------------- */

#ifndef EGL_VERSION_1_1
#define EGL_VERSION_1_1 1

#define EGL_CONTEXT_LOST 0x300E
#define EGL_BIND_TO_TEXTURE_RGB 0x3039
#define EGL_BIND_TO_TEXTURE_RGBA 0x303A
#define EGL_MIN_SWAP_INTERVAL 0x303B
#define EGL_MAX_SWAP_INTERVAL 0x303C
#define EGL_NO_TEXTURE 0x305C
#define EGL_TEXTURE_RGB 0x305D
#define EGL_TEXTURE_RGBA 0x305E
#define EGL_TEXTURE_2D 0x305F
#define EGL_TEXTURE_FORMAT 0x3080
#define EGL_TEXTURE_TARGET 0x3081
#define EGL_MIPMAP_TEXTURE 0x3082
#define EGL_MIPMAP_LEVEL 0x3083
#define EGL_BACK_BUFFER 0x3084

typedef EGLBoolean  ( * PFNEGLBINDTEXIMAGEPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  buffer);
typedef EGLBoolean  ( * PFNEGLRELEASETEXIMAGEPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  buffer);
typedef EGLBoolean  ( * PFNEGLSURFACEATTRIBPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  attribute, EGLint  value);
typedef EGLBoolean  ( * PFNEGLSWAPINTERVALPROC) (EGLDisplay  dpy, EGLint  interval);

#define eglBindTexImage EGLEW_GET_FUN(__eglewBindTexImage)
#define eglReleaseTexImage EGLEW_GET_FUN(__eglewReleaseTexImage)
#define eglSurfaceAttrib EGLEW_GET_FUN(__eglewSurfaceAttrib)
#define eglSwapInterval EGLEW_GET_FUN(__eglewSwapInterval)

#define EGLEW_VERSION_1_1 EGLEW_GET_VAR(__EGLEW_VERSION_1_1)

#endif /* EGL_VERSION_1_1 */

/* ---------------------------- EGL_VERSION_1_2 ---------------------------- */

#ifndef EGL_VERSION_1_2
#define EGL_VERSION_1_2 1

#define EGL_OPENGL_ES_BIT 0x0001
#define EGL_OPENVG_BIT 0x0002
#define EGL_LUMINANCE_SIZE 0x303D
#define EGL_ALPHA_MASK_SIZE 0x303E
#define EGL_COLOR_BUFFER_TYPE 0x303F
#define EGL_RENDERABLE_TYPE 0x3040
#define EGL_SINGLE_BUFFER 0x3085
#define EGL_RENDER_BUFFER 0x3086
#define EGL_COLORSPACE 0x3087
#define EGL_ALPHA_FORMAT 0x3088
#define EGL_COLORSPACE_LINEAR 0x308A
#define EGL_ALPHA_FORMAT_NONPRE 0x308B
#define EGL_ALPHA_FORMAT_PRE 0x308C
#define EGL_CLIENT_APIS 0x308D
#define EGL_RGB_BUFFER 0x308E
#define EGL_LUMINANCE_BUFFER 0x308F
#define EGL_HORIZONTAL_RESOLUTION 0x3090
#define EGL_VERTICAL_RESOLUTION 0x3091
#define EGL_PIXEL_ASPECT_RATIO 0x3092
#define EGL_SWAP_BEHAVIOR 0x3093
#define EGL_BUFFER_PRESERVED 0x3094
#define EGL_BUFFER_DESTROYED 0x3095
#define EGL_OPENVG_IMAGE 0x3096
#define EGL_CONTEXT_CLIENT_TYPE 0x3097
#define EGL_OPENGL_ES_API 0x30A0
#define EGL_OPENVG_API 0x30A1
#define EGL_DISPLAY_SCALING 10000

typedef EGLBoolean  ( * PFNEGLBINDAPIPROC) (EGLenum  api);
typedef EGLSurface  ( * PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC) (EGLDisplay  dpy, EGLenum  buftype, EGLClientBuffer  buffer, EGLConfig  config, const EGLint * attrib_list);
typedef EGLenum  ( * PFNEGLQUERYAPIPROC) ( void );
typedef EGLBoolean  ( * PFNEGLRELEASETHREADPROC) ( void );
typedef EGLBoolean  ( * PFNEGLWAITCLIENTPROC) ( void );

#define eglBindAPI EGLEW_GET_FUN(__eglewBindAPI)
#define eglCreatePbufferFromClientBuffer EGLEW_GET_FUN(__eglewCreatePbufferFromClientBuffer)
#define eglQueryAPI EGLEW_GET_FUN(__eglewQueryAPI)
#define eglReleaseThread EGLEW_GET_FUN(__eglewReleaseThread)
#define eglWaitClient EGLEW_GET_FUN(__eglewWaitClient)

#define EGLEW_VERSION_1_2 EGLEW_GET_VAR(__EGLEW_VERSION_1_2)

#endif /* EGL_VERSION_1_2 */

/* ---------------------------- EGL_VERSION_1_3 ---------------------------- */

#ifndef EGL_VERSION_1_3
#define EGL_VERSION_1_3 1

#define EGL_OPENGL_ES2_BIT 0x0004
#define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020
#define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040
#define EGL_MATCH_NATIVE_PIXMAP 0x3041
#define EGL_CONFORMANT 0x3042
#define EGL_VG_COLORSPACE 0x3087
#define EGL_VG_ALPHA_FORMAT 0x3088
#define EGL_VG_COLORSPACE_LINEAR 0x308A
#define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B
#define EGL_VG_ALPHA_FORMAT_PRE 0x308C
#define EGL_CONTEXT_CLIENT_VERSION 0x3098

#define EGLEW_VERSION_1_3 EGLEW_GET_VAR(__EGLEW_VERSION_1_3)

#endif /* EGL_VERSION_1_3 */

/* ---------------------------- EGL_VERSION_1_4 ---------------------------- */

#ifndef EGL_VERSION_1_4
#define EGL_VERSION_1_4 1

#define EGL_OPENGL_BIT 0x0008
#define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200
#define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400
#define EGL_MULTISAMPLE_RESOLVE 0x3099
#define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A
#define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B
#define EGL_OPENGL_API 0x30A2

typedef EGLContext  ( * PFNEGLGETCURRENTCONTEXTPROC) ( void );

#define eglGetCurrentContext EGLEW_GET_FUN(__eglewGetCurrentContext)

#define EGLEW_VERSION_1_4 EGLEW_GET_VAR(__EGLEW_VERSION_1_4)

#endif /* EGL_VERSION_1_4 */

/* ---------------------------- EGL_VERSION_1_5 ---------------------------- */

#ifndef EGL_VERSION_1_5
#define EGL_VERSION_1_5 1

#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001
#define EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001
#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002
#define EGL_OPENGL_ES3_BIT 0x00000040
#define EGL_GL_COLORSPACE_SRGB 0x3089
#define EGL_GL_COLORSPACE_LINEAR 0x308A
#define EGL_CONTEXT_MAJOR_VERSION 0x3098
#define EGL_CL_EVENT_HANDLE 0x309C
#define EGL_GL_COLORSPACE 0x309D
#define EGL_GL_TEXTURE_2D 0x30B1
#define EGL_GL_TEXTURE_3D 0x30B2
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8
#define EGL_GL_RENDERBUFFER 0x30B9
#define EGL_GL_TEXTURE_LEVEL 0x30BC
#define EGL_GL_TEXTURE_ZOFFSET 0x30BD
#define EGL_IMAGE_PRESERVED 0x30D2
#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0
#define EGL_SYNC_STATUS 0x30F1
#define EGL_SIGNALED 0x30F2
#define EGL_UNSIGNALED 0x30F3
#define EGL_TIMEOUT_EXPIRED 0x30F5
#define EGL_CONDITION_SATISFIED 0x30F6
#define EGL_SYNC_TYPE 0x30F7
#define EGL_SYNC_CONDITION 0x30F8
#define EGL_SYNC_FENCE 0x30F9
#define EGL_CONTEXT_MINOR_VERSION 0x30FB
#define EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD
#define EGL_SYNC_CL_EVENT 0x30FE
#define EGL_SYNC_CL_EVENT_COMPLETE 0x30FF
#define EGL_CONTEXT_OPENGL_DEBUG 0x31B0
#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1
#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD
#define EGL_NO_RESET_NOTIFICATION 0x31BE
#define EGL_LOSE_CONTEXT_ON_RESET 0x31BF
#define EGL_FOREVER 0xFFFFFFFFFFFFFFFF

typedef EGLint  ( * PFNEGLCLIENTWAITSYNCPROC) (EGLDisplay  dpy, EGLSync  sync, EGLint  flags, EGLTime  timeout);
typedef EGLImage  ( * PFNEGLCREATEIMAGEPROC) (EGLDisplay  dpy, EGLContext  ctx, EGLenum  target, EGLClientBuffer  buffer, const EGLAttrib * attrib_list);
typedef EGLSurface  ( * PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC) (EGLDisplay  dpy, EGLConfig  config, void * native_pixmap, const EGLAttrib * attrib_list);
typedef EGLSurface  ( * PFNEGLCREATEPLATFORMWINDOWSURFACEPROC) (EGLDisplay  dpy, EGLConfig  config, void * native_window, const EGLAttrib * attrib_list);
typedef EGLSync  ( * PFNEGLCREATESYNCPROC) (EGLDisplay  dpy, EGLenum  type, const EGLAttrib * attrib_list);
typedef EGLBoolean  ( * PFNEGLDESTROYIMAGEPROC) (EGLDisplay  dpy, EGLImage  image);
typedef EGLBoolean  ( * PFNEGLDESTROYSYNCPROC) (EGLDisplay  dpy, EGLSync  sync);
typedef EGLDisplay  ( * PFNEGLGETPLATFORMDISPLAYPROC) (EGLenum  platform, void * native_display, const EGLAttrib * attrib_list);
typedef EGLBoolean  ( * PFNEGLGETSYNCATTRIBPROC) (EGLDisplay  dpy, EGLSync  sync, EGLint  attribute, EGLAttrib * value);
typedef EGLBoolean  ( * PFNEGLWAITSYNCPROC) (EGLDisplay  dpy, EGLSync  sync, EGLint  flags);

#define eglClientWaitSync EGLEW_GET_FUN(__eglewClientWaitSync)
#define eglCreateImage EGLEW_GET_FUN(__eglewCreateImage)
#define eglCreatePlatformPixmapSurface EGLEW_GET_FUN(__eglewCreatePlatformPixmapSurface)
#define eglCreatePlatformWindowSurface EGLEW_GET_FUN(__eglewCreatePlatformWindowSurface)
#define eglCreateSync EGLEW_GET_FUN(__eglewCreateSync)
#define eglDestroyImage EGLEW_GET_FUN(__eglewDestroyImage)
#define eglDestroySync EGLEW_GET_FUN(__eglewDestroySync)
#define eglGetPlatformDisplay EGLEW_GET_FUN(__eglewGetPlatformDisplay)
#define eglGetSyncAttrib EGLEW_GET_FUN(__eglewGetSyncAttrib)
#define eglWaitSync EGLEW_GET_FUN(__eglewWaitSync)

#define EGLEW_VERSION_1_5 EGLEW_GET_VAR(__EGLEW_VERSION_1_5)

#endif /* EGL_VERSION_1_5 */

/* ------------------------- EGL_ANDROID_blob_cache ------------------------ */

#ifndef EGL_ANDROID_blob_cache
#define EGL_ANDROID_blob_cache 1

typedef void  ( * PFNEGLSETBLOBCACHEFUNCSANDROIDPROC) (EGLDisplay  dpy, EGLSetBlobFuncANDROID  set, EGLGetBlobFuncANDROID  get);

#define eglSetBlobCacheFuncsANDROID EGLEW_GET_FUN(__eglewSetBlobCacheFuncsANDROID)

#define EGLEW_ANDROID_blob_cache EGLEW_GET_VAR(__EGLEW_ANDROID_blob_cache)

#endif /* EGL_ANDROID_blob_cache */

/* ---------------- EGL_ANDROID_create_native_client_buffer ---------------- */

#ifndef EGL_ANDROID_create_native_client_buffer
#define EGL_ANDROID_create_native_client_buffer 1

#define EGL_NATIVE_BUFFER_USAGE_PROTECTED_BIT_ANDROID 0x00000001
#define EGL_NATIVE_BUFFER_USAGE_RENDERBUFFER_BIT_ANDROID 0x00000002
#define EGL_NATIVE_BUFFER_USAGE_TEXTURE_BIT_ANDROID 0x00000004
#define EGL_NATIVE_BUFFER_USAGE_ANDROID 0x3143

typedef EGLClientBuffer  ( * PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC) (const EGLint * attrib_list);

#define eglCreateNativeClientBufferANDROID EGLEW_GET_FUN(__eglewCreateNativeClientBufferANDROID)

#define EGLEW_ANDROID_create_native_client_buffer EGLEW_GET_VAR(__EGLEW_ANDROID_create_native_client_buffer)

#endif /* EGL_ANDROID_create_native_client_buffer */

/* --------------------- EGL_ANDROID_framebuffer_target -------------------- */

#ifndef EGL_ANDROID_framebuffer_target
#define EGL_ANDROID_framebuffer_target 1

#define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147

#define EGLEW_ANDROID_framebuffer_target EGLEW_GET_VAR(__EGLEW_ANDROID_framebuffer_target)

#endif /* EGL_ANDROID_framebuffer_target */

/* ----------------- EGL_ANDROID_front_buffer_auto_refresh ----------------- */

#ifndef EGL_ANDROID_front_buffer_auto_refresh
#define EGL_ANDROID_front_buffer_auto_refresh 1

#define EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID 0x314C

#define EGLEW_ANDROID_front_buffer_auto_refresh EGLEW_GET_VAR(__EGLEW_ANDROID_front_buffer_auto_refresh)

#endif /* EGL_ANDROID_front_buffer_auto_refresh */

/* -------------------- EGL_ANDROID_image_native_buffer -------------------- */

#ifndef EGL_ANDROID_image_native_buffer
#define EGL_ANDROID_image_native_buffer 1

#define EGL_NATIVE_BUFFER_ANDROID 0x3140

#define EGLEW_ANDROID_image_native_buffer EGLEW_GET_VAR(__EGLEW_ANDROID_image_native_buffer)

#endif /* EGL_ANDROID_image_native_buffer */

/* --------------------- EGL_ANDROID_native_fence_sync --------------------- */

#ifndef EGL_ANDROID_native_fence_sync
#define EGL_ANDROID_native_fence_sync 1

#define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144
#define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145
#define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146

typedef EGLint  ( * PFNEGLDUPNATIVEFENCEFDANDROIDPROC) (EGLDisplay  dpy, EGLSyncKHR  sync);

#define eglDupNativeFenceFDANDROID EGLEW_GET_FUN(__eglewDupNativeFenceFDANDROID)

#define EGLEW_ANDROID_native_fence_sync EGLEW_GET_VAR(__EGLEW_ANDROID_native_fence_sync)

#endif /* EGL_ANDROID_native_fence_sync */

/* --------------------- EGL_ANDROID_presentation_time --------------------- */

#ifndef EGL_ANDROID_presentation_time
#define EGL_ANDROID_presentation_time 1

typedef EGLBoolean  ( * PFNEGLPRESENTATIONTIMEANDROIDPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLnsecsANDROID  time);

#define eglPresentationTimeANDROID EGLEW_GET_FUN(__eglewPresentationTimeANDROID)

#define EGLEW_ANDROID_presentation_time EGLEW_GET_VAR(__EGLEW_ANDROID_presentation_time)

#endif /* EGL_ANDROID_presentation_time */

/* ------------------------- EGL_ANDROID_recordable ------------------------ */

#ifndef EGL_ANDROID_recordable
#define EGL_ANDROID_recordable 1

#define EGL_RECORDABLE_ANDROID 0x3142

#define EGLEW_ANDROID_recordable EGLEW_GET_VAR(__EGLEW_ANDROID_recordable)

#endif /* EGL_ANDROID_recordable */

/* ---------------- EGL_ANGLE_d3d_share_handle_client_buffer --------------- */

#ifndef EGL_ANGLE_d3d_share_handle_client_buffer
#define EGL_ANGLE_d3d_share_handle_client_buffer 1

#define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200

#define EGLEW_ANGLE_d3d_share_handle_client_buffer EGLEW_GET_VAR(__EGLEW_ANGLE_d3d_share_handle_client_buffer)

#endif /* EGL_ANGLE_d3d_share_handle_client_buffer */

/* -------------------------- EGL_ANGLE_device_d3d ------------------------- */

#ifndef EGL_ANGLE_device_d3d
#define EGL_ANGLE_device_d3d 1

#define EGL_D3D9_DEVICE_ANGLE 0x33A0
#define EGL_D3D11_DEVICE_ANGLE 0x33A1

#define EGLEW_ANGLE_device_d3d EGLEW_GET_VAR(__EGLEW_ANGLE_device_d3d)

#endif /* EGL_ANGLE_device_d3d */

/* -------------------- EGL_ANGLE_query_surface_pointer -------------------- */

#ifndef EGL_ANGLE_query_surface_pointer
#define EGL_ANGLE_query_surface_pointer 1

typedef EGLBoolean  ( * PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  attribute, void ** value);

#define eglQuerySurfacePointerANGLE EGLEW_GET_FUN(__eglewQuerySurfacePointerANGLE)

#define EGLEW_ANGLE_query_surface_pointer EGLEW_GET_VAR(__EGLEW_ANGLE_query_surface_pointer)

#endif /* EGL_ANGLE_query_surface_pointer */

/* ------------- EGL_ANGLE_surface_d3d_texture_2d_share_handle ------------- */

#ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle
#define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1

#define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200

#define EGLEW_ANGLE_surface_d3d_texture_2d_share_handle EGLEW_GET_VAR(__EGLEW_ANGLE_surface_d3d_texture_2d_share_handle)

#endif /* EGL_ANGLE_surface_d3d_texture_2d_share_handle */

/* ---------------------- EGL_ANGLE_window_fixed_size ---------------------- */

#ifndef EGL_ANGLE_window_fixed_size
#define EGL_ANGLE_window_fixed_size 1

#define EGL_FIXED_SIZE_ANGLE 0x3201

#define EGLEW_ANGLE_window_fixed_size EGLEW_GET_VAR(__EGLEW_ANGLE_window_fixed_size)

#endif /* EGL_ANGLE_window_fixed_size */

/* --------------------- EGL_ARM_implicit_external_sync -------------------- */

#ifndef EGL_ARM_implicit_external_sync
#define EGL_ARM_implicit_external_sync 1

#define EGL_SYNC_PRIOR_COMMANDS_IMPLICIT_EXTERNAL_ARM 0x328A

#define EGLEW_ARM_implicit_external_sync EGLEW_GET_VAR(__EGLEW_ARM_implicit_external_sync)

#endif /* EGL_ARM_implicit_external_sync */

/* ------------------- EGL_ARM_pixmap_multisample_discard ------------------ */

#ifndef EGL_ARM_pixmap_multisample_discard
#define EGL_ARM_pixmap_multisample_discard 1

#define EGL_DISCARD_SAMPLES_ARM 0x3286

#define EGLEW_ARM_pixmap_multisample_discard EGLEW_GET_VAR(__EGLEW_ARM_pixmap_multisample_discard)

#endif /* EGL_ARM_pixmap_multisample_discard */

/* --------------------------- EGL_EXT_buffer_age -------------------------- */

#ifndef EGL_EXT_buffer_age
#define EGL_EXT_buffer_age 1

#define EGL_BUFFER_AGE_EXT 0x313D

#define EGLEW_EXT_buffer_age EGLEW_GET_VAR(__EGLEW_EXT_buffer_age)

#endif /* EGL_EXT_buffer_age */

/* ----------------------- EGL_EXT_client_extensions ----------------------- */

#ifndef EGL_EXT_client_extensions
#define EGL_EXT_client_extensions 1

#define EGLEW_EXT_client_extensions EGLEW_GET_VAR(__EGLEW_EXT_client_extensions)

#endif /* EGL_EXT_client_extensions */

/* ------------------- EGL_EXT_create_context_robustness ------------------- */

#ifndef EGL_EXT_create_context_robustness
#define EGL_EXT_create_context_robustness 1

#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
#define EGL_NO_RESET_NOTIFICATION_EXT 0x31BE
#define EGL_LOSE_CONTEXT_ON_RESET_EXT 0x31BF

#define EGLEW_EXT_create_context_robustness EGLEW_GET_VAR(__EGLEW_EXT_create_context_robustness)

#endif /* EGL_EXT_create_context_robustness */

/* -------------------------- EGL_EXT_device_base -------------------------- */

#ifndef EGL_EXT_device_base
#define EGL_EXT_device_base 1

#define EGL_BAD_DEVICE_EXT 0x322B
#define EGL_DEVICE_EXT 0x322C

#define EGLEW_EXT_device_base EGLEW_GET_VAR(__EGLEW_EXT_device_base)

#endif /* EGL_EXT_device_base */

/* --------------------------- EGL_EXT_device_drm -------------------------- */

#ifndef EGL_EXT_device_drm
#define EGL_EXT_device_drm 1

#define EGL_DRM_DEVICE_FILE_EXT 0x3233

#define EGLEW_EXT_device_drm EGLEW_GET_VAR(__EGLEW_EXT_device_drm)

#endif /* EGL_EXT_device_drm */

/* ----------------------- EGL_EXT_device_enumeration ---------------------- */

#ifndef EGL_EXT_device_enumeration
#define EGL_EXT_device_enumeration 1

typedef EGLBoolean  ( * PFNEGLQUERYDEVICESEXTPROC) (EGLint  max_devices, EGLDeviceEXT * devices, EGLint * num_devices);

#define eglQueryDevicesEXT EGLEW_GET_FUN(__eglewQueryDevicesEXT)

#define EGLEW_EXT_device_enumeration EGLEW_GET_VAR(__EGLEW_EXT_device_enumeration)

#endif /* EGL_EXT_device_enumeration */

/* ------------------------- EGL_EXT_device_openwf ------------------------- */

#ifndef EGL_EXT_device_openwf
#define EGL_EXT_device_openwf 1

#define EGL_OPENWF_DEVICE_ID_EXT 0x3237

#define EGLEW_EXT_device_openwf EGLEW_GET_VAR(__EGLEW_EXT_device_openwf)

#endif /* EGL_EXT_device_openwf */

/* -------------------------- EGL_EXT_device_query ------------------------- */

#ifndef EGL_EXT_device_query
#define EGL_EXT_device_query 1

#define EGL_BAD_DEVICE_EXT 0x322B
#define EGL_DEVICE_EXT 0x322C

typedef EGLBoolean  ( * PFNEGLQUERYDEVICEATTRIBEXTPROC) (EGLDeviceEXT  device, EGLint  attribute, EGLAttrib * value);
typedef const char * ( * PFNEGLQUERYDEVICESTRINGEXTPROC) (EGLDeviceEXT  device, EGLint  name);
typedef EGLBoolean  ( * PFNEGLQUERYDISPLAYATTRIBEXTPROC) (EGLDisplay  dpy, EGLint  attribute, EGLAttrib * value);

#define eglQueryDeviceAttribEXT EGLEW_GET_FUN(__eglewQueryDeviceAttribEXT)
#define eglQueryDeviceStringEXT EGLEW_GET_FUN(__eglewQueryDeviceStringEXT)
#define eglQueryDisplayAttribEXT EGLEW_GET_FUN(__eglewQueryDisplayAttribEXT)

#define EGLEW_EXT_device_query EGLEW_GET_VAR(__EGLEW_EXT_device_query)

#endif /* EGL_EXT_device_query */

/* ------------------ EGL_EXT_gl_colorspace_bt2020_linear ------------------ */

#ifndef EGL_EXT_gl_colorspace_bt2020_linear
#define EGL_EXT_gl_colorspace_bt2020_linear 1

#define EGL_GL_COLORSPACE_BT2020_LINEAR_EXT 0x333F

#define EGLEW_EXT_gl_colorspace_bt2020_linear EGLEW_GET_VAR(__EGLEW_EXT_gl_colorspace_bt2020_linear)

#endif /* EGL_EXT_gl_colorspace_bt2020_linear */

/* -------------------- EGL_EXT_gl_colorspace_bt2020_pq -------------------- */

#ifndef EGL_EXT_gl_colorspace_bt2020_pq
#define EGL_EXT_gl_colorspace_bt2020_pq 1

#define EGL_GL_COLORSPACE_BT2020_PQ_EXT 0x3340

#define EGLEW_EXT_gl_colorspace_bt2020_pq EGLEW_GET_VAR(__EGLEW_EXT_gl_colorspace_bt2020_pq)

#endif /* EGL_EXT_gl_colorspace_bt2020_pq */

/* ------------------- EGL_EXT_gl_colorspace_scrgb_linear ------------------ */

#ifndef EGL_EXT_gl_colorspace_scrgb_linear
#define EGL_EXT_gl_colorspace_scrgb_linear 1

#define EGL_GL_COLORSPACE_SCRGB_LINEAR_EXT 0x3350

#define EGLEW_EXT_gl_colorspace_scrgb_linear EGLEW_GET_VAR(__EGLEW_EXT_gl_colorspace_scrgb_linear)

#endif /* EGL_EXT_gl_colorspace_scrgb_linear */

/* ---------------------- EGL_EXT_image_dma_buf_import --------------------- */

#ifndef EGL_EXT_image_dma_buf_import
#define EGL_EXT_image_dma_buf_import 1

#define EGL_LINUX_DMA_BUF_EXT 0x3270
#define EGL_LINUX_DRM_FOURCC_EXT 0x3271
#define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272
#define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273
#define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274
#define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275
#define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276
#define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277
#define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278
#define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279
#define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A
#define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B
#define EGL_SAMPLE_RANGE_HINT_EXT 0x327C
#define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D
#define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E
#define EGL_ITU_REC601_EXT 0x327F
#define EGL_ITU_REC709_EXT 0x3280
#define EGL_ITU_REC2020_EXT 0x3281
#define EGL_YUV_FULL_RANGE_EXT 0x3282
#define EGL_YUV_NARROW_RANGE_EXT 0x3283
#define EGL_YUV_CHROMA_SITING_0_EXT 0x3284
#define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285

#define EGLEW_EXT_image_dma_buf_import EGLEW_GET_VAR(__EGLEW_EXT_image_dma_buf_import)

#endif /* EGL_EXT_image_dma_buf_import */

/* ----------------- EGL_EXT_image_dma_buf_import_modifiers ---------------- */

#ifndef EGL_EXT_image_dma_buf_import_modifiers
#define EGL_EXT_image_dma_buf_import_modifiers 1

#define EGL_DMA_BUF_PLANE3_FD_EXT 0x3440
#define EGL_DMA_BUF_PLANE3_OFFSET_EXT 0x3441
#define EGL_DMA_BUF_PLANE3_PITCH_EXT 0x3442
#define EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT 0x3443
#define EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT 0x3444
#define EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT 0x3445
#define EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT 0x3446
#define EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT 0x3447
#define EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT 0x3448
#define EGL_DMA_BUF_PLANE3_MODIFIER_LO_EXT 0x3449
#define EGL_DMA_BUF_PLANE3_MODIFIER_HI_EXT 0x344A

typedef EGLBoolean  ( * PFNEGLQUERYDMABUFFORMATSEXTPROC) (EGLDisplay  dpy, EGLint  max_formats, EGLint  *formats, EGLint  *num_formats);
typedef EGLBoolean  ( * PFNEGLQUERYDMABUFMODIFIERSEXTPROC) (EGLDisplay  dpy, EGLint  format, EGLint  max_modifiers, EGLuint64KHR  *modifiers, EGLBoolean  *external_only, EGLint  *num_modifiers);

#define eglQueryDmaBufFormatsEXT EGLEW_GET_FUN(__eglewQueryDmaBufFormatsEXT)
#define eglQueryDmaBufModifiersEXT EGLEW_GET_FUN(__eglewQueryDmaBufModifiersEXT)

#define EGLEW_EXT_image_dma_buf_import_modifiers EGLEW_GET_VAR(__EGLEW_EXT_image_dma_buf_import_modifiers)

#endif /* EGL_EXT_image_dma_buf_import_modifiers */

/* ------------------------ EGL_EXT_multiview_window ----------------------- */

#ifndef EGL_EXT_multiview_window
#define EGL_EXT_multiview_window 1

#define EGL_MULTIVIEW_VIEW_COUNT_EXT 0x3134

#define EGLEW_EXT_multiview_window EGLEW_GET_VAR(__EGLEW_EXT_multiview_window)

#endif /* EGL_EXT_multiview_window */

/* -------------------------- EGL_EXT_output_base -------------------------- */

#ifndef EGL_EXT_output_base
#define EGL_EXT_output_base 1

#define EGL_BAD_OUTPUT_LAYER_EXT 0x322D
#define EGL_BAD_OUTPUT_PORT_EXT 0x322E
#define EGL_SWAP_INTERVAL_EXT 0x322F

typedef EGLBoolean  ( * PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDisplay  dpy, const EGLAttrib * attrib_list, EGLOutputLayerEXT * layers, EGLint  max_layers, EGLint * num_layers);
typedef EGLBoolean  ( * PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDisplay  dpy, const EGLAttrib * attrib_list, EGLOutputPortEXT * ports, EGLint  max_ports, EGLint * num_ports);
typedef EGLBoolean  ( * PFNEGLOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay  dpy, EGLOutputLayerEXT  layer, EGLint  attribute, EGLAttrib  value);
typedef EGLBoolean  ( * PFNEGLOUTPUTPORTATTRIBEXTPROC) (EGLDisplay  dpy, EGLOutputPortEXT  port, EGLint  attribute, EGLAttrib  value);
typedef EGLBoolean  ( * PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay  dpy, EGLOutputLayerEXT  layer, EGLint  attribute, EGLAttrib * value);
typedef const char * ( * PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC) (EGLDisplay  dpy, EGLOutputLayerEXT  layer, EGLint  name);
typedef EGLBoolean  ( * PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC) (EGLDisplay  dpy, EGLOutputPortEXT  port, EGLint  attribute, EGLAttrib * value);
typedef const char * ( * PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC) (EGLDisplay  dpy, EGLOutputPortEXT  port, EGLint  name);

#define eglGetOutputLayersEXT EGLEW_GET_FUN(__eglewGetOutputLayersEXT)
#define eglGetOutputPortsEXT EGLEW_GET_FUN(__eglewGetOutputPortsEXT)
#define eglOutputLayerAttribEXT EGLEW_GET_FUN(__eglewOutputLayerAttribEXT)
#define eglOutputPortAttribEXT EGLEW_GET_FUN(__eglewOutputPortAttribEXT)
#define eglQueryOutputLayerAttribEXT EGLEW_GET_FUN(__eglewQueryOutputLayerAttribEXT)
#define eglQueryOutputLayerStringEXT EGLEW_GET_FUN(__eglewQueryOutputLayerStringEXT)
#define eglQueryOutputPortAttribEXT EGLEW_GET_FUN(__eglewQueryOutputPortAttribEXT)
#define eglQueryOutputPortStringEXT EGLEW_GET_FUN(__eglewQueryOutputPortStringEXT)

#define EGLEW_EXT_output_base EGLEW_GET_VAR(__EGLEW_EXT_output_base)

#endif /* EGL_EXT_output_base */

/* --------------------------- EGL_EXT_output_drm -------------------------- */

#ifndef EGL_EXT_output_drm
#define EGL_EXT_output_drm 1

#define EGL_DRM_CRTC_EXT 0x3234
#define EGL_DRM_PLANE_EXT 0x3235
#define EGL_DRM_CONNECTOR_EXT 0x3236

#define EGLEW_EXT_output_drm EGLEW_GET_VAR(__EGLEW_EXT_output_drm)

#endif /* EGL_EXT_output_drm */

/* ------------------------- EGL_EXT_output_openwf ------------------------- */

#ifndef EGL_EXT_output_openwf
#define EGL_EXT_output_openwf 1

#define EGL_OPENWF_PIPELINE_ID_EXT 0x3238
#define EGL_OPENWF_PORT_ID_EXT 0x3239

#define EGLEW_EXT_output_openwf EGLEW_GET_VAR(__EGLEW_EXT_output_openwf)

#endif /* EGL_EXT_output_openwf */

/* ----------------------- EGL_EXT_pixel_format_float ---------------------- */

#ifndef EGL_EXT_pixel_format_float
#define EGL_EXT_pixel_format_float 1

#define EGL_COLOR_COMPONENT_TYPE_EXT 0x3339
#define EGL_COLOR_COMPONENT_TYPE_FIXED_EXT 0x333A
#define EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT 0x333B

#define EGLEW_EXT_pixel_format_float EGLEW_GET_VAR(__EGLEW_EXT_pixel_format_float)

#endif /* EGL_EXT_pixel_format_float */

/* ------------------------- EGL_EXT_platform_base ------------------------- */

#ifndef EGL_EXT_platform_base
#define EGL_EXT_platform_base 1

typedef EGLSurface  ( * PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLDisplay  dpy, EGLConfig  config, void * native_pixmap, const EGLint * attrib_list);
typedef EGLSurface  ( * PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC) (EGLDisplay  dpy, EGLConfig  config, void * native_window, const EGLint * attrib_list);
typedef EGLDisplay  ( * PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLenum  platform, void * native_display, const EGLint * attrib_list);

#define eglCreatePlatformPixmapSurfaceEXT EGLEW_GET_FUN(__eglewCreatePlatformPixmapSurfaceEXT)
#define eglCreatePlatformWindowSurfaceEXT EGLEW_GET_FUN(__eglewCreatePlatformWindowSurfaceEXT)
#define eglGetPlatformDisplayEXT EGLEW_GET_FUN(__eglewGetPlatformDisplayEXT)

#define EGLEW_EXT_platform_base EGLEW_GET_VAR(__EGLEW_EXT_platform_base)

#endif /* EGL_EXT_platform_base */

/* ------------------------ EGL_EXT_platform_device ------------------------ */

#ifndef EGL_EXT_platform_device
#define EGL_EXT_platform_device 1

#define EGL_PLATFORM_DEVICE_EXT 0x313F

#define EGLEW_EXT_platform_device EGLEW_GET_VAR(__EGLEW_EXT_platform_device)

#endif /* EGL_EXT_platform_device */

/* ------------------------ EGL_EXT_platform_wayland ----------------------- */

#ifndef EGL_EXT_platform_wayland
#define EGL_EXT_platform_wayland 1

#define EGL_PLATFORM_WAYLAND_EXT 0x31D8

#define EGLEW_EXT_platform_wayland EGLEW_GET_VAR(__EGLEW_EXT_platform_wayland)

#endif /* EGL_EXT_platform_wayland */

/* -------------------------- EGL_EXT_platform_x11 ------------------------- */

#ifndef EGL_EXT_platform_x11
#define EGL_EXT_platform_x11 1

#define EGL_PLATFORM_X11_EXT 0x31D5
#define EGL_PLATFORM_X11_SCREEN_EXT 0x31D6

#define EGLEW_EXT_platform_x11 EGLEW_GET_VAR(__EGLEW_EXT_platform_x11)

#endif /* EGL_EXT_platform_x11 */

/* ----------------------- EGL_EXT_protected_content ----------------------- */

#ifndef EGL_EXT_protected_content
#define EGL_EXT_protected_content 1

#define EGL_PROTECTED_CONTENT_EXT 0x32C0

#define EGLEW_EXT_protected_content EGLEW_GET_VAR(__EGLEW_EXT_protected_content)

#endif /* EGL_EXT_protected_content */

/* ----------------------- EGL_EXT_protected_surface ----------------------- */

#ifndef EGL_EXT_protected_surface
#define EGL_EXT_protected_surface 1

#define EGL_PROTECTED_CONTENT_EXT 0x32C0

#define EGLEW_EXT_protected_surface EGLEW_GET_VAR(__EGLEW_EXT_protected_surface)

#endif /* EGL_EXT_protected_surface */

/* ------------------- EGL_EXT_stream_consumer_egloutput ------------------- */

#ifndef EGL_EXT_stream_consumer_egloutput
#define EGL_EXT_stream_consumer_egloutput 1

typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMEROUTPUTEXTPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLOutputLayerEXT  layer);

#define eglStreamConsumerOutputEXT EGLEW_GET_FUN(__eglewStreamConsumerOutputEXT)

#define EGLEW_EXT_stream_consumer_egloutput EGLEW_GET_VAR(__EGLEW_EXT_stream_consumer_egloutput)

#endif /* EGL_EXT_stream_consumer_egloutput */

/* ------------------- EGL_EXT_surface_SMPTE2086_metadata ------------------ */

#ifndef EGL_EXT_surface_SMPTE2086_metadata
#define EGL_EXT_surface_SMPTE2086_metadata 1

#define EGL_SMPTE2086_DISPLAY_PRIMARY_RX_EXT 0x3341
#define EGL_SMPTE2086_DISPLAY_PRIMARY_RY_EXT 0x3342
#define EGL_SMPTE2086_DISPLAY_PRIMARY_GX_EXT 0x3343
#define EGL_SMPTE2086_DISPLAY_PRIMARY_GY_EXT 0x3344
#define EGL_SMPTE2086_DISPLAY_PRIMARY_BX_EXT 0x3345
#define EGL_SMPTE2086_DISPLAY_PRIMARY_BY_EXT 0x3346
#define EGL_SMPTE2086_WHITE_POINT_X_EXT 0x3347
#define EGL_SMPTE2086_WHITE_POINT_Y_EXT 0x3348
#define EGL_SMPTE2086_MAX_LUMINANCE_EXT 0x3349
#define EGL_SMPTE2086_MIN_LUMINANCE_EXT 0x334A

#define EGLEW_EXT_surface_SMPTE2086_metadata EGLEW_GET_VAR(__EGLEW_EXT_surface_SMPTE2086_metadata)

#endif /* EGL_EXT_surface_SMPTE2086_metadata */

/* -------------------- EGL_EXT_swap_buffers_with_damage ------------------- */

#ifndef EGL_EXT_swap_buffers_with_damage
#define EGL_EXT_swap_buffers_with_damage 1

typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint * rects, EGLint  n_rects);

#define eglSwapBuffersWithDamageEXT EGLEW_GET_FUN(__eglewSwapBuffersWithDamageEXT)

#define EGLEW_EXT_swap_buffers_with_damage EGLEW_GET_VAR(__EGLEW_EXT_swap_buffers_with_damage)

#endif /* EGL_EXT_swap_buffers_with_damage */

/* -------------------------- EGL_EXT_yuv_surface -------------------------- */

#ifndef EGL_EXT_yuv_surface
#define EGL_EXT_yuv_surface 1

#define EGL_YUV_BUFFER_EXT 0x3300
#define EGL_YUV_ORDER_EXT 0x3301
#define EGL_YUV_ORDER_YUV_EXT 0x3302
#define EGL_YUV_ORDER_YVU_EXT 0x3303
#define EGL_YUV_ORDER_YUYV_EXT 0x3304
#define EGL_YUV_ORDER_UYVY_EXT 0x3305
#define EGL_YUV_ORDER_YVYU_EXT 0x3306
#define EGL_YUV_ORDER_VYUY_EXT 0x3307
#define EGL_YUV_ORDER_AYUV_EXT 0x3308
#define EGL_YUV_CSC_STANDARD_EXT 0x330A
#define EGL_YUV_CSC_STANDARD_601_EXT 0x330B
#define EGL_YUV_CSC_STANDARD_709_EXT 0x330C
#define EGL_YUV_CSC_STANDARD_2020_EXT 0x330D
#define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311
#define EGL_YUV_SUBSAMPLE_EXT 0x3312
#define EGL_YUV_SUBSAMPLE_4_2_0_EXT 0x3313
#define EGL_YUV_SUBSAMPLE_4_2_2_EXT 0x3314
#define EGL_YUV_SUBSAMPLE_4_4_4_EXT 0x3315
#define EGL_YUV_DEPTH_RANGE_EXT 0x3317
#define EGL_YUV_DEPTH_RANGE_LIMITED_EXT 0x3318
#define EGL_YUV_DEPTH_RANGE_FULL_EXT 0x3319
#define EGL_YUV_PLANE_BPP_EXT 0x331A
#define EGL_YUV_PLANE_BPP_0_EXT 0x331B
#define EGL_YUV_PLANE_BPP_8_EXT 0x331C
#define EGL_YUV_PLANE_BPP_10_EXT 0x331D

#define EGLEW_EXT_yuv_surface EGLEW_GET_VAR(__EGLEW_EXT_yuv_surface)

#endif /* EGL_EXT_yuv_surface */

/* -------------------------- EGL_HI_clientpixmap -------------------------- */

#ifndef EGL_HI_clientpixmap
#define EGL_HI_clientpixmap 1

#define EGL_CLIENT_PIXMAP_POINTER_HI 0x8F74

typedef EGLSurface  ( * PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay  dpy, EGLConfig  config, struct EGLClientPixmapHI * pixmap);

#define eglCreatePixmapSurfaceHI EGLEW_GET_FUN(__eglewCreatePixmapSurfaceHI)

#define EGLEW_HI_clientpixmap EGLEW_GET_VAR(__EGLEW_HI_clientpixmap)

#endif /* EGL_HI_clientpixmap */

/* -------------------------- EGL_HI_colorformats -------------------------- */

#ifndef EGL_HI_colorformats
#define EGL_HI_colorformats 1

#define EGL_COLOR_FORMAT_HI 0x8F70
#define EGL_COLOR_RGB_HI 0x8F71
#define EGL_COLOR_RGBA_HI 0x8F72
#define EGL_COLOR_ARGB_HI 0x8F73

#define EGLEW_HI_colorformats EGLEW_GET_VAR(__EGLEW_HI_colorformats)

#endif /* EGL_HI_colorformats */

/* ------------------------ EGL_IMG_context_priority ----------------------- */

#ifndef EGL_IMG_context_priority
#define EGL_IMG_context_priority 1

#define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100
#define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101
#define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102
#define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103

#define EGLEW_IMG_context_priority EGLEW_GET_VAR(__EGLEW_IMG_context_priority)

#endif /* EGL_IMG_context_priority */

/* ---------------------- EGL_IMG_image_plane_attribs ---------------------- */

#ifndef EGL_IMG_image_plane_attribs
#define EGL_IMG_image_plane_attribs 1

#define EGL_NATIVE_BUFFER_MULTIPLANE_SEPARATE_IMG 0x3105
#define EGL_NATIVE_BUFFER_PLANE_OFFSET_IMG 0x3106

#define EGLEW_IMG_image_plane_attribs EGLEW_GET_VAR(__EGLEW_IMG_image_plane_attribs)

#endif /* EGL_IMG_image_plane_attribs */

/* ---------------------------- EGL_KHR_cl_event --------------------------- */

#ifndef EGL_KHR_cl_event
#define EGL_KHR_cl_event 1

#define EGL_CL_EVENT_HANDLE_KHR 0x309C
#define EGL_SYNC_CL_EVENT_KHR 0x30FE
#define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF

#define EGLEW_KHR_cl_event EGLEW_GET_VAR(__EGLEW_KHR_cl_event)

#endif /* EGL_KHR_cl_event */

/* --------------------------- EGL_KHR_cl_event2 --------------------------- */

#ifndef EGL_KHR_cl_event2
#define EGL_KHR_cl_event2 1

#define EGL_CL_EVENT_HANDLE_KHR 0x309C
#define EGL_SYNC_CL_EVENT_KHR 0x30FE
#define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF

typedef EGLSyncKHR  ( * PFNEGLCREATESYNC64KHRPROC) (EGLDisplay  dpy, EGLenum  type, const EGLAttribKHR * attrib_list);

#define eglCreateSync64KHR EGLEW_GET_FUN(__eglewCreateSync64KHR)

#define EGLEW_KHR_cl_event2 EGLEW_GET_VAR(__EGLEW_KHR_cl_event2)

#endif /* EGL_KHR_cl_event2 */

/* ----------------- EGL_KHR_client_get_all_proc_addresses ----------------- */

#ifndef EGL_KHR_client_get_all_proc_addresses
#define EGL_KHR_client_get_all_proc_addresses 1

#define EGLEW_KHR_client_get_all_proc_addresses EGLEW_GET_VAR(__EGLEW_KHR_client_get_all_proc_addresses)

#endif /* EGL_KHR_client_get_all_proc_addresses */

/* ------------------------- EGL_KHR_config_attribs ------------------------ */

#ifndef EGL_KHR_config_attribs
#define EGL_KHR_config_attribs 1

#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020
#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040
#define EGL_CONFORMANT_KHR 0x3042

#define EGLEW_KHR_config_attribs EGLEW_GET_VAR(__EGLEW_KHR_config_attribs)

#endif /* EGL_KHR_config_attribs */

/* --------------------- EGL_KHR_context_flush_control --------------------- */

#ifndef EGL_KHR_context_flush_control
#define EGL_KHR_context_flush_control 1

#define EGL_CONTEXT_RELEASE_BEHAVIOR_NONE_KHR 0
#define EGL_CONTEXT_RELEASE_BEHAVIOR_KHR 0x2097
#define EGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR 0x2098

#define EGLEW_KHR_context_flush_control EGLEW_GET_VAR(__EGLEW_KHR_context_flush_control)

#endif /* EGL_KHR_context_flush_control */

/* ------------------------- EGL_KHR_create_context ------------------------ */

#ifndef EGL_KHR_create_context
#define EGL_KHR_create_context 1

#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001
#define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001
#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002
#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002
#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004
#define EGL_OPENGL_ES3_BIT 0x00000040
#define EGL_OPENGL_ES3_BIT_KHR 0x00000040
#define EGL_CONTEXT_MAJOR_VERSION_KHR 0x3098
#define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB
#define EGL_CONTEXT_FLAGS_KHR 0x30FC
#define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD
#define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE
#define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF

#define EGLEW_KHR_create_context EGLEW_GET_VAR(__EGLEW_KHR_create_context)

#endif /* EGL_KHR_create_context */

/* -------------------- EGL_KHR_create_context_no_error -------------------- */

#ifndef EGL_KHR_create_context_no_error
#define EGL_KHR_create_context_no_error 1

#define EGL_CONTEXT_OPENGL_NO_ERROR_KHR 0x31B3

#define EGLEW_KHR_create_context_no_error EGLEW_GET_VAR(__EGLEW_KHR_create_context_no_error)

#endif /* EGL_KHR_create_context_no_error */

/* ----------------------------- EGL_KHR_debug ----------------------------- */

#ifndef EGL_KHR_debug
#define EGL_KHR_debug 1

#define EGL_OBJECT_THREAD_KHR 0x33B0
#define EGL_OBJECT_DISPLAY_KHR 0x33B1
#define EGL_OBJECT_CONTEXT_KHR 0x33B2
#define EGL_OBJECT_SURFACE_KHR 0x33B3
#define EGL_OBJECT_IMAGE_KHR 0x33B4
#define EGL_OBJECT_SYNC_KHR 0x33B5
#define EGL_OBJECT_STREAM_KHR 0x33B6
#define EGL_DEBUG_CALLBACK_KHR 0x33B8
#define EGL_DEBUG_MSG_CRITICAL_KHR 0x33B9
#define EGL_DEBUG_MSG_ERROR_KHR 0x33BA
#define EGL_DEBUG_MSG_WARN_KHR 0x33BB
#define EGL_DEBUG_MSG_INFO_KHR 0x33BC

typedef EGLint  ( * PFNEGLDEBUGMESSAGECONTROLKHRPROC) (EGLDEBUGPROCKHR  callback, const EGLAttrib * attrib_list);
typedef EGLint  ( * PFNEGLLABELOBJECTKHRPROC) (EGLDisplay  display, EGLenum  objectType, EGLObjectKHR  object, EGLLabelKHR  label);
typedef EGLBoolean  ( * PFNEGLQUERYDEBUGKHRPROC) (EGLint  attribute, EGLAttrib * value);

#define eglDebugMessageControlKHR EGLEW_GET_FUN(__eglewDebugMessageControlKHR)
#define eglLabelObjectKHR EGLEW_GET_FUN(__eglewLabelObjectKHR)
#define eglQueryDebugKHR EGLEW_GET_FUN(__eglewQueryDebugKHR)

#define EGLEW_KHR_debug EGLEW_GET_VAR(__EGLEW_KHR_debug)

#endif /* EGL_KHR_debug */

/* --------------------------- EGL_KHR_fence_sync -------------------------- */

#ifndef EGL_KHR_fence_sync
#define EGL_KHR_fence_sync 1

#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0
#define EGL_SYNC_CONDITION_KHR 0x30F8
#define EGL_SYNC_FENCE_KHR 0x30F9

#define EGLEW_KHR_fence_sync EGLEW_GET_VAR(__EGLEW_KHR_fence_sync)

#endif /* EGL_KHR_fence_sync */

/* --------------------- EGL_KHR_get_all_proc_addresses -------------------- */

#ifndef EGL_KHR_get_all_proc_addresses
#define EGL_KHR_get_all_proc_addresses 1

#define EGLEW_KHR_get_all_proc_addresses EGLEW_GET_VAR(__EGLEW_KHR_get_all_proc_addresses)

#endif /* EGL_KHR_get_all_proc_addresses */

/* ------------------------- EGL_KHR_gl_colorspace ------------------------- */

#ifndef EGL_KHR_gl_colorspace
#define EGL_KHR_gl_colorspace 1

#define EGL_GL_COLORSPACE_SRGB_KHR 0x3089
#define EGL_GL_COLORSPACE_LINEAR_KHR 0x308A
#define EGL_GL_COLORSPACE_KHR 0x309D

#define EGLEW_KHR_gl_colorspace EGLEW_GET_VAR(__EGLEW_KHR_gl_colorspace)

#endif /* EGL_KHR_gl_colorspace */

/* --------------------- EGL_KHR_gl_renderbuffer_image --------------------- */

#ifndef EGL_KHR_gl_renderbuffer_image
#define EGL_KHR_gl_renderbuffer_image 1

#define EGL_GL_RENDERBUFFER_KHR 0x30B9

#define EGLEW_KHR_gl_renderbuffer_image EGLEW_GET_VAR(__EGLEW_KHR_gl_renderbuffer_image)

#endif /* EGL_KHR_gl_renderbuffer_image */

/* ---------------------- EGL_KHR_gl_texture_2D_image ---------------------- */

#ifndef EGL_KHR_gl_texture_2D_image
#define EGL_KHR_gl_texture_2D_image 1

#define EGL_GL_TEXTURE_2D_KHR 0x30B1
#define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC

#define EGLEW_KHR_gl_texture_2D_image EGLEW_GET_VAR(__EGLEW_KHR_gl_texture_2D_image)

#endif /* EGL_KHR_gl_texture_2D_image */

/* ---------------------- EGL_KHR_gl_texture_3D_image ---------------------- */

#ifndef EGL_KHR_gl_texture_3D_image
#define EGL_KHR_gl_texture_3D_image 1

#define EGL_GL_TEXTURE_3D_KHR 0x30B2
#define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD

#define EGLEW_KHR_gl_texture_3D_image EGLEW_GET_VAR(__EGLEW_KHR_gl_texture_3D_image)

#endif /* EGL_KHR_gl_texture_3D_image */

/* -------------------- EGL_KHR_gl_texture_cubemap_image ------------------- */

#ifndef EGL_KHR_gl_texture_cubemap_image
#define EGL_KHR_gl_texture_cubemap_image 1

#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8

#define EGLEW_KHR_gl_texture_cubemap_image EGLEW_GET_VAR(__EGLEW_KHR_gl_texture_cubemap_image)

#endif /* EGL_KHR_gl_texture_cubemap_image */

/* ----------------------------- EGL_KHR_image ----------------------------- */

#ifndef EGL_KHR_image
#define EGL_KHR_image 1

#define EGL_NATIVE_PIXMAP_KHR 0x30B0

typedef EGLImageKHR  ( * PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay  dpy, EGLContext  ctx, EGLenum  target, EGLClientBuffer  buffer, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay  dpy, EGLImageKHR  image);

#define eglCreateImageKHR EGLEW_GET_FUN(__eglewCreateImageKHR)
#define eglDestroyImageKHR EGLEW_GET_FUN(__eglewDestroyImageKHR)

#define EGLEW_KHR_image EGLEW_GET_VAR(__EGLEW_KHR_image)

#endif /* EGL_KHR_image */

/* --------------------------- EGL_KHR_image_base -------------------------- */

#ifndef EGL_KHR_image_base
#define EGL_KHR_image_base 1

#define EGL_IMAGE_PRESERVED_KHR 0x30D2

#define EGLEW_KHR_image_base EGLEW_GET_VAR(__EGLEW_KHR_image_base)

#endif /* EGL_KHR_image_base */

/* -------------------------- EGL_KHR_image_pixmap ------------------------- */

#ifndef EGL_KHR_image_pixmap
#define EGL_KHR_image_pixmap 1

#define EGL_NATIVE_PIXMAP_KHR 0x30B0

#define EGLEW_KHR_image_pixmap EGLEW_GET_VAR(__EGLEW_KHR_image_pixmap)

#endif /* EGL_KHR_image_pixmap */

/* -------------------------- EGL_KHR_lock_surface ------------------------- */

#ifndef EGL_KHR_lock_surface
#define EGL_KHR_lock_surface 1

#define EGL_READ_SURFACE_BIT_KHR 0x0001
#define EGL_WRITE_SURFACE_BIT_KHR 0x0002
#define EGL_LOCK_SURFACE_BIT_KHR 0x0080
#define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100
#define EGL_MATCH_FORMAT_KHR 0x3043
#define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0
#define EGL_FORMAT_RGB_565_KHR 0x30C1
#define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2
#define EGL_FORMAT_RGBA_8888_KHR 0x30C3
#define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4
#define EGL_LOCK_USAGE_HINT_KHR 0x30C5
#define EGL_BITMAP_POINTER_KHR 0x30C6
#define EGL_BITMAP_PITCH_KHR 0x30C7
#define EGL_BITMAP_ORIGIN_KHR 0x30C8
#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9
#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA
#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB
#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC
#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD
#define EGL_LOWER_LEFT_KHR 0x30CE
#define EGL_UPPER_LEFT_KHR 0x30CF

typedef EGLBoolean  ( * PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay  dpy, EGLSurface  surface, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay  dpy, EGLSurface  surface);

#define eglLockSurfaceKHR EGLEW_GET_FUN(__eglewLockSurfaceKHR)
#define eglUnlockSurfaceKHR EGLEW_GET_FUN(__eglewUnlockSurfaceKHR)

#define EGLEW_KHR_lock_surface EGLEW_GET_VAR(__EGLEW_KHR_lock_surface)

#endif /* EGL_KHR_lock_surface */

/* ------------------------- EGL_KHR_lock_surface2 ------------------------- */

#ifndef EGL_KHR_lock_surface2
#define EGL_KHR_lock_surface2 1

#define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110

#define EGLEW_KHR_lock_surface2 EGLEW_GET_VAR(__EGLEW_KHR_lock_surface2)

#endif /* EGL_KHR_lock_surface2 */

/* ------------------------- EGL_KHR_lock_surface3 ------------------------- */

#ifndef EGL_KHR_lock_surface3
#define EGL_KHR_lock_surface3 1

#define EGL_READ_SURFACE_BIT_KHR 0x0001
#define EGL_WRITE_SURFACE_BIT_KHR 0x0002
#define EGL_LOCK_SURFACE_BIT_KHR 0x0080
#define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100
#define EGL_MATCH_FORMAT_KHR 0x3043
#define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0
#define EGL_FORMAT_RGB_565_KHR 0x30C1
#define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2
#define EGL_FORMAT_RGBA_8888_KHR 0x30C3
#define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4
#define EGL_LOCK_USAGE_HINT_KHR 0x30C5
#define EGL_BITMAP_POINTER_KHR 0x30C6
#define EGL_BITMAP_PITCH_KHR 0x30C7
#define EGL_BITMAP_ORIGIN_KHR 0x30C8
#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9
#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA
#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB
#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC
#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD
#define EGL_LOWER_LEFT_KHR 0x30CE
#define EGL_UPPER_LEFT_KHR 0x30CF
#define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110

typedef EGLBoolean  ( * PFNEGLQUERYSURFACE64KHRPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  attribute, EGLAttribKHR * value);

#define eglQuerySurface64KHR EGLEW_GET_FUN(__eglewQuerySurface64KHR)

#define EGLEW_KHR_lock_surface3 EGLEW_GET_VAR(__EGLEW_KHR_lock_surface3)

#endif /* EGL_KHR_lock_surface3 */

/* --------------------- EGL_KHR_mutable_render_buffer --------------------- */

#ifndef EGL_KHR_mutable_render_buffer
#define EGL_KHR_mutable_render_buffer 1

#define EGL_MUTABLE_RENDER_BUFFER_BIT_KHR 0x1000

#define EGLEW_KHR_mutable_render_buffer EGLEW_GET_VAR(__EGLEW_KHR_mutable_render_buffer)

#endif /* EGL_KHR_mutable_render_buffer */

/* ----------------------- EGL_KHR_no_config_context ----------------------- */

#ifndef EGL_KHR_no_config_context
#define EGL_KHR_no_config_context 1

#define EGLEW_KHR_no_config_context EGLEW_GET_VAR(__EGLEW_KHR_no_config_context)

#endif /* EGL_KHR_no_config_context */

/* ------------------------- EGL_KHR_partial_update ------------------------ */

#ifndef EGL_KHR_partial_update
#define EGL_KHR_partial_update 1

#define EGL_BUFFER_AGE_KHR 0x313D

typedef EGLBoolean  ( * PFNEGLSETDAMAGEREGIONKHRPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint * rects, EGLint  n_rects);

#define eglSetDamageRegionKHR EGLEW_GET_FUN(__eglewSetDamageRegionKHR)

#define EGLEW_KHR_partial_update EGLEW_GET_VAR(__EGLEW_KHR_partial_update)

#endif /* EGL_KHR_partial_update */

/* ------------------------ EGL_KHR_platform_android ----------------------- */

#ifndef EGL_KHR_platform_android
#define EGL_KHR_platform_android 1

#define EGL_PLATFORM_ANDROID_KHR 0x3141

#define EGLEW_KHR_platform_android EGLEW_GET_VAR(__EGLEW_KHR_platform_android)

#endif /* EGL_KHR_platform_android */

/* -------------------------- EGL_KHR_platform_gbm ------------------------- */

#ifndef EGL_KHR_platform_gbm
#define EGL_KHR_platform_gbm 1

#define EGL_PLATFORM_GBM_KHR 0x31D7

#define EGLEW_KHR_platform_gbm EGLEW_GET_VAR(__EGLEW_KHR_platform_gbm)

#endif /* EGL_KHR_platform_gbm */

/* ------------------------ EGL_KHR_platform_wayland ----------------------- */

#ifndef EGL_KHR_platform_wayland
#define EGL_KHR_platform_wayland 1

#define EGL_PLATFORM_WAYLAND_KHR 0x31D8

#define EGLEW_KHR_platform_wayland EGLEW_GET_VAR(__EGLEW_KHR_platform_wayland)

#endif /* EGL_KHR_platform_wayland */

/* -------------------------- EGL_KHR_platform_x11 ------------------------- */

#ifndef EGL_KHR_platform_x11
#define EGL_KHR_platform_x11 1

#define EGL_PLATFORM_X11_KHR 0x31D5
#define EGL_PLATFORM_X11_SCREEN_KHR 0x31D6

#define EGLEW_KHR_platform_x11 EGLEW_GET_VAR(__EGLEW_KHR_platform_x11)

#endif /* EGL_KHR_platform_x11 */

/* ------------------------- EGL_KHR_reusable_sync ------------------------- */

#ifndef EGL_KHR_reusable_sync
#define EGL_KHR_reusable_sync 1

#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001
#define EGL_SYNC_STATUS_KHR 0x30F1
#define EGL_SIGNALED_KHR 0x30F2
#define EGL_UNSIGNALED_KHR 0x30F3
#define EGL_TIMEOUT_EXPIRED_KHR 0x30F5
#define EGL_CONDITION_SATISFIED_KHR 0x30F6
#define EGL_SYNC_TYPE_KHR 0x30F7
#define EGL_SYNC_REUSABLE_KHR 0x30FA
#define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFF

typedef EGLint  ( * PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay  dpy, EGLSyncKHR  sync, EGLint  flags, EGLTimeKHR  timeout);
typedef EGLSyncKHR  ( * PFNEGLCREATESYNCKHRPROC) (EGLDisplay  dpy, EGLenum  type, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay  dpy, EGLSyncKHR  sync);
typedef EGLBoolean  ( * PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay  dpy, EGLSyncKHR  sync, EGLint  attribute, EGLint * value);
typedef EGLBoolean  ( * PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay  dpy, EGLSyncKHR  sync, EGLenum  mode);

#define eglClientWaitSyncKHR EGLEW_GET_FUN(__eglewClientWaitSyncKHR)
#define eglCreateSyncKHR EGLEW_GET_FUN(__eglewCreateSyncKHR)
#define eglDestroySyncKHR EGLEW_GET_FUN(__eglewDestroySyncKHR)
#define eglGetSyncAttribKHR EGLEW_GET_FUN(__eglewGetSyncAttribKHR)
#define eglSignalSyncKHR EGLEW_GET_FUN(__eglewSignalSyncKHR)

#define EGLEW_KHR_reusable_sync EGLEW_GET_VAR(__EGLEW_KHR_reusable_sync)

#endif /* EGL_KHR_reusable_sync */

/* ----------------------------- EGL_KHR_stream ---------------------------- */

#ifndef EGL_KHR_stream
#define EGL_KHR_stream 1

#define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
#define EGL_PRODUCER_FRAME_KHR 0x3212
#define EGL_CONSUMER_FRAME_KHR 0x3213
#define EGL_STREAM_STATE_KHR 0x3214
#define EGL_STREAM_STATE_CREATED_KHR 0x3215
#define EGL_STREAM_STATE_CONNECTING_KHR 0x3216
#define EGL_STREAM_STATE_EMPTY_KHR 0x3217
#define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR 0x3218
#define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR 0x3219
#define EGL_STREAM_STATE_DISCONNECTED_KHR 0x321A
#define EGL_BAD_STREAM_KHR 0x321B
#define EGL_BAD_STATE_KHR 0x321C

typedef EGLStreamKHR  ( * PFNEGLCREATESTREAMKHRPROC) (EGLDisplay  dpy, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLDESTROYSTREAMKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream);
typedef EGLBoolean  ( * PFNEGLQUERYSTREAMKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  attribute, EGLint * value);
typedef EGLBoolean  ( * PFNEGLQUERYSTREAMU64KHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  attribute, EGLuint64KHR * value);
typedef EGLBoolean  ( * PFNEGLSTREAMATTRIBKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  attribute, EGLint  value);

#define eglCreateStreamKHR EGLEW_GET_FUN(__eglewCreateStreamKHR)
#define eglDestroyStreamKHR EGLEW_GET_FUN(__eglewDestroyStreamKHR)
#define eglQueryStreamKHR EGLEW_GET_FUN(__eglewQueryStreamKHR)
#define eglQueryStreamu64KHR EGLEW_GET_FUN(__eglewQueryStreamu64KHR)
#define eglStreamAttribKHR EGLEW_GET_FUN(__eglewStreamAttribKHR)

#define EGLEW_KHR_stream EGLEW_GET_VAR(__EGLEW_KHR_stream)

#endif /* EGL_KHR_stream */

/* ------------------------- EGL_KHR_stream_attrib ------------------------- */

#ifndef EGL_KHR_stream_attrib
#define EGL_KHR_stream_attrib 1

#define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
#define EGL_STREAM_STATE_KHR 0x3214
#define EGL_STREAM_STATE_CREATED_KHR 0x3215
#define EGL_STREAM_STATE_CONNECTING_KHR 0x3216

typedef EGLStreamKHR  ( * PFNEGLCREATESTREAMATTRIBKHRPROC) (EGLDisplay  dpy, const EGLAttrib * attrib_list);
typedef EGLBoolean  ( * PFNEGLQUERYSTREAMATTRIBKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  attribute, EGLAttrib * value);
typedef EGLBoolean  ( * PFNEGLSETSTREAMATTRIBKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  attribute, EGLAttrib  value);
typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, const EGLAttrib * attrib_list);
typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, const EGLAttrib * attrib_list);

#define eglCreateStreamAttribKHR EGLEW_GET_FUN(__eglewCreateStreamAttribKHR)
#define eglQueryStreamAttribKHR EGLEW_GET_FUN(__eglewQueryStreamAttribKHR)
#define eglSetStreamAttribKHR EGLEW_GET_FUN(__eglewSetStreamAttribKHR)
#define eglStreamConsumerAcquireAttribKHR EGLEW_GET_FUN(__eglewStreamConsumerAcquireAttribKHR)
#define eglStreamConsumerReleaseAttribKHR EGLEW_GET_FUN(__eglewStreamConsumerReleaseAttribKHR)

#define EGLEW_KHR_stream_attrib EGLEW_GET_VAR(__EGLEW_KHR_stream_attrib)

#endif /* EGL_KHR_stream_attrib */

/* ------------------- EGL_KHR_stream_consumer_gltexture ------------------- */

#ifndef EGL_KHR_stream_consumer_gltexture
#define EGL_KHR_stream_consumer_gltexture 1

#define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR 0x321E

typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERACQUIREKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream);
typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream);
typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERRELEASEKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream);

#define eglStreamConsumerAcquireKHR EGLEW_GET_FUN(__eglewStreamConsumerAcquireKHR)
#define eglStreamConsumerGLTextureExternalKHR EGLEW_GET_FUN(__eglewStreamConsumerGLTextureExternalKHR)
#define eglStreamConsumerReleaseKHR EGLEW_GET_FUN(__eglewStreamConsumerReleaseKHR)

#define EGLEW_KHR_stream_consumer_gltexture EGLEW_GET_VAR(__EGLEW_KHR_stream_consumer_gltexture)

#endif /* EGL_KHR_stream_consumer_gltexture */

/* -------------------- EGL_KHR_stream_cross_process_fd -------------------- */

#ifndef EGL_KHR_stream_cross_process_fd
#define EGL_KHR_stream_cross_process_fd 1

typedef EGLStreamKHR  ( * PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC) (EGLDisplay  dpy, EGLNativeFileDescriptorKHR  file_descriptor);
typedef EGLNativeFileDescriptorKHR  ( * PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream);

#define eglCreateStreamFromFileDescriptorKHR EGLEW_GET_FUN(__eglewCreateStreamFromFileDescriptorKHR)
#define eglGetStreamFileDescriptorKHR EGLEW_GET_FUN(__eglewGetStreamFileDescriptorKHR)

#define EGLEW_KHR_stream_cross_process_fd EGLEW_GET_VAR(__EGLEW_KHR_stream_cross_process_fd)

#endif /* EGL_KHR_stream_cross_process_fd */

/* -------------------------- EGL_KHR_stream_fifo -------------------------- */

#ifndef EGL_KHR_stream_fifo
#define EGL_KHR_stream_fifo 1

#define EGL_STREAM_FIFO_LENGTH_KHR 0x31FC
#define EGL_STREAM_TIME_NOW_KHR 0x31FD
#define EGL_STREAM_TIME_CONSUMER_KHR 0x31FE
#define EGL_STREAM_TIME_PRODUCER_KHR 0x31FF

typedef EGLBoolean  ( * PFNEGLQUERYSTREAMTIMEKHRPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  attribute, EGLTimeKHR * value);

#define eglQueryStreamTimeKHR EGLEW_GET_FUN(__eglewQueryStreamTimeKHR)

#define EGLEW_KHR_stream_fifo EGLEW_GET_VAR(__EGLEW_KHR_stream_fifo)

#endif /* EGL_KHR_stream_fifo */

/* ----------------- EGL_KHR_stream_producer_aldatalocator ----------------- */

#ifndef EGL_KHR_stream_producer_aldatalocator
#define EGL_KHR_stream_producer_aldatalocator 1

#define EGLEW_KHR_stream_producer_aldatalocator EGLEW_GET_VAR(__EGLEW_KHR_stream_producer_aldatalocator)

#endif /* EGL_KHR_stream_producer_aldatalocator */

/* ------------------- EGL_KHR_stream_producer_eglsurface ------------------ */

#ifndef EGL_KHR_stream_producer_eglsurface
#define EGL_KHR_stream_producer_eglsurface 1

#define EGL_STREAM_BIT_KHR 0x0800

typedef EGLSurface  ( * PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC) (EGLDisplay  dpy, EGLConfig  config, EGLStreamKHR  stream, const EGLint * attrib_list);

#define eglCreateStreamProducerSurfaceKHR EGLEW_GET_FUN(__eglewCreateStreamProducerSurfaceKHR)

#define EGLEW_KHR_stream_producer_eglsurface EGLEW_GET_VAR(__EGLEW_KHR_stream_producer_eglsurface)

#endif /* EGL_KHR_stream_producer_eglsurface */

/* ---------------------- EGL_KHR_surfaceless_context ---------------------- */

#ifndef EGL_KHR_surfaceless_context
#define EGL_KHR_surfaceless_context 1

#define EGLEW_KHR_surfaceless_context EGLEW_GET_VAR(__EGLEW_KHR_surfaceless_context)

#endif /* EGL_KHR_surfaceless_context */

/* -------------------- EGL_KHR_swap_buffers_with_damage ------------------- */

#ifndef EGL_KHR_swap_buffers_with_damage
#define EGL_KHR_swap_buffers_with_damage 1

typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint * rects, EGLint  n_rects);

#define eglSwapBuffersWithDamageKHR EGLEW_GET_FUN(__eglewSwapBuffersWithDamageKHR)

#define EGLEW_KHR_swap_buffers_with_damage EGLEW_GET_VAR(__EGLEW_KHR_swap_buffers_with_damage)

#endif /* EGL_KHR_swap_buffers_with_damage */

/* ------------------------ EGL_KHR_vg_parent_image ------------------------ */

#ifndef EGL_KHR_vg_parent_image
#define EGL_KHR_vg_parent_image 1

#define EGL_VG_PARENT_IMAGE_KHR 0x30BA

#define EGLEW_KHR_vg_parent_image EGLEW_GET_VAR(__EGLEW_KHR_vg_parent_image)

#endif /* EGL_KHR_vg_parent_image */

/* --------------------------- EGL_KHR_wait_sync --------------------------- */

#ifndef EGL_KHR_wait_sync
#define EGL_KHR_wait_sync 1

typedef EGLint  ( * PFNEGLWAITSYNCKHRPROC) (EGLDisplay  dpy, EGLSyncKHR  sync, EGLint  flags);

#define eglWaitSyncKHR EGLEW_GET_FUN(__eglewWaitSyncKHR)

#define EGLEW_KHR_wait_sync EGLEW_GET_VAR(__EGLEW_KHR_wait_sync)

#endif /* EGL_KHR_wait_sync */

/* --------------------------- EGL_MESA_drm_image -------------------------- */

#ifndef EGL_MESA_drm_image
#define EGL_MESA_drm_image 1

#define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001
#define EGL_DRM_BUFFER_USE_SHARE_MESA 0x00000002
#define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0
#define EGL_DRM_BUFFER_USE_MESA 0x31D1
#define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2
#define EGL_DRM_BUFFER_MESA 0x31D3
#define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4

typedef EGLImageKHR  ( * PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay  dpy, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay  dpy, EGLImageKHR  image, EGLint * name, EGLint * handle, EGLint * stride);

#define eglCreateDRMImageMESA EGLEW_GET_FUN(__eglewCreateDRMImageMESA)
#define eglExportDRMImageMESA EGLEW_GET_FUN(__eglewExportDRMImageMESA)

#define EGLEW_MESA_drm_image EGLEW_GET_VAR(__EGLEW_MESA_drm_image)

#endif /* EGL_MESA_drm_image */

/* --------------------- EGL_MESA_image_dma_buf_export --------------------- */

#ifndef EGL_MESA_image_dma_buf_export
#define EGL_MESA_image_dma_buf_export 1

typedef EGLBoolean  ( * PFNEGLEXPORTDMABUFIMAGEMESAPROC) (EGLDisplay  dpy, EGLImageKHR  image, int * fds, EGLint * strides, EGLint * offsets);
typedef EGLBoolean  ( * PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC) (EGLDisplay  dpy, EGLImageKHR  image, int * fourcc, int * num_planes, EGLuint64KHR * modifiers);

#define eglExportDMABUFImageMESA EGLEW_GET_FUN(__eglewExportDMABUFImageMESA)
#define eglExportDMABUFImageQueryMESA EGLEW_GET_FUN(__eglewExportDMABUFImageQueryMESA)

#define EGLEW_MESA_image_dma_buf_export EGLEW_GET_VAR(__EGLEW_MESA_image_dma_buf_export)

#endif /* EGL_MESA_image_dma_buf_export */

/* ------------------------- EGL_MESA_platform_gbm ------------------------- */

#ifndef EGL_MESA_platform_gbm
#define EGL_MESA_platform_gbm 1

#define EGL_PLATFORM_GBM_MESA 0x31D7

#define EGLEW_MESA_platform_gbm EGLEW_GET_VAR(__EGLEW_MESA_platform_gbm)

#endif /* EGL_MESA_platform_gbm */

/* --------------------- EGL_MESA_platform_surfaceless --------------------- */

#ifndef EGL_MESA_platform_surfaceless
#define EGL_MESA_platform_surfaceless 1

#define EGL_PLATFORM_SURFACELESS_MESA 0x31DD

#define EGLEW_MESA_platform_surfaceless EGLEW_GET_VAR(__EGLEW_MESA_platform_surfaceless)

#endif /* EGL_MESA_platform_surfaceless */

/* -------------------------- EGL_NOK_swap_region -------------------------- */

#ifndef EGL_NOK_swap_region
#define EGL_NOK_swap_region 1

typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  numRects, const EGLint * rects);

#define eglSwapBuffersRegionNOK EGLEW_GET_FUN(__eglewSwapBuffersRegionNOK)

#define EGLEW_NOK_swap_region EGLEW_GET_VAR(__EGLEW_NOK_swap_region)

#endif /* EGL_NOK_swap_region */

/* -------------------------- EGL_NOK_swap_region2 ------------------------- */

#ifndef EGL_NOK_swap_region2
#define EGL_NOK_swap_region2 1

typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSREGION2NOKPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  numRects, const EGLint * rects);

#define eglSwapBuffersRegion2NOK EGLEW_GET_FUN(__eglewSwapBuffersRegion2NOK)

#define EGLEW_NOK_swap_region2 EGLEW_GET_VAR(__EGLEW_NOK_swap_region2)

#endif /* EGL_NOK_swap_region2 */

/* ---------------------- EGL_NOK_texture_from_pixmap ---------------------- */

#ifndef EGL_NOK_texture_from_pixmap
#define EGL_NOK_texture_from_pixmap 1

#define EGL_Y_INVERTED_NOK 0x307F

#define EGLEW_NOK_texture_from_pixmap EGLEW_GET_VAR(__EGLEW_NOK_texture_from_pixmap)

#endif /* EGL_NOK_texture_from_pixmap */

/* ------------------------ EGL_NV_3dvision_surface ------------------------ */

#ifndef EGL_NV_3dvision_surface
#define EGL_NV_3dvision_surface 1

#define EGL_AUTO_STEREO_NV 0x3136

#define EGLEW_NV_3dvision_surface EGLEW_GET_VAR(__EGLEW_NV_3dvision_surface)

#endif /* EGL_NV_3dvision_surface */

/* ------------------------- EGL_NV_coverage_sample ------------------------ */

#ifndef EGL_NV_coverage_sample
#define EGL_NV_coverage_sample 1

#define EGL_COVERAGE_BUFFERS_NV 0x30E0
#define EGL_COVERAGE_SAMPLES_NV 0x30E1

#define EGLEW_NV_coverage_sample EGLEW_GET_VAR(__EGLEW_NV_coverage_sample)

#endif /* EGL_NV_coverage_sample */

/* --------------------- EGL_NV_coverage_sample_resolve -------------------- */

#ifndef EGL_NV_coverage_sample_resolve
#define EGL_NV_coverage_sample_resolve 1

#define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131
#define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132
#define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133

#define EGLEW_NV_coverage_sample_resolve EGLEW_GET_VAR(__EGLEW_NV_coverage_sample_resolve)

#endif /* EGL_NV_coverage_sample_resolve */

/* --------------------------- EGL_NV_cuda_event --------------------------- */

#ifndef EGL_NV_cuda_event
#define EGL_NV_cuda_event 1

#define EGL_CUDA_EVENT_HANDLE_NV 0x323B
#define EGL_SYNC_CUDA_EVENT_NV 0x323C
#define EGL_SYNC_CUDA_EVENT_COMPLETE_NV 0x323D

#define EGLEW_NV_cuda_event EGLEW_GET_VAR(__EGLEW_NV_cuda_event)

#endif /* EGL_NV_cuda_event */

/* ------------------------- EGL_NV_depth_nonlinear ------------------------ */

#ifndef EGL_NV_depth_nonlinear
#define EGL_NV_depth_nonlinear 1

#define EGL_DEPTH_ENCODING_NONE_NV 0
#define EGL_DEPTH_ENCODING_NV 0x30E2
#define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3

#define EGLEW_NV_depth_nonlinear EGLEW_GET_VAR(__EGLEW_NV_depth_nonlinear)

#endif /* EGL_NV_depth_nonlinear */

/* --------------------------- EGL_NV_device_cuda -------------------------- */

#ifndef EGL_NV_device_cuda
#define EGL_NV_device_cuda 1

#define EGL_CUDA_DEVICE_NV 0x323A

#define EGLEW_NV_device_cuda EGLEW_GET_VAR(__EGLEW_NV_device_cuda)

#endif /* EGL_NV_device_cuda */

/* -------------------------- EGL_NV_native_query -------------------------- */

#ifndef EGL_NV_native_query
#define EGL_NV_native_query 1

typedef EGLBoolean  ( * PFNEGLQUERYNATIVEDISPLAYNVPROC) (EGLDisplay  dpy, EGLNativeDisplayType * display_id);
typedef EGLBoolean  ( * PFNEGLQUERYNATIVEPIXMAPNVPROC) (EGLDisplay  dpy, EGLSurface  surf, EGLNativePixmapType * pixmap);
typedef EGLBoolean  ( * PFNEGLQUERYNATIVEWINDOWNVPROC) (EGLDisplay  dpy, EGLSurface  surf, EGLNativeWindowType * window);

#define eglQueryNativeDisplayNV EGLEW_GET_FUN(__eglewQueryNativeDisplayNV)
#define eglQueryNativePixmapNV EGLEW_GET_FUN(__eglewQueryNativePixmapNV)
#define eglQueryNativeWindowNV EGLEW_GET_FUN(__eglewQueryNativeWindowNV)

#define EGLEW_NV_native_query EGLEW_GET_VAR(__EGLEW_NV_native_query)

#endif /* EGL_NV_native_query */

/* ---------------------- EGL_NV_post_convert_rounding --------------------- */

#ifndef EGL_NV_post_convert_rounding
#define EGL_NV_post_convert_rounding 1

#define EGLEW_NV_post_convert_rounding EGLEW_GET_VAR(__EGLEW_NV_post_convert_rounding)

#endif /* EGL_NV_post_convert_rounding */

/* ------------------------- EGL_NV_post_sub_buffer ------------------------ */

#ifndef EGL_NV_post_sub_buffer
#define EGL_NV_post_sub_buffer 1

#define EGL_POST_SUB_BUFFER_SUPPORTED_NV 0x30BE

typedef EGLBoolean  ( * PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay  dpy, EGLSurface  surface, EGLint  x, EGLint  y, EGLint  width, EGLint  height);

#define eglPostSubBufferNV EGLEW_GET_FUN(__eglewPostSubBufferNV)

#define EGLEW_NV_post_sub_buffer EGLEW_GET_VAR(__EGLEW_NV_post_sub_buffer)

#endif /* EGL_NV_post_sub_buffer */

/* ------------------ EGL_NV_robustness_video_memory_purge ----------------- */

#ifndef EGL_NV_robustness_video_memory_purge
#define EGL_NV_robustness_video_memory_purge 1

#define EGL_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV 0x334C

#define EGLEW_NV_robustness_video_memory_purge EGLEW_GET_VAR(__EGLEW_NV_robustness_video_memory_purge)

#endif /* EGL_NV_robustness_video_memory_purge */

/* ------------------ EGL_NV_stream_consumer_gltexture_yuv ----------------- */

#ifndef EGL_NV_stream_consumer_gltexture_yuv
#define EGL_NV_stream_consumer_gltexture_yuv 1

#define EGL_YUV_BUFFER_EXT 0x3300
#define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311
#define EGL_YUV_PLANE0_TEXTURE_UNIT_NV 0x332C
#define EGL_YUV_PLANE1_TEXTURE_UNIT_NV 0x332D
#define EGL_YUV_PLANE2_TEXTURE_UNIT_NV 0x332E

typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLAttrib  *attrib_list);

#define eglStreamConsumerGLTextureExternalAttribsNV EGLEW_GET_FUN(__eglewStreamConsumerGLTextureExternalAttribsNV)

#define EGLEW_NV_stream_consumer_gltexture_yuv EGLEW_GET_VAR(__EGLEW_NV_stream_consumer_gltexture_yuv)

#endif /* EGL_NV_stream_consumer_gltexture_yuv */

/* ---------------------- EGL_NV_stream_cross_display ---------------------- */

#ifndef EGL_NV_stream_cross_display
#define EGL_NV_stream_cross_display 1

#define EGL_STREAM_CROSS_DISPLAY_NV 0x334E

#define EGLEW_NV_stream_cross_display EGLEW_GET_VAR(__EGLEW_NV_stream_cross_display)

#endif /* EGL_NV_stream_cross_display */

/* ----------------------- EGL_NV_stream_cross_object ---------------------- */

#ifndef EGL_NV_stream_cross_object
#define EGL_NV_stream_cross_object 1

#define EGL_STREAM_CROSS_OBJECT_NV 0x334D

#define EGLEW_NV_stream_cross_object EGLEW_GET_VAR(__EGLEW_NV_stream_cross_object)

#endif /* EGL_NV_stream_cross_object */

/* --------------------- EGL_NV_stream_cross_partition --------------------- */

#ifndef EGL_NV_stream_cross_partition
#define EGL_NV_stream_cross_partition 1

#define EGL_STREAM_CROSS_PARTITION_NV 0x323F

#define EGLEW_NV_stream_cross_partition EGLEW_GET_VAR(__EGLEW_NV_stream_cross_partition)

#endif /* EGL_NV_stream_cross_partition */

/* ---------------------- EGL_NV_stream_cross_process ---------------------- */

#ifndef EGL_NV_stream_cross_process
#define EGL_NV_stream_cross_process 1

#define EGL_STREAM_CROSS_PROCESS_NV 0x3245

#define EGLEW_NV_stream_cross_process EGLEW_GET_VAR(__EGLEW_NV_stream_cross_process)

#endif /* EGL_NV_stream_cross_process */

/* ----------------------- EGL_NV_stream_cross_system ---------------------- */

#ifndef EGL_NV_stream_cross_system
#define EGL_NV_stream_cross_system 1

#define EGL_STREAM_CROSS_SYSTEM_NV 0x334F

#define EGLEW_NV_stream_cross_system EGLEW_GET_VAR(__EGLEW_NV_stream_cross_system)

#endif /* EGL_NV_stream_cross_system */

/* ------------------------ EGL_NV_stream_fifo_next ------------------------ */

#ifndef EGL_NV_stream_fifo_next
#define EGL_NV_stream_fifo_next 1

#define EGL_PENDING_FRAME_NV 0x3329
#define EGL_STREAM_TIME_PENDING_NV 0x332A

#define EGLEW_NV_stream_fifo_next EGLEW_GET_VAR(__EGLEW_NV_stream_fifo_next)

#endif /* EGL_NV_stream_fifo_next */

/* --------------------- EGL_NV_stream_fifo_synchronous -------------------- */

#ifndef EGL_NV_stream_fifo_synchronous
#define EGL_NV_stream_fifo_synchronous 1

#define EGL_STREAM_FIFO_SYNCHRONOUS_NV 0x3336

#define EGLEW_NV_stream_fifo_synchronous EGLEW_GET_VAR(__EGLEW_NV_stream_fifo_synchronous)

#endif /* EGL_NV_stream_fifo_synchronous */

/* ----------------------- EGL_NV_stream_frame_limits ---------------------- */

#ifndef EGL_NV_stream_frame_limits
#define EGL_NV_stream_frame_limits 1

#define EGL_PRODUCER_MAX_FRAME_HINT_NV 0x3337
#define EGL_CONSUMER_MAX_FRAME_HINT_NV 0x3338

#define EGLEW_NV_stream_frame_limits EGLEW_GET_VAR(__EGLEW_NV_stream_frame_limits)

#endif /* EGL_NV_stream_frame_limits */

/* ------------------------- EGL_NV_stream_metadata ------------------------ */

#ifndef EGL_NV_stream_metadata
#define EGL_NV_stream_metadata 1

#define EGL_MAX_STREAM_METADATA_BLOCKS_NV 0x3250
#define EGL_MAX_STREAM_METADATA_BLOCK_SIZE_NV 0x3251
#define EGL_MAX_STREAM_METADATA_TOTAL_SIZE_NV 0x3252
#define EGL_PRODUCER_METADATA_NV 0x3253
#define EGL_CONSUMER_METADATA_NV 0x3254
#define EGL_METADATA0_SIZE_NV 0x3255
#define EGL_METADATA1_SIZE_NV 0x3256
#define EGL_METADATA2_SIZE_NV 0x3257
#define EGL_METADATA3_SIZE_NV 0x3258
#define EGL_METADATA0_TYPE_NV 0x3259
#define EGL_METADATA1_TYPE_NV 0x325A
#define EGL_METADATA2_TYPE_NV 0x325B
#define EGL_METADATA3_TYPE_NV 0x325C
#define EGL_PENDING_METADATA_NV 0x3328

typedef EGLBoolean  ( * PFNEGLQUERYDISPLAYATTRIBNVPROC) (EGLDisplay  dpy, EGLint  attribute, EGLAttrib * value);
typedef EGLBoolean  ( * PFNEGLQUERYSTREAMMETADATANVPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  name, EGLint  n, EGLint  offset, EGLint  size, void * data);
typedef EGLBoolean  ( * PFNEGLSETSTREAMMETADATANVPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLint  n, EGLint  offset, EGLint  size, const void * data);

#define eglQueryDisplayAttribNV EGLEW_GET_FUN(__eglewQueryDisplayAttribNV)
#define eglQueryStreamMetadataNV EGLEW_GET_FUN(__eglewQueryStreamMetadataNV)
#define eglSetStreamMetadataNV EGLEW_GET_FUN(__eglewSetStreamMetadataNV)

#define EGLEW_NV_stream_metadata EGLEW_GET_VAR(__EGLEW_NV_stream_metadata)

#endif /* EGL_NV_stream_metadata */

/* -------------------------- EGL_NV_stream_remote ------------------------- */

#ifndef EGL_NV_stream_remote
#define EGL_NV_stream_remote 1

#define EGL_STREAM_STATE_INITIALIZING_NV 0x3240
#define EGL_STREAM_TYPE_NV 0x3241
#define EGL_STREAM_PROTOCOL_NV 0x3242
#define EGL_STREAM_ENDPOINT_NV 0x3243
#define EGL_STREAM_LOCAL_NV 0x3244
#define EGL_STREAM_PROTOCOL_FD_NV 0x3246
#define EGL_STREAM_PRODUCER_NV 0x3247
#define EGL_STREAM_CONSUMER_NV 0x3248

#define EGLEW_NV_stream_remote EGLEW_GET_VAR(__EGLEW_NV_stream_remote)

#endif /* EGL_NV_stream_remote */

/* -------------------------- EGL_NV_stream_reset -------------------------- */

#ifndef EGL_NV_stream_reset
#define EGL_NV_stream_reset 1

#define EGL_SUPPORT_RESET_NV 0x3334
#define EGL_SUPPORT_REUSE_NV 0x3335

typedef EGLBoolean  ( * PFNEGLRESETSTREAMNVPROC) (EGLDisplay  dpy, EGLStreamKHR  stream);

#define eglResetStreamNV EGLEW_GET_FUN(__eglewResetStreamNV)

#define EGLEW_NV_stream_reset EGLEW_GET_VAR(__EGLEW_NV_stream_reset)

#endif /* EGL_NV_stream_reset */

/* -------------------------- EGL_NV_stream_socket ------------------------- */

#ifndef EGL_NV_stream_socket
#define EGL_NV_stream_socket 1

#define EGL_STREAM_PROTOCOL_SOCKET_NV 0x324B
#define EGL_SOCKET_HANDLE_NV 0x324C
#define EGL_SOCKET_TYPE_NV 0x324D

#define EGLEW_NV_stream_socket EGLEW_GET_VAR(__EGLEW_NV_stream_socket)

#endif /* EGL_NV_stream_socket */

/* ----------------------- EGL_NV_stream_socket_inet ----------------------- */

#ifndef EGL_NV_stream_socket_inet
#define EGL_NV_stream_socket_inet 1

#define EGL_SOCKET_TYPE_INET_NV 0x324F

#define EGLEW_NV_stream_socket_inet EGLEW_GET_VAR(__EGLEW_NV_stream_socket_inet)

#endif /* EGL_NV_stream_socket_inet */

/* ----------------------- EGL_NV_stream_socket_unix ----------------------- */

#ifndef EGL_NV_stream_socket_unix
#define EGL_NV_stream_socket_unix 1

#define EGL_SOCKET_TYPE_UNIX_NV 0x324E

#define EGLEW_NV_stream_socket_unix EGLEW_GET_VAR(__EGLEW_NV_stream_socket_unix)

#endif /* EGL_NV_stream_socket_unix */

/* --------------------------- EGL_NV_stream_sync -------------------------- */

#ifndef EGL_NV_stream_sync
#define EGL_NV_stream_sync 1

#define EGL_SYNC_TYPE_KHR 0x30F7
#define EGL_SYNC_NEW_FRAME_NV 0x321F

typedef EGLSyncKHR  ( * PFNEGLCREATESTREAMSYNCNVPROC) (EGLDisplay  dpy, EGLStreamKHR  stream, EGLenum  type, const EGLint * attrib_list);

#define eglCreateStreamSyncNV EGLEW_GET_FUN(__eglewCreateStreamSyncNV)

#define EGLEW_NV_stream_sync EGLEW_GET_VAR(__EGLEW_NV_stream_sync)

#endif /* EGL_NV_stream_sync */

/* ------------------------------ EGL_NV_sync ------------------------------ */

#ifndef EGL_NV_sync
#define EGL_NV_sync 1

#define EGL_SYNC_FLUSH_COMMANDS_BIT_NV 0x0001
#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV 0x30E6
#define EGL_SYNC_STATUS_NV 0x30E7
#define EGL_SIGNALED_NV 0x30E8
#define EGL_UNSIGNALED_NV 0x30E9
#define EGL_ALREADY_SIGNALED_NV 0x30EA
#define EGL_TIMEOUT_EXPIRED_NV 0x30EB
#define EGL_CONDITION_SATISFIED_NV 0x30EC
#define EGL_SYNC_TYPE_NV 0x30ED
#define EGL_SYNC_CONDITION_NV 0x30EE
#define EGL_SYNC_FENCE_NV 0x30EF
#define EGL_FOREVER_NV 0xFFFFFFFFFFFFFFFF

typedef EGLint  ( * PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV  sync, EGLint  flags, EGLTimeNV  timeout);
typedef EGLSyncNV  ( * PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay  dpy, EGLenum  condition, const EGLint * attrib_list);
typedef EGLBoolean  ( * PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV  sync);
typedef EGLBoolean  ( * PFNEGLFENCENVPROC) (EGLSyncNV  sync);
typedef EGLBoolean  ( * PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV  sync, EGLint  attribute, EGLint * value);
typedef EGLBoolean  ( * PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV  sync, EGLenum  mode);

#define eglClientWaitSyncNV EGLEW_GET_FUN(__eglewClientWaitSyncNV)
#define eglCreateFenceSyncNV EGLEW_GET_FUN(__eglewCreateFenceSyncNV)
#define eglDestroySyncNV EGLEW_GET_FUN(__eglewDestroySyncNV)
#define eglFenceNV EGLEW_GET_FUN(__eglewFenceNV)
#define eglGetSyncAttribNV EGLEW_GET_FUN(__eglewGetSyncAttribNV)
#define eglSignalSyncNV EGLEW_GET_FUN(__eglewSignalSyncNV)

#define EGLEW_NV_sync EGLEW_GET_VAR(__EGLEW_NV_sync)

#endif /* EGL_NV_sync */

/* --------------------------- EGL_NV_system_time -------------------------- */

#ifndef EGL_NV_system_time
#define EGL_NV_system_time 1

typedef EGLuint64NV  ( * PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) ( void );
typedef EGLuint64NV  ( * PFNEGLGETSYSTEMTIMENVPROC) ( void );

#define eglGetSystemTimeFrequencyNV EGLEW_GET_FUN(__eglewGetSystemTimeFrequencyNV)
#define eglGetSystemTimeNV EGLEW_GET_FUN(__eglewGetSystemTimeNV)

#define EGLEW_NV_system_time EGLEW_GET_VAR(__EGLEW_NV_system_time)

#endif /* EGL_NV_system_time */

/* --------------------- EGL_TIZEN_image_native_buffer --------------------- */

#ifndef EGL_TIZEN_image_native_buffer
#define EGL_TIZEN_image_native_buffer 1

#define EGL_NATIVE_BUFFER_TIZEN 0x32A0

#define EGLEW_TIZEN_image_native_buffer EGLEW_GET_VAR(__EGLEW_TIZEN_image_native_buffer)

#endif /* EGL_TIZEN_image_native_buffer */

/* --------------------- EGL_TIZEN_image_native_surface -------------------- */

#ifndef EGL_TIZEN_image_native_surface
#define EGL_TIZEN_image_native_surface 1

#define EGL_NATIVE_SURFACE_TIZEN 0x32A1

#define EGLEW_TIZEN_image_native_surface EGLEW_GET_VAR(__EGLEW_TIZEN_image_native_surface)

#endif /* EGL_TIZEN_image_native_surface */

/* ------------------------------------------------------------------------- */

#define EGLEW_FUN_EXPORT GLEW_FUN_EXPORT
#define EGLEW_VAR_EXPORT GLEW_VAR_EXPORT

EGLEW_FUN_EXPORT PFNEGLCHOOSECONFIGPROC __eglewChooseConfig;
EGLEW_FUN_EXPORT PFNEGLCOPYBUFFERSPROC __eglewCopyBuffers;
EGLEW_FUN_EXPORT PFNEGLCREATECONTEXTPROC __eglewCreateContext;
EGLEW_FUN_EXPORT PFNEGLCREATEPBUFFERSURFACEPROC __eglewCreatePbufferSurface;
EGLEW_FUN_EXPORT PFNEGLCREATEPIXMAPSURFACEPROC __eglewCreatePixmapSurface;
EGLEW_FUN_EXPORT PFNEGLCREATEWINDOWSURFACEPROC __eglewCreateWindowSurface;
EGLEW_FUN_EXPORT PFNEGLDESTROYCONTEXTPROC __eglewDestroyContext;
EGLEW_FUN_EXPORT PFNEGLDESTROYSURFACEPROC __eglewDestroySurface;
EGLEW_FUN_EXPORT PFNEGLGETCONFIGATTRIBPROC __eglewGetConfigAttrib;
EGLEW_FUN_EXPORT PFNEGLGETCONFIGSPROC __eglewGetConfigs;
EGLEW_FUN_EXPORT PFNEGLGETCURRENTDISPLAYPROC __eglewGetCurrentDisplay;
EGLEW_FUN_EXPORT PFNEGLGETCURRENTSURFACEPROC __eglewGetCurrentSurface;
EGLEW_FUN_EXPORT PFNEGLGETDISPLAYPROC __eglewGetDisplay;
EGLEW_FUN_EXPORT PFNEGLGETERRORPROC __eglewGetError;
EGLEW_FUN_EXPORT PFNEGLINITIALIZEPROC __eglewInitialize;
EGLEW_FUN_EXPORT PFNEGLMAKECURRENTPROC __eglewMakeCurrent;
EGLEW_FUN_EXPORT PFNEGLQUERYCONTEXTPROC __eglewQueryContext;
EGLEW_FUN_EXPORT PFNEGLQUERYSTRINGPROC __eglewQueryString;
EGLEW_FUN_EXPORT PFNEGLQUERYSURFACEPROC __eglewQuerySurface;
EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSPROC __eglewSwapBuffers;
EGLEW_FUN_EXPORT PFNEGLTERMINATEPROC __eglewTerminate;
EGLEW_FUN_EXPORT PFNEGLWAITGLPROC __eglewWaitGL;
EGLEW_FUN_EXPORT PFNEGLWAITNATIVEPROC __eglewWaitNative;

EGLEW_FUN_EXPORT PFNEGLBINDTEXIMAGEPROC __eglewBindTexImage;
EGLEW_FUN_EXPORT PFNEGLRELEASETEXIMAGEPROC __eglewReleaseTexImage;
EGLEW_FUN_EXPORT PFNEGLSURFACEATTRIBPROC __eglewSurfaceAttrib;
EGLEW_FUN_EXPORT PFNEGLSWAPINTERVALPROC __eglewSwapInterval;

EGLEW_FUN_EXPORT PFNEGLBINDAPIPROC __eglewBindAPI;
EGLEW_FUN_EXPORT PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC __eglewCreatePbufferFromClientBuffer;
EGLEW_FUN_EXPORT PFNEGLQUERYAPIPROC __eglewQueryAPI;
EGLEW_FUN_EXPORT PFNEGLRELEASETHREADPROC __eglewReleaseThread;
EGLEW_FUN_EXPORT PFNEGLWAITCLIENTPROC __eglewWaitClient;

EGLEW_FUN_EXPORT PFNEGLGETCURRENTCONTEXTPROC __eglewGetCurrentContext;

EGLEW_FUN_EXPORT PFNEGLCLIENTWAITSYNCPROC __eglewClientWaitSync;
EGLEW_FUN_EXPORT PFNEGLCREATEIMAGEPROC __eglewCreateImage;
EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC __eglewCreatePlatformPixmapSurface;
EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMWINDOWSURFACEPROC __eglewCreatePlatformWindowSurface;
EGLEW_FUN_EXPORT PFNEGLCREATESYNCPROC __eglewCreateSync;
EGLEW_FUN_EXPORT PFNEGLDESTROYIMAGEPROC __eglewDestroyImage;
EGLEW_FUN_EXPORT PFNEGLDESTROYSYNCPROC __eglewDestroySync;
EGLEW_FUN_EXPORT PFNEGLGETPLATFORMDISPLAYPROC __eglewGetPlatformDisplay;
EGLEW_FUN_EXPORT PFNEGLGETSYNCATTRIBPROC __eglewGetSyncAttrib;
EGLEW_FUN_EXPORT PFNEGLWAITSYNCPROC __eglewWaitSync;

EGLEW_FUN_EXPORT PFNEGLSETBLOBCACHEFUNCSANDROIDPROC __eglewSetBlobCacheFuncsANDROID;

EGLEW_FUN_EXPORT PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC __eglewCreateNativeClientBufferANDROID;

EGLEW_FUN_EXPORT PFNEGLDUPNATIVEFENCEFDANDROIDPROC __eglewDupNativeFenceFDANDROID;

EGLEW_FUN_EXPORT PFNEGLPRESENTATIONTIMEANDROIDPROC __eglewPresentationTimeANDROID;

EGLEW_FUN_EXPORT PFNEGLQUERYSURFACEPOINTERANGLEPROC __eglewQuerySurfacePointerANGLE;

EGLEW_FUN_EXPORT PFNEGLQUERYDEVICESEXTPROC __eglewQueryDevicesEXT;

EGLEW_FUN_EXPORT PFNEGLQUERYDEVICEATTRIBEXTPROC __eglewQueryDeviceAttribEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYDEVICESTRINGEXTPROC __eglewQueryDeviceStringEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYDISPLAYATTRIBEXTPROC __eglewQueryDisplayAttribEXT;

EGLEW_FUN_EXPORT PFNEGLQUERYDMABUFFORMATSEXTPROC __eglewQueryDmaBufFormatsEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYDMABUFMODIFIERSEXTPROC __eglewQueryDmaBufModifiersEXT;

EGLEW_FUN_EXPORT PFNEGLGETOUTPUTLAYERSEXTPROC __eglewGetOutputLayersEXT;
EGLEW_FUN_EXPORT PFNEGLGETOUTPUTPORTSEXTPROC __eglewGetOutputPortsEXT;
EGLEW_FUN_EXPORT PFNEGLOUTPUTLAYERATTRIBEXTPROC __eglewOutputLayerAttribEXT;
EGLEW_FUN_EXPORT PFNEGLOUTPUTPORTATTRIBEXTPROC __eglewOutputPortAttribEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC __eglewQueryOutputLayerAttribEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC __eglewQueryOutputLayerStringEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC __eglewQueryOutputPortAttribEXT;
EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC __eglewQueryOutputPortStringEXT;

EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC __eglewCreatePlatformPixmapSurfaceEXT;
EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC __eglewCreatePlatformWindowSurfaceEXT;
EGLEW_FUN_EXPORT PFNEGLGETPLATFORMDISPLAYEXTPROC __eglewGetPlatformDisplayEXT;

EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMEROUTPUTEXTPROC __eglewStreamConsumerOutputEXT;

EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC __eglewSwapBuffersWithDamageEXT;

EGLEW_FUN_EXPORT PFNEGLCREATEPIXMAPSURFACEHIPROC __eglewCreatePixmapSurfaceHI;

EGLEW_FUN_EXPORT PFNEGLCREATESYNC64KHRPROC __eglewCreateSync64KHR;

EGLEW_FUN_EXPORT PFNEGLDEBUGMESSAGECONTROLKHRPROC __eglewDebugMessageControlKHR;
EGLEW_FUN_EXPORT PFNEGLLABELOBJECTKHRPROC __eglewLabelObjectKHR;
EGLEW_FUN_EXPORT PFNEGLQUERYDEBUGKHRPROC __eglewQueryDebugKHR;

EGLEW_FUN_EXPORT PFNEGLCREATEIMAGEKHRPROC __eglewCreateImageKHR;
EGLEW_FUN_EXPORT PFNEGLDESTROYIMAGEKHRPROC __eglewDestroyImageKHR;

EGLEW_FUN_EXPORT PFNEGLLOCKSURFACEKHRPROC __eglewLockSurfaceKHR;
EGLEW_FUN_EXPORT PFNEGLUNLOCKSURFACEKHRPROC __eglewUnlockSurfaceKHR;

EGLEW_FUN_EXPORT PFNEGLQUERYSURFACE64KHRPROC __eglewQuerySurface64KHR;

EGLEW_FUN_EXPORT PFNEGLSETDAMAGEREGIONKHRPROC __eglewSetDamageRegionKHR;

EGLEW_FUN_EXPORT PFNEGLCLIENTWAITSYNCKHRPROC __eglewClientWaitSyncKHR;
EGLEW_FUN_EXPORT PFNEGLCREATESYNCKHRPROC __eglewCreateSyncKHR;
EGLEW_FUN_EXPORT PFNEGLDESTROYSYNCKHRPROC __eglewDestroySyncKHR;
EGLEW_FUN_EXPORT PFNEGLGETSYNCATTRIBKHRPROC __eglewGetSyncAttribKHR;
EGLEW_FUN_EXPORT PFNEGLSIGNALSYNCKHRPROC __eglewSignalSyncKHR;

EGLEW_FUN_EXPORT PFNEGLCREATESTREAMKHRPROC __eglewCreateStreamKHR;
EGLEW_FUN_EXPORT PFNEGLDESTROYSTREAMKHRPROC __eglewDestroyStreamKHR;
EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMKHRPROC __eglewQueryStreamKHR;
EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMU64KHRPROC __eglewQueryStreamu64KHR;
EGLEW_FUN_EXPORT PFNEGLSTREAMATTRIBKHRPROC __eglewStreamAttribKHR;

EGLEW_FUN_EXPORT PFNEGLCREATESTREAMATTRIBKHRPROC __eglewCreateStreamAttribKHR;
EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMATTRIBKHRPROC __eglewQueryStreamAttribKHR;
EGLEW_FUN_EXPORT PFNEGLSETSTREAMATTRIBKHRPROC __eglewSetStreamAttribKHR;
EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC __eglewStreamConsumerAcquireAttribKHR;
EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC __eglewStreamConsumerReleaseAttribKHR;

EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERACQUIREKHRPROC __eglewStreamConsumerAcquireKHR;
EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC __eglewStreamConsumerGLTextureExternalKHR;
EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERRELEASEKHRPROC __eglewStreamConsumerReleaseKHR;

EGLEW_FUN_EXPORT PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC __eglewCreateStreamFromFileDescriptorKHR;
EGLEW_FUN_EXPORT PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC __eglewGetStreamFileDescriptorKHR;

EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMTIMEKHRPROC __eglewQueryStreamTimeKHR;

EGLEW_FUN_EXPORT PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC __eglewCreateStreamProducerSurfaceKHR;

EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC __eglewSwapBuffersWithDamageKHR;

EGLEW_FUN_EXPORT PFNEGLWAITSYNCKHRPROC __eglewWaitSyncKHR;

EGLEW_FUN_EXPORT PFNEGLCREATEDRMIMAGEMESAPROC __eglewCreateDRMImageMESA;
EGLEW_FUN_EXPORT PFNEGLEXPORTDRMIMAGEMESAPROC __eglewExportDRMImageMESA;

EGLEW_FUN_EXPORT PFNEGLEXPORTDMABUFIMAGEMESAPROC __eglewExportDMABUFImageMESA;
EGLEW_FUN_EXPORT PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC __eglewExportDMABUFImageQueryMESA;

EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSREGIONNOKPROC __eglewSwapBuffersRegionNOK;

EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSREGION2NOKPROC __eglewSwapBuffersRegion2NOK;

EGLEW_FUN_EXPORT PFNEGLQUERYNATIVEDISPLAYNVPROC __eglewQueryNativeDisplayNV;
EGLEW_FUN_EXPORT PFNEGLQUERYNATIVEPIXMAPNVPROC __eglewQueryNativePixmapNV;
EGLEW_FUN_EXPORT PFNEGLQUERYNATIVEWINDOWNVPROC __eglewQueryNativeWindowNV;

EGLEW_FUN_EXPORT PFNEGLPOSTSUBBUFFERNVPROC __eglewPostSubBufferNV;

EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC __eglewStreamConsumerGLTextureExternalAttribsNV;

EGLEW_FUN_EXPORT PFNEGLQUERYDISPLAYATTRIBNVPROC __eglewQueryDisplayAttribNV;
EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMMETADATANVPROC __eglewQueryStreamMetadataNV;
EGLEW_FUN_EXPORT PFNEGLSETSTREAMMETADATANVPROC __eglewSetStreamMetadataNV;

EGLEW_FUN_EXPORT PFNEGLRESETSTREAMNVPROC __eglewResetStreamNV;

EGLEW_FUN_EXPORT PFNEGLCREATESTREAMSYNCNVPROC __eglewCreateStreamSyncNV;

EGLEW_FUN_EXPORT PFNEGLCLIENTWAITSYNCNVPROC __eglewClientWaitSyncNV;
EGLEW_FUN_EXPORT PFNEGLCREATEFENCESYNCNVPROC __eglewCreateFenceSyncNV;
EGLEW_FUN_EXPORT PFNEGLDESTROYSYNCNVPROC __eglewDestroySyncNV;
EGLEW_FUN_EXPORT PFNEGLFENCENVPROC __eglewFenceNV;
EGLEW_FUN_EXPORT PFNEGLGETSYNCATTRIBNVPROC __eglewGetSyncAttribNV;
EGLEW_FUN_EXPORT PFNEGLSIGNALSYNCNVPROC __eglewSignalSyncNV;

EGLEW_FUN_EXPORT PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC __eglewGetSystemTimeFrequencyNV;
EGLEW_FUN_EXPORT PFNEGLGETSYSTEMTIMENVPROC __eglewGetSystemTimeNV;
EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_0;
EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_1;
EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_2;
EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_3;
EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_4;
EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_5;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_blob_cache;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_create_native_client_buffer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_framebuffer_target;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_front_buffer_auto_refresh;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_image_native_buffer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_native_fence_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_presentation_time;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_recordable;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_d3d_share_handle_client_buffer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_device_d3d;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_query_surface_pointer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_surface_d3d_texture_2d_share_handle;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_window_fixed_size;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ARM_implicit_external_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_ARM_pixmap_multisample_discard;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_buffer_age;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_client_extensions;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_create_context_robustness;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_base;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_drm;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_enumeration;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_openwf;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_query;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_bt2020_linear;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_bt2020_pq;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_scrgb_linear;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_image_dma_buf_import;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_image_dma_buf_import_modifiers;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_multiview_window;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_output_base;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_output_drm;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_output_openwf;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_pixel_format_float;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_base;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_device;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_wayland;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_x11;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_protected_content;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_protected_surface;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_stream_consumer_egloutput;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_surface_SMPTE2086_metadata;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_swap_buffers_with_damage;
EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_yuv_surface;
EGLEW_VAR_EXPORT GLboolean __EGLEW_HI_clientpixmap;
EGLEW_VAR_EXPORT GLboolean __EGLEW_HI_colorformats;
EGLEW_VAR_EXPORT GLboolean __EGLEW_IMG_context_priority;
EGLEW_VAR_EXPORT GLboolean __EGLEW_IMG_image_plane_attribs;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_cl_event;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_cl_event2;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_client_get_all_proc_addresses;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_config_attribs;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_context_flush_control;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_create_context;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_create_context_no_error;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_debug;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_fence_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_get_all_proc_addresses;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_colorspace;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_renderbuffer_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_texture_2D_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_texture_3D_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_texture_cubemap_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_image_base;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_image_pixmap;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_lock_surface;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_lock_surface2;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_lock_surface3;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_mutable_render_buffer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_no_config_context;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_partial_update;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_android;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_gbm;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_wayland;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_x11;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_reusable_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_attrib;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_consumer_gltexture;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_cross_process_fd;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_fifo;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_producer_aldatalocator;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_producer_eglsurface;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_surfaceless_context;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_swap_buffers_with_damage;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_vg_parent_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_wait_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_drm_image;
EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_image_dma_buf_export;
EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_platform_gbm;
EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_platform_surfaceless;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NOK_swap_region;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NOK_swap_region2;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NOK_texture_from_pixmap;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_3dvision_surface;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_coverage_sample;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_coverage_sample_resolve;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_cuda_event;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_depth_nonlinear;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_device_cuda;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_native_query;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_post_convert_rounding;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_post_sub_buffer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_robustness_video_memory_purge;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_consumer_gltexture_yuv;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_display;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_object;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_partition;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_process;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_system;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_fifo_next;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_fifo_synchronous;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_frame_limits;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_metadata;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_remote;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_reset;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_socket;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_socket_inet;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_socket_unix;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_sync;
EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_system_time;
EGLEW_VAR_EXPORT GLboolean __EGLEW_TIZEN_image_native_buffer;
EGLEW_VAR_EXPORT GLboolean __EGLEW_TIZEN_image_native_surface;
/* ------------------------------------------------------------------------ */

GLEWAPI GLenum GLEWAPIENTRY eglewInit (EGLDisplay display);
GLEWAPI GLboolean GLEWAPIENTRY eglewIsSupported (const char *name);

#define EGLEW_GET_VAR(x) (*(const GLboolean*)&x)
#define EGLEW_GET_FUN(x) x

GLEWAPI GLboolean GLEWAPIENTRY eglewGetExtension (const char *name);

#ifdef __cplusplus
}
#endif

#endif /* __eglew_h__ */


================================================
FILE: lib/glew/glew.c
================================================
/*
** The OpenGL Extension Wrangler Library
** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>
** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
** Copyright (C) 2002, Lev Povalahev
** All rights reserved.
** 
** Redistribution and use in source and binary forms, with or without 
** modification, are permitted provided that the following conditions are met:
** 
** * Redistributions of source code must retain the above copyright notice, 
**   this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright notice, 
**   this list of conditions and the following disclaimer in the documentation 
**   and/or other materials provided with the distribution.
** * The name of the author may be used to endorse or promote products 
**   derived from this software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
** THE POSSIBILITY OF SUCH DAMAGE.
*/

#ifndef GLEW_INCLUDE
#include "glew.h"
#else
#include GLEW_INCLUDE
#endif

#if defined(GLEW_OSMESA)
#  define GLAPI extern
#  include <GL/osmesa.h>
#elif defined(GLEW_EGL)
#  include "eglew.h"
#elif defined(_WIN32)
/*
 * If NOGDI is defined, wingdi.h won't be included by windows.h, and thus
 * wglGetProcAddress won't be declared. It will instead be implicitly declared,
 * potentially incorrectly, which we don't want.
 */
#  if defined(NOGDI)
#    undef NOGDI
#  endif
#  include "wglew.h"
#elif !defined(__ANDROID__) && !defined(__native_client__) && !defined(__HAIKU__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
#  include "glxew.h"
#endif

#include <stddef.h>  /* For size_t */

#if defined(GLEW_EGL)
#elif defined(GLEW_REGAL)

/* In GLEW_REGAL mode we call direcly into the linked
   libRegal.so glGetProcAddressREGAL for looking up
   the GL function pointers. */

#  undef glGetProcAddressREGAL
#  ifdef WIN32
extern void *  __stdcall glGetProcAddressREGAL(const GLchar *name);
static void * (__stdcall * regalGetProcAddress) (const GLchar *) = glGetProcAddressREGAL;
#    else
extern void * glGetProcAddressREGAL(const GLchar *name);
static void * (*regalGetProcAddress) (const GLchar *) = glGetProcAddressREGAL;
#  endif
#  define glGetProcAddressREGAL GLEW_GET_FUN(__glewGetProcAddressREGAL)

#elif defined(__sgi) || defined (__sun) || defined(__HAIKU__) || defined(GLEW_APPLE_GLX)
#include <dlfcn.h>
#include <stdio.h>
#include <stdlib.h>

void* dlGetProcAddress (const GLubyte* name)
{
  static void* h = NULL;
  static void* gpa;

  if (h == NULL)
  {
    if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL;
    gpa = dlsym(h, "glXGetProcAddress");
  }

  if (gpa != NULL)
    return ((void*(*)(const GLubyte*))gpa)(name);
  else
    return dlsym(h, (const char*)name);
}
#endif /* __sgi || __sun || GLEW_APPLE_GLX */

#if defined(__APPLE__)
#include <stdlib.h>
#include <string.h>
#include <AvailabilityMacros.h>

#ifdef MAC_OS_X_VERSION_10_3

#include <dlfcn.h>

void* NSGLGetProcAddress (const GLubyte *name)
{
  static void* image = NULL;
  void* addr;
  if (NULL == image)
  {
    image = dlopen("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", RTLD_LAZY);
  }
  if( !image ) return NULL;
  addr = dlsym(image, (const char*)name);
  if( addr ) return addr;
#ifdef GLEW_APPLE_GLX
  return dlGetProcAddress( name ); // try next for glx symbols
#else
  return NULL;
#endif
}
#else

#include <mach-o/dyld.h>

void* NSGLGetProcAddress (const GLubyte *name)
{
  static const struct mach_header* image = NULL;
  NSSymbol symbol;
  char* symbolName;
  if (NULL == image)
  {
    image = NSAddImage("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", NSADDIMAGE_OPTION_RETURN_ON_ERROR);
  }
  /* prepend a '_' for the Unix C symbol mangling convention */
  symbolName = malloc(strlen((const char*)name) + 2);
  strcpy(symbolName+1, (const char*)name);
  symbolName[0] = '_';
  symbol = NULL;
  /* if (NSIsSymbolNameDefined(symbolName))
	 symbol = NSLookupAndBindSymbol(symbolName); */
  symbol = image ? NSLookupSymbolInImage(image, symbolName, NSLOOKUPSYMBOLINIMAGE_OPTION_BIND | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR) : NULL;
  free(symbolName);
  if( symbol ) return NSAddressOfSymbol(symbol);
#ifdef GLEW_APPLE_GLX
  return dlGetProcAddress( name ); // try next for glx symbols
#else
  return NULL;
#endif
}
#endif /* MAC_OS_X_VERSION_10_3 */
#endif /* __APPLE__ */

/*
 * Define glewGetProcAddress.
 */
#if defined(GLEW_REGAL)
#  define glewGetProcAddress(name) regalGetProcAddress((const GLchar *)name)
#elif defined(GLEW_OSMESA)
#  define glewGetProcAddress(name) OSMesaGetProcAddress((const char *)name)
#elif defined(GLEW_EGL)
#  define glewGetProcAddress(name) eglGetProcAddress((const char *)name)
#elif defined(_WIN32)
#  define glewGetProcAddress(name) wglGetProcAddress((LPCSTR)name)
#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
#  define glewGetProcAddress(name) NSGLGetProcAddress(name)
#elif defined(__sgi) || defined(__sun) || defined(__HAIKU__)
#  define glewGetProcAddress(name) dlGetProcAddress(name)
#elif defined(__ANDROID__)
#  define glewGetProcAddress(name) NULL /* TODO */
#elif defined(__native_client__)
#  define glewGetProcAddress(name) NULL /* TODO */
#else /* __linux */
#  define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
#endif

/*
 * Redefine GLEW_GET_VAR etc without const cast
 */

#undef GLEW_GET_VAR
# define GLEW_GET_VAR(x) (x)

#ifdef WGLEW_GET_VAR
# undef WGLEW_GET_VAR
# define WGLEW_GET_VAR(x) (x)
#endif /* WGLEW_GET_VAR */

#ifdef GLXEW_GET_VAR
# undef GLXEW_GET_VAR
# define GLXEW_GET_VAR(x) (x)
#endif /* GLXEW_GET_VAR */

#ifdef EGLEW_GET_VAR
# undef EGLEW_GET_VAR
# define EGLEW_GET_VAR(x) (x)
#endif /* EGLEW_GET_VAR */

/*
 * GLEW, just like OpenGL or GLU, does not rely on the standard C library.
 * These functions implement the functionality required in this file.
 */

static GLuint _glewStrLen (const GLubyte* s)
{
  GLuint i=0;
  if (s == NULL) return 0;
  while (s[i] != '\0') i++;
  return i;
}

static GLuint _glewStrCLen (const GLubyte* s, GLubyte c)
{
  GLuint i=0;
  if (s == NULL) return 0;
  while (s[i] != '\0' && s[i] != c) i++;
  return i;
}

static GLuint _glewStrCopy(char *d, const char *s, char c)
{
  GLuint i=0;
  if (s == NULL) return 0;
  while (s[i] != '\0' && s[i] != c) { d[i] = s[i]; i++; }
  d[i] = '\0';
  return i;
}

#if !defined(GLEW_OSMESA)
#if !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
static GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuint n)
{
  GLuint i=0;
  if(a == NULL || b == NULL)
    return (a == NULL && b == NULL && n == 0) ? GL_TRUE : GL_FALSE;
  while (i < n && a[i] != '\0' && b[i] != '\0' && a[i] == b[i]) i++;
  return i == n ? GL_TRUE : GL_FALSE;
}
#endif
#endif

static GLboolean _glewStrSame1 (const GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
{
  while (*na > 0 && (**a == ' ' || **a == '\n' || **a == '\r' || **a == '\t'))
  {
    (*a)++;
    (*na)--;
  }
  if(*na >= nb)
  {
    GLuint i=0;
    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
    if(i == nb)
    {
      *a = *a + nb;
      *na = *na - nb;
      return GL_TRUE;
    }
  }
  return GL_FALSE;
}

static GLboolean _glewStrSame2 (const GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
{
  if(*na >= nb)
  {
    GLuint i=0;
    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
    if(i == nb)
    {
      *a = *a + nb;
      *na = *na - nb;
      return GL_TRUE;
    }
  }
  return GL_FALSE;
}

static GLboolean _glewStrSame3 (const GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
{
  if(*na >= nb)
  {
    GLuint i=0;
    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
    if (i == nb && (*na == nb || (*a)[i] == ' ' || (*a)[i] == '\n' || (*a)[i] == '\r' || (*a)[i] == '\t'))
    {
      *a = *a + nb;
      *na = *na - nb;
      return GL_TRUE;
    }
  }
  return GL_FALSE;
}

/*
 * Search for name in the extensions string. Use of strstr()
 * is not sufficient because extension names can be prefixes of
 * other extension names. Could use strtok() but the constant
 * string returned by glGetString might be in read-only memory.
 */
#if !defined(GLEW_OSMESA)
#if !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
static GLboolean _glewSearchExtension (const char* name, const GLubyte *start, const GLubyte *end)
{
  const GLubyte* p;
  GLuint len = _glewStrLen((const GLubyte*)name);
  p = start;
  while (p < end)
  {
    GLuint n = _glewStrCLen(p, ' ');
    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
    p += n+1;
  }
  return GL_FALSE;
}
#endif
#endif

PFNGLCOPYTEXSUBIMAGE3DPROC __glewCopyTexSubImage3D = NULL;
PFNGLDRAWRANGEELEMENTSPROC __glewDrawRangeElements = NULL;
PFNGLTEXIMAGE3DPROC __glewTexImage3D = NULL;
PFNGLTEXSUBIMAGE3DPROC __glewTexSubImage3D = NULL;

PFNGLACTIVETEXTUREPROC __glewActiveTexture = NULL;
PFNGLCLIENTACTIVETEXTUREPROC __glewClientActiveTexture = NULL;
PFNGLCOMPRESSEDTEXIMAGE1DPROC __glewCompressedTexImage1D = NULL;
PFNGLCOMPRESSEDTEXIMAGE2DPROC __glewCompressedTexImage2D = NULL;
PFNGLCOMPRESSEDTEXIMAGE3DPROC __glewCompressedTexImage3D = NULL;
PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC __glewCompressedTexSubImage1D = NULL;
PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC __glewCompressedTexSubImage2D = NULL;
PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC __glewCompressedTexSubImage3D = NULL;
PFNGLGETCOMPRESSEDTEXIMAGEPROC __glewGetCompressedTexImage = NULL;
PFNGLLOADTRANSPOSEMATRIXDPROC __glewLoadTransposeMatrixd = NULL;
PFNGLLOADTRANSPOSEMATRIXFPROC __glewLoadTransposeMatrixf = NULL;
PFNGLMULTTRANSPOSEMATRIXDPROC __glewMultTransposeMatrixd = NULL;
PFNGLMULTTRANSPOSEMATRIXFPROC __glewMultTransposeMatrixf = NULL;
PFNGLMULTITEXCOORD1DPROC __glewMultiTexCoord1d = NULL;
PFNGLMULTITEXCOORD1DVPROC __glewMultiTexCoord1dv = NULL;
PFNGLMULTITEXCOORD1FPROC __glewMultiTexCoord1f = NULL;
PFNGLMULTITEXCOORD1FVPROC __glewMultiTexCoord1fv = NULL;
PFNGLMULTITEXCOORD1IPROC __glewMultiTexCoord1i = NULL;
PFNGLMULTITEXCOORD1IVPROC __glewMultiTexCoord1iv = NULL;
PFNGLMULTITEXCOORD1SPROC __glewMultiTexCoord1s = NULL;
PFNGLMULTITEXCOORD1SVPROC __glewMultiTexCoord1sv = NULL;
PFNGLMULTITEXCOORD2DPROC __glewMultiTexCoord2d = NULL;
PFNGLMULTITEXCOORD2DVPROC __glewMultiTexCoord2dv = NULL;
PFNGLMULTITEXCOORD2FPROC __glewMultiTexCoord2f = NULL;
PFNGLMULTITEXCOORD2FVPROC __glewMultiTexCoord2fv = NULL;
PFNGLMULTITEXCOORD2IPROC __glewMultiTexCoord2i = NULL;
PFNGLMULTITEXCOORD2IVPROC __glewMultiTexCoord2iv = NULL;
PFNGLMULTITEXCOORD2SPROC __glewMultiTexCoord2s = NULL;
PFNGLMULTITEXCOORD2SVPROC __glewMultiTexCoord2sv = NULL;
PFNGLMULTITEXCOORD3DPROC __glewMultiTexCoord3d = NULL;
PFNGLMULTITEXCOORD3DVPROC __glewMultiTexCoord3dv = NULL;
PFNGLMULTITEXCOORD3FPROC __glewMultiTexCoord3f = NULL;
PFNGLMULTITEXCOORD3FVPROC __glewMultiTexCoord3fv = NULL;
PFNGLMULTITEXCOORD3IPROC __glewMultiTexCoord3i = NULL;
PFNGLMULTITEXCOORD3IVPROC __glewMultiTexCoord3iv = NULL;
PFNGLMULTITEXCOORD3SPROC __glewMultiTexCoord3s = NULL;
PFNGLMULTITEXCOORD3SVPROC __glewMultiTexCoord3sv = NULL;
PFNGLMULTITEXCOORD4DPROC __glewMultiTexCoord4d = NULL;
PFNGLMULTITEXCOORD4DVPROC __glewMultiTexCoord4dv = NULL;
PFNGLMULTITEXCOORD4FPROC __glewMultiTexCoord4f = NULL;
PFNGLMULTITEXCOORD4FVPROC __glewMultiTexCoord4fv = NULL;
PFNGLMULTITEXCOORD4IPROC __glewMultiTexCoord4i = NULL;
PFNGLMULTITEXCOORD4IVPROC __glewMultiTexCoord4iv = NULL;
PFNGLMULTITEXCOORD4SPROC __glewMultiTexCoord4s = NULL;
PFNGLMULTITEXCOORD4SVPROC __glewMultiTexCoord4sv = NULL;
PFNGLSAMPLECOVERAGEPROC __glewSampleCoverage = NULL;

PFNGLBLENDCOLORPROC __glewBlendColor = NULL;
PFNGLBLENDEQUATIONPROC __glewBlendEquation = NULL;
PFNGLBLENDFUNCSEPARATEPROC __glewBlendFuncSeparate = NULL;
PFNGLFOGCOORDPOINTERPROC __glewFogCoordPointer = NULL;
PFNGLFOGCOORDDPROC __glewFogCoordd = NULL;
PFNGLFOGCOORDDVPROC __glewFogCoorddv = NULL;
PFNGLFOGCOORDFPROC __glewFogCoordf = NULL;
PFNGLFOGCOORDFVPROC __glewFogCoordfv = NULL;
PFNGLMULTIDRAWARRAYSPROC __glewMultiDrawArrays = NULL;
PFNGLMULTIDRAWELEMENTSPROC __glewMultiDrawElements = NULL;
PFNGLPOINTPARAMETERFPROC __glewPointParameterf = NULL;
PFNGLPOINTPARAMETERFVPROC __glewPointParameterfv = NULL;
PFNGLPOINTPARAMETERIPROC __glewPointParameteri = NULL;
PFNGLPOINTPARAMETERIVPROC __glewPointParameteriv = NULL;
PFNGLSECONDARYCOLOR3BPROC __glewSecondaryColor3b = NULL;
PFNGLSECONDARYCOLOR3BVPROC __glewSecondaryColor3bv = NULL;
PFNGLSECONDARYCOLOR3DPROC __glewSecondaryColor3d = NULL;
PFNGLSECONDARYCOLOR3DVPROC __glewSecondaryColor3dv = NULL;
PFNGLSECONDARYCOLOR3FPROC __glewSecondaryColor3f = NULL;
PFNGLSECONDARYCOLOR3FVPROC __glewSecondaryColor3fv = NULL;
PFNGLSECONDARYCOLOR3IPROC __glewSecondaryColor3i = NULL;
PFNGLSECONDARYCOLOR3IVPROC __glewSecondaryColor3iv = NULL;
PFNGLSECONDARYCOLOR3SPROC __glewSecondaryColor3s = NULL;
PFNGLSECONDARYCOLOR3SVPROC __glewSecondaryColor3sv = NULL;
PFNGLSECONDARYCOLOR3UBPROC __glewSecondaryColor3ub = NULL;
PFNGLSECONDARYCOLOR3UBVPROC __glewSecondaryColor3ubv = NULL;
PFNGLSECONDARYCOLOR3UIPROC __glewSecondaryColor3ui = NULL;
PFNGLSECONDARYCOLOR3UIVPROC __glewSecondaryColor3uiv = NULL;
PFNGLSECONDARYCOLOR3USPROC __glewSecondaryColor3us = NULL;
PFNGLSECONDARYCOLOR3USVPROC __glewSecondaryColor3usv = NULL;
PFNGLSECONDARYCOLORPOINTERPROC __glewSecondaryColorPointer = NULL;
PFNGLWINDOWPOS2DPROC __glewWindowPos2d = NULL;
PFNGLWINDOWPOS2DVPROC __glewWindowPos2dv = NULL;
PFNGLWINDOWPOS2FPROC __glewWindowPos2f = NULL;
PFNGLWINDOWPOS2FVPROC __glewWindowPos2fv = NULL;
PFNGLWINDOWPOS2IPROC __glewWindowPos2i = NULL;
PFNGLWINDOWPOS2IVPROC __glewWindowPos2iv = NULL;
PFNGLWINDOWPOS2SPROC __glewWindowPos2s = NULL;
PFNGLWINDOWPOS2SVPROC __glewWindowPos2sv = NULL;
PFNGLWINDOWPOS3DPROC __glewWindowPos3d = NULL;
PFNGLWINDOWPOS3DVPROC __glewWindowPos3dv = NULL;
PFNGLWINDOWPOS3FPROC __glewWindowPos3f = NULL;
PFNGLWINDOWPOS3FVPROC __glewWindowPos3fv = NULL;
PFNGLWINDOWPOS3IPROC __glewWindowPos3i = NULL;
PFNGLWINDOWPOS3IVPROC __glewWindowPos3iv = NULL;
PFNGLWINDOWPOS3SPROC __glewWindowPos3s = NULL;
PFNGLWINDOWPOS3SVPROC __glewWindowPos3sv = NULL;

PFNGLBEGINQUERYPROC __glewBeginQuery = NULL;
PFNGLBINDBUFFERPROC __glewBindBuffer = NULL;
PFNGLBUFFERDATAPROC __glewBufferData = NULL;
PFNGLBUFFERSUBDATAPROC __glewBufferSubData = NULL;
PFNGLDELETEBUFFERSPROC __glewDeleteBuffers = NULL;
PFNGLDELETEQUERIESPROC __glewDeleteQueries = NULL;
PFNGLENDQUERYPROC __glewEndQuery = NULL;
PFNGLGENBUFFERSPROC __glewGenBuffers = NULL;
PFNGLGENQUERIESPROC __glewGenQueries = NULL;
PFNGLGETBUFFERPARAMETERIVPROC __glewGetBufferParameteriv = NULL;
PFNGLGETBUFFERPOINTERVPROC __glewGetBufferPointerv = NULL;
PFNGLGETBUFFERSUBDATAPROC __glewGetBufferSubData = NULL;
PFNGLGETQUERYOBJECTIVPROC __glewGetQueryObjectiv = NULL;
PFNGLGETQUERYOBJECTUIVPROC __glewGetQueryObjectuiv = NULL;
PFNGLGETQUERYIVPROC __glewGetQueryiv = NULL;
PFNGLISBUFFERPROC __glewIsBuffer = NULL;
PFNGLISQUERYPROC __glewIsQuery = NULL;
PFNGLMAPBUFFERPROC __glewMapBuffer = NULL;
PFNGLUNMAPBUFFERPROC __glewUnmapBuffer = NULL;

PFNGLATTACHSHADERPROC __glewAttachShader = NULL;
PFNGLBINDATTRIBLOCATIONPROC __glewBindAttribLocation = NULL;
PFNGLBLENDEQUATIONSEPARATEPROC __glewBlendEquationSeparate = NULL;
PFNGLCOMPILESHADERPROC __glewCompileShader = NULL;
PFNGLCREATEPROGRAMPROC __glewCreateProgram = NULL;
PFNGLCREATESHADERPROC __glewCreateShader = NULL;
PFNGLDELETEPROGRAMPROC __glewDeleteProgram = NULL;
PFNGLDELETESHADERPROC __glewDeleteShader = NULL;
PFNGLDETACHSHADERPROC __glewDetachShader = NULL;
PFNGLDISABLEVERTEXATTRIBARRAYPROC __glewDisableVertexAttribArray = NULL;
PFNGLDRAWBUFFERSPROC __glewDrawBuffers = NULL;
PFNGLENABLEVERTEXATTRIBARRAYPROC __glewEnableVertexAttribArray = NULL;
PFNGLGETACTIVEATTRIBPROC __glewGetActiveAttrib = NULL;
PFNGLGETACTIVEUNIFORMPROC __glewGetActiveUniform = NULL;
PFNGLGETATTACHEDSHADERSPROC __glewGetAttachedShaders = NULL;
PFNGLGETATTRIBLOCATIONPROC __glewGetAttribLocation = NULL;
PFNGLGETPROGRAMINFOLOGPROC __glewGetProgramInfoLog = NULL;
PFNGLGETPROGRAMIVPROC __glewGetProgramiv = NULL;
PFNGLGETSHADERINFOLOGPROC __glewGetShaderInfoLog = NULL;
PFNGLGETSHADERSOURCEPROC __glewGetShaderSource = NULL;
PFNGLGETSHADERIVPROC __glewGetShaderiv = NULL;
PFNGLGETUNIFORMLOCATIONPROC __glewGetUniformLocation = NULL;
PFNGLGETUNIFORMFVPROC __glewGetUniformfv = NULL;
PFNGLGETUNIFORMIVPROC __glewGetUniformiv = NULL;
PFNGLGETVERTEXATTRIBPOINTERVPROC __glewGetVertexAttribPointerv = NULL;
PFNGLGETVERTEXATTRIBDVPROC __glewGetVertexAttribdv = NULL;
PFNGLGETVERTEXATTRIBFVPROC __glewGetVertexAttribfv = NULL;
PFNGLGETVERTEXATTRIBIVPROC __glewGetVertexAttribiv = NULL;
PFNGLISPROGRAMPROC __glewIsProgram = NULL;
PFNGLISSHADERPROC __glewIsShader = NULL;
PFNGLLINKPROGRAMPROC __glewLinkProgram = NULL;
PFNGLSHADERSOURCEPROC __glewShaderSource = NULL;
PFNGLSTENCILFUNCSEPARATEPROC __glewStencilFuncSeparate = NULL;
PFNGLSTENCILMASKSEPARATEPROC __glewStencilMaskSeparate = NULL;
PFNGLSTENCILOPSEPARATEPROC __glewStencilOpSeparate = NULL;
PFNGLUNIFORM1FPROC __glewUniform1f = NULL;
PFNGLUNIFORM1FVPROC __glewUniform1fv = NULL;
PFNGLUNIFORM1IPROC __glewUniform1i = NULL;
PFNGLUNIFORM1IVPROC __glewUniform1iv = NULL;
PFNGLUNIFORM2FPROC __glewUniform2f = NULL;
PFNGLUNIFORM2FVPROC __glewUniform2fv = NULL;
PFNGLUNIFORM2IPROC __glewUniform2i = NULL;
PFNGLUNIFORM2IVPROC __glewUniform2iv = NULL;
PFNGLUNIFORM3FPROC __glewUniform3f = NULL;
PFNGLUNIFORM3FVPROC __glewUniform3fv = NULL;
PFNGLUNIFORM3IPROC __glewUniform3i = NULL;
PFNGLUNIFORM3IVPROC __glewUniform3iv = NULL;
PFNGLUNIFORM4FPROC __glewUniform4f = NULL;
PFNGLUNIFORM4FVPROC __glewUniform4fv = NULL;
PFNGLUNIFORM4IPROC __glewUniform4i = NULL;
PFNGLUNIFORM4IVPROC __glewUniform4iv = NULL;
PFNGLUNIFORMMATRIX2FVPROC __glewUniformMatrix2fv = NULL;
PFNGLUNIFORMMATRIX3FVPROC __glewUniformMatrix3fv = NULL;
PFNGLUNIFORMMATRIX4FVPROC __glewUniformMatrix4fv = NULL;
PFNGLUSEPROGRAMPROC __glewUseProgram = NULL;
PFNGLVALIDATEPROGRAMPROC __glewValidateProgram = NULL;
PFNGLVERTEXATTRIB1DPROC __glewVertexAttrib1d = NULL;
PFNGLVERTEXATTRIB1DVPROC __glewVertexAttrib1dv = NULL;
PFNGLVERTEXATTRIB1FPROC __glewVertexAttrib1f = NULL;
PFNGLVERTEXATTRIB1FVPROC __glewVertexAttrib1fv = NULL;
PFNGLVERTEXATTRIB1SPROC __glewVertexAttrib1s = NULL;
PFNGLVERTEXATTRIB1SVPROC __glewVertexAttrib1sv = NULL;
PFNGLVERTEXATTRIB2DPROC __glewVertexAttrib2d = NULL;
PFNGLVERTEXATTRIB2DVPROC __glewVertexAttrib2dv = NULL;
PFNGLVERTEXATTRIB2FPROC __glewVertexAttrib2f = NULL;
PFNGLVERTEXATTRIB2FVPROC __glewVertexAttrib2fv = NULL;
PFNGLVERTEXATTRIB2SPROC __glewVertexAttrib2s = NULL;
PFNGLVERTEXATTRIB2SVPROC __glewVertexAttrib2sv = NULL;
PFNGLVERTEXATTRIB3DPROC __glewVertexAttrib3d = NULL;
PFNGLVERTEXATTRIB3DVPROC __glewVertexAttrib3dv = NULL;
PFNGLVERTEXATTRIB3FPROC __glewVertexAttrib3f = NULL;
PFNGLVERTEXATTRIB3FVPROC __glewVertexAttrib3fv = NULL;
PFNGLVERTEXATTRIB3SPROC __glewVertexAttrib3s = NULL;
PFNGLVERTEXATTRIB3SVPROC __glewVertexAttrib3sv = NULL;
PFNGLVERTEXATTRIB4NBVPROC __glewVertexAttrib4Nbv = NULL;
PFNGLVERTEXATTRIB4NIVPROC __glewVertexAttrib4Niv = NULL;
PFNGLVERTEXATTRIB4NSVPROC __glewVertexAttrib4Nsv = NULL;
PFNGLVERTEXATTRIB4NUBPROC __glewVertexAttrib4Nub = NULL;
PFNGLVERTEXATTRIB4NUBVPROC __glewVertexAttrib4Nubv = NULL;
PFNGLVERTEXATTRIB4NUIVPROC __glewVertexAttrib4Nuiv = NULL;
PFNGLVERTEXATTRIB4NUSVPROC __glewVertexAttrib4Nusv = NULL;
PFNGLVERTEXATTRIB4BVPROC __glewVertexAttrib4bv = NULL;
PFNGLVERTEXATTRIB4DPROC __glewVertexAttrib4d = NULL;
PFNGLVERTEXATTRIB4DVPROC __glewVertexAttrib4dv = NULL;
PFNGLVERTEXATTRIB4FPROC __glewVertexAttrib4f = NULL;
PFNGLVERTEXATTRIB4FVPROC __glewVertexAttrib4fv = NULL;
PFNGLVERTEXATTRIB4IVPROC __glewVertexAttrib4iv = NULL;
PFNGLVERTEXATTRIB4SPROC __glewVertexAttrib4s = NULL;
PFNGLVERTEXATTRIB4SVPROC __glewVertexAttrib4sv = NULL;
PFNGLVERTEXATTRIB4UBVPROC __glewVertexAttrib4ubv = NULL;
PFNGLVERTEXATTRIB4UIVPROC __glewVertexAttrib4uiv = NULL;
PFNGLVERTEXATTRIB4USVPROC __glewVertexAttrib4usv = NULL;
PFNGLVERTEXATTRIBPOINTERPROC __glewVertexAttribPointer = NULL;

PFNGLUNIFORMMATRIX2X3FVPROC __glewUniformMatrix2x3fv = NULL;
PFNGLUNIFORMMATRIX2X4FVPROC __glewUniformMatrix2x4fv = NULL;
PFNGLUNIFORMMATRIX3X2FVPROC __glewUniformMatrix3x2fv = NULL;
PFNGLUNIFORMMATRIX3X4FVPROC __glewUniformMatrix3x4fv = NULL;
PFNGLUNIFORMMATRIX4X2FVPROC __glewUniformMatrix4x2fv = NULL;
PFNGLUNIFORMMATRIX4X3FVPROC __glewUniformMatrix4x3fv = NULL;

PFNGLBEGINCONDITIONALRENDERPROC __glewBeginConditionalRender = NULL;
PFNGLBEGINTRANSFORMFEEDBACKPROC __glewBeginTransformFeedback = NULL;
PFNGLBINDFRAGDATALOCATIONPROC __glewBindFragDataLocation = NULL;
PFNGLCLAMPCOLORPROC __glewClampColor = NULL;
PFNGLCLEARBUFFERFIPROC __glewClearBufferfi = NULL;
PFNGLCLEARBUFFERFVPROC __glewClearBufferfv = NULL;
PFNGLCLEARBUFFERIVPROC __glewClearBufferiv = NULL;
PFNGLCLEARBUFFERUIVPROC __glewClearBufferuiv = NULL;
PFNGLCOLORMASKIPROC __glewColorMaski = NULL;
PFNGLDISABLEIPROC __glewDisablei = NULL;
PFNGLENABLEIPROC __glewEnablei = NULL;
PFNGLENDCONDITIONALRENDERPROC __glewEndConditionalRender = NULL;
PFNGLENDTRANSFORMFEEDBACKPROC __glewEndTransformFeedback = NULL;
PFNGLGETBOOLEANI_VPROC __glewGetBooleani_v = NULL;
PFNGLGETFRAGDATALOCATIONPROC __glewGetFragDataLocation = NULL;
PFNGLGETSTRINGIPROC __glewGetStringi = NULL;
PFNGLGETTEXPARAMETERIIVPROC __glewGetTexParameterIiv = NULL;
PFNGLGETTEXPARAMETERIUIVPROC __glewGetTexParameterIuiv = NULL;
PFNGLGETTRANSFORMFEEDBACKVARYINGPROC __glewGetTransformFeedbackVarying = NULL;
PFNGLGETUNIFORMUIVPROC __glewGetUniformuiv = NULL;
PFNGLGETVERTEXATTRIBIIVPROC __glewGetVertexAttribIiv = NULL;
PFNGLGETVERTEXATTRIBIUIVPROC __glewGetVertexAttribIuiv = NULL;
PFNGLISENABLEDIPROC __glewIsEnabledi = NULL;
PFNGLTEXPARAMETERIIVPROC __glewTexParameterIiv = NULL;
PFNGLTEXPARAMETERIUIVPROC __glewTexParameterIuiv = NULL;
PFNGLTRANSFORMFEEDBACKVARYINGSPROC __glewTransformFeedbackVaryings = NULL;
PFNGLUNIFORM1UIPROC __glewUniform1ui = NULL;
PFNGLUNIFORM1UIVPROC __glewUniform1uiv = NULL;
PFNGLUNIFORM2UIPROC __glewUniform2ui = NULL;
PFNGLUNIFORM2UIVPROC __glewUniform2uiv = NULL;
PFNGLUNIFORM3UIPROC __glewUniform3ui = NULL;
PFNGLUNIFORM3UIVPROC __glewUniform3uiv = NULL;
PFNGLUNIFORM4UIPROC __glewUniform4ui = NULL;
PFNGLUNIFORM4UIVPROC __glewUniform4uiv = NULL;
PFNGLVERTEXATTRIBI1IPROC __glewVertexAttribI1i = NULL;
PFNGLVERTEXATTRIBI1IVPROC __glewVertexAttribI1iv = NULL;
PFNGLVERTEXATTRIBI1UIPROC __glewVertexAttribI1ui = NULL;
PFNGLVERTEXATTRIBI1UIVPROC __glewVertexAttribI1uiv = NULL;
PFNGLVERTEXATTRIBI2IPROC __glewVertexAttribI2i = NULL;
PFNGLVERTEXATTRIBI2IVPROC __glewVertexAttribI2iv = NULL;
PFNGLVERTEXATTRIBI2UIPROC __glewVertexAttribI2ui = NULL;
PFNGLVERTEXATTRIBI2UIVPROC __glewVertexAttribI2uiv = NULL;
PFNGLVERTEXATTRIBI3IPROC __glewVertexAttribI3i = NULL;
PFNGLVERTEXATTRIBI3IVPROC __glewVertexAttribI3iv = NULL;
PFNGLVERTEXATTRIBI3UIPROC __glewVertexAttribI3ui = NULL;
PFNGLVERTEXATTRIBI3UIVPROC __glewVertexAttribI3uiv = NULL;
PFNGLVERTEXATTRIBI4BVPROC __glewVertexAttribI4bv = NULL;
PFNGLVERTEXATTRIBI4IPROC __glewVertexAttribI4i = NULL;
PFNGLVERTEXATTRIBI4IVPROC __glewVertexAttribI4iv = NULL;
PFNGLVERTEXATTRIBI4SVPROC __glewVertexAttribI4sv = NULL;
PFNGLVERTEXATTRIBI4UBVPROC __glewVertexAttribI4ubv = NULL;
PFNGLVERTEXATTRIBI4UIPROC __glewVertexAttribI4ui = NULL;
PFNGLVERTEXATTRIBI4UIVPROC __glewVertexAttribI4uiv = NULL;
PFNGLVERTEXATTRIBI4USVPROC __glewVertexAttribI4usv = NULL;
PFNGLVERTEXATTRIBIPOINTERPROC __glewVertexAttribIPointer = NULL;

PFNGLDRAWARRAYSINSTANCEDPROC __glewDrawArraysInstanced = NULL;
PFNGLDRAWELEMENTSINSTANCEDPROC __glewDrawElementsInstanced = NULL;
PFNGLPRIMITIVERESTARTINDEXPROC __glewPrimitiveRestartIndex = NULL;
PFNGLTEXBUFFERPROC __glewTexBuffer = NULL;

PFNGLFRAMEBUFFERTEXTUREPROC __glewFramebufferTexture = NULL;
PFNGLGETBUFFERPARAMETERI64VPROC __glewGetBufferParameteri64v = NULL;
PFNGLGETINTEGER64I_VPROC __glewGetInteger64i_v = NULL;

PFNGLVERTEXATTRIBDIVISORPROC __glewVertexAttribDivisor = NULL;

PFNGLBLENDEQUATIONSEPARATEIPROC __glewBlendEquationSeparatei = NULL;
PFNGLBLENDEQUATIONIPROC __glewBlendEquationi = NULL;
PFNGLBLENDFUNCSEPARATEIPROC __glewBlendFuncSeparatei = NULL;
PFNGLBLENDFUNCIPROC __glewBlendFunci = NULL;
PFNGLMINSAMPLESHADINGPROC __glewMinSampleShading = NULL;

PFNGLGETGRAPHICSRESETSTATUSPROC __glewGetGraphicsResetStatus = NULL;
PFNGLGETNCOMPRESSEDTEXIMAGEPROC __glewGetnCompressedTexImage = NULL;
PFNGLGETNTEXIMAGEPROC __glewGetnTexImage = NULL;
PFNGLGETNUNIFORMDVPROC __glewGetnUniformdv = NULL;

PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC __glewMultiDrawArraysIndirectCount = NULL;
PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC __glewMultiDrawElementsIndirectCount = NULL;
PFNGLSPECIALIZESHADERPROC __glewSpecializeShader = NULL;

PFNGLTBUFFERMASK3DFXPROC __glewTbufferMask3DFX = NULL;

PFNGLDEBUGMESSAGECALLBACKAMDPROC __glewDebugMessageCallbackAMD = NULL;
PFNGLDEBUGMESSAGEENABLEAMDPROC __glewDebugMessageEnableAMD = NULL;
PFNGLDEBUGMESSAGEINSERTAMDPROC __glewDebugMessageInsertAMD = NULL;
PFNGLGETDEBUGMESSAGELOGAMDPROC __glewGetDebugMessageLogAMD = NULL;

PFNGLBLENDEQUATIONINDEXEDAMDPROC __glewBlendEquationIndexedAMD = NULL;
PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC __glewBlendEquationSeparateIndexedAMD = NULL;
PFNGLBLENDFUNCINDEXEDAMDPROC __glewBlendFuncIndexedAMD = NULL;
PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC __glewBlendFuncSeparateIndexedAMD = NULL;

PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC __glewFramebufferSamplePositionsfvAMD = NULL;
PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC __glewGetFramebufferParameterfvAMD = NULL;
PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC __glewGetNamedFramebufferParameterfvAMD = NULL;
PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC __glewNamedFramebufferSamplePositionsfvAMD = NULL;

PFNGLVERTEXATTRIBPARAMETERIAMDPROC __glewVertexAttribParameteriAMD = NULL;

PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC __glewMultiDrawArraysIndirectAMD = NULL;
PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC __glewMultiDrawElementsIndirectAMD = NULL;

PFNGLDELETENAMESAMDPROC __glewDeleteNamesAMD = NULL;
PFNGLGENNAMESAMDPROC __glewGenNamesAMD = NULL;
PFNGLISNAMEAMDPROC __glewIsNameAMD = NULL;

PFNGLQUERYOBJECTPARAMETERUIAMDPROC __glewQueryObjectParameteruiAMD = NULL;

PFNGLBEGINPERFMONITORAMDPROC __glewBeginPerfMonitorAMD = NULL;
PFNGLDELETEPERFMONITORSAMDPROC __glewDeletePerfMonitorsAMD = NULL;
PFNGLENDPERFMONITORAMDPROC __glewEndPerfMonitorAMD = NULL;
PFNGLGENPERFMONITORSAMDPROC __glewGenPerfMonitorsAMD = NULL;
PFNGLGETPERFMONITORCOUNTERDATAAMDPROC __glewGetPerfMonitorCounterDataAMD = NULL;
PFNGLGETPERFMONITORCOUNTERINFOAMDPROC __glewGetPerfMonitorCounterInfoAMD = NULL;
PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC __glewGetPerfMonitorCounterStringAMD = NULL;
PFNGLGETPERFMONITORCOUNTERSAMDPROC __glewGetPerfMonitorCountersAMD = NULL;
PFNGLGETPERFMONITORGROUPSTRINGAMDPROC __glewGetPerfMonitorGroupStringAMD = NULL;
PFNGLGETPERFMONITORGROUPSAMDPROC __glewGetPerfMonitorGroupsAMD = NULL;
PFNGLSELECTPERFMONITORCOUNTERSAMDPROC __glewSelectPerfMonitorCountersAMD = NULL;

PFNGLSETMULTISAMPLEFVAMDPROC __glewSetMultisamplefvAMD = NULL;

PFNGLTEXSTORAGESPARSEAMDPROC __glewTexStorageSparseAMD = NULL;
PFNGLTEXTURESTORAGESPARSEAMDPROC __glewTextureStorageSparseAMD = NULL;

PFNGLSTENCILOPVALUEAMDPROC __glewStencilOpValueAMD = NULL;

PFNGLTESSELLATIONFACTORAMDPROC __glewTessellationFactorAMD = NULL;
PFNGLTESSELLATIONMODEAMDPROC __glewTessellationModeAMD = NULL;

PFNGLBLITFRAMEBUFFERANGLEPROC __glewBlitFramebufferANGLE = NULL;

PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC __glewRenderbufferStorageMultisampleANGLE = NULL;

PFNGLDRAWARRAYSINSTANCEDANGLEPROC __glewDrawArraysInstancedANGLE = NULL;
PFNGLDRAWELEMENTSINSTANCEDANGLEPROC __glewDrawElementsInstancedANGLE = NULL;
PFNGLVERTEXATTRIBDIVISORANGLEPROC __glewVertexAttribDivisorANGLE = NULL;

PFNGLBEGINQUERYANGLEPROC __glewBeginQueryANGLE = NULL;
PFNGLDELETEQUERIESANGLEPROC __glewDeleteQueriesANGLE = NULL;
PFNGLENDQUERYANGLEPROC __glewEndQueryANGLE = NULL;
PFNGLGENQUERIESANGLEPROC __glewGenQueriesANGLE = NULL;
PFNGLGETQUERYOBJECTI64VANGLEPROC __glewGetQueryObjecti64vANGLE = NULL;
PFNGLGETQUERYOBJECTIVANGLEPROC __glewGetQueryObjectivANGLE = NULL;
PFNGLGETQUERYOBJECTUI64VANGLEPROC __glewGetQueryObjectui64vANGLE = NULL;
PFNGLGETQUERYOBJECTUIVANGLEPROC __glewGetQueryObjectuivANGLE = NULL;
PFNGLGETQUERYIVANGLEPROC __glewGetQueryivANGLE = NULL;
PFNGLISQUERYANGLEPROC __glewIsQueryANGLE = NULL;
PFNGLQUERYCOUNTERANGLEPROC __glewQueryCounterANGLE = NULL;

PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC __glewGetTranslatedShaderSourceANGLE = NULL;

PFNGLCOPYTEXTURELEVELSAPPLEPROC __glewCopyTextureLevelsAPPLE = NULL;

PFNGLDRAWELEMENTARRAYAPPLEPROC __glewDrawElementArrayAPPLE = NULL;
PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC __glewDrawRangeElementArrayAPPLE = NULL;
PFNGLELEMENTPOINTERAPPLEPROC __glewElementPointerAPPLE = NULL;
PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC __glewMultiDrawElementArrayAPPLE = NULL;
PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC __glewMultiDrawRangeElementArrayAPPLE = NULL;

PFNGLDELETEFENCESAPPLEPROC __glewDeleteFencesAPPLE = NULL;
PFNGLFINISHFENCEAPPLEPROC __glewFinishFenceAPPLE = NULL;
PFNGLFINISHOBJECTAPPLEPROC __glewFinishObjectAPPLE = NULL;
PFNGLGENFENCESAPPLEPROC __glewGenFencesAPPLE = NULL;
PFNGLISFENCEAPPLEPROC __glewIsFenceAPPLE = NULL;
PFNGLSETFENCEAPPLEPROC __glewSetFenceAPPLE = NULL;
PFNGLTESTFENCEAPPLEPROC __glewTestFenceAPPLE = NULL;
PFNGLTESTOBJECTAPPLEPROC __glewTestObjectAPPLE = NULL;

PFNGLBUFFERPARAMETERIAPPLEPROC __glewBufferParameteriAPPLE = NULL;
PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC __glewFlushMappedBufferRangeAPPLE = NULL;

PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC __glewRenderbufferStorageMultisampleAPPLE = NULL;
PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC __glewResolveMultisampleFramebufferAPPLE = NULL;

PFNGLGETOBJECTPARAMETERIVAPPLEPROC __glewGetObjectParameterivAPPLE = NULL;
PFNGLOBJECTPURGEABLEAPPLEPROC __glewObjectPurgeableAPPLE = NULL;
PFNGLOBJECTUNPURGEABLEAPPLEPROC __glewObjectUnpurgeableAPPLE = NULL;

PFNGLCLIENTWAITSYNCAPPLEPROC __glewClientWaitSyncAPPLE = NULL;
PFNGLDELETESYNCAPPLEPROC __glewDeleteSyncAPPLE = NULL;
PFNGLFENCESYNCAPPLEPROC __glewFenceSyncAPPLE = NULL;
PFNGLGETINTEGER64VAPPLEPROC __glewGetInteger64vAPPLE = NULL;
PFNGLGETSYNCIVAPPLEPROC __glewGetSyncivAPPLE = NULL;
PFNGLISSYNCAPPLEPROC __glewIsSyncAPPLE = NULL;
PFNGLWAITSYNCAPPLEPROC __glewWaitSyncAPPLE = NULL;

PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC __glewGetTexParameterPointervAPPLE = NULL;
PFNGLTEXTURERANGEAPPLEPROC __glewTextureRangeAPPLE = NULL;

PFNGLBINDVERTEXARRAYAPPLEPROC __glewBindVertexArrayAPPLE = NULL;
PFNGLDELETEVERTEXARRAYSAPPLEPROC __glewDeleteVertexArraysAPPLE = NULL;
PFNGLGENVERTEXARRAYSAPPLEPROC __glewGenVertexArraysAPPLE = NULL;
PFNGLISVERTEXARRAYAPPLEPROC __glewIsVertexArrayAPPLE = NULL;

PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC __glewFlushVertexArrayRangeAPPLE = NULL;
PFNGLVERTEXARRAYPARAMETERIAPPLEPROC __glewVertexArrayParameteriAPPLE = NULL;
PFNGLVERTEXARRAYRANGEAPPLEPROC __glewVertexArrayRangeAPPLE = NULL;

PFNGLDISABLEVERTEXATTRIBAPPLEPROC __glewDisableVertexAttribAPPLE = NULL;
PFNGLENABLEVERTEXATTRIBAPPLEPROC __glewEnableVertexAttribAPPLE = NULL;
PFNGLISVERTEXATTRIBENABLEDAPPLEPROC __glewIsVertexAttribEnabledAPPLE = NULL;
PFNGLMAPVERTEXATTRIB1DAPPLEPROC __glewMapVertexAttrib1dAPPLE = NULL;
PFNGLMAPVERTEXATTRIB1FAPPLEPROC __glewMapVertexAttrib1fAPPLE = NULL;
PFNGLMAPVERTEXATTRIB2DAPPLEPROC __glewMapVertexAttrib2dAPPLE = NULL;
PFNGLMAPVERTEXATTRIB2FAPPLEPROC __glewMapVertexAttrib2fAPPLE = NULL;

PFNGLCLEARDEPTHFPROC __glewClearDepthf = NULL;
PFNGLDEPTHRANGEFPROC __glewDepthRangef = NULL;
PFNGLGETSHADERPRECISIONFORMATPROC __glewGetShaderPrecisionFormat = NULL;
PFNGLRELEASESHADERCOMPILERPROC __glewReleaseShaderCompiler = NULL;
PFNGLSHADERBINARYPROC __glewShaderBinary = NULL;

PFNGLMEMORYBARRIERBYREGIONPROC __glewMemoryBarrierByRegion = NULL;

PFNGLPRIMITIVEBOUNDINGBOXARBPROC __glewPrimitiveBoundingBoxARB = NULL;

PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC __glewDrawArraysInstancedBaseInstance = NULL;
PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC __glewDrawElementsInstancedBaseInstance = NULL;
PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC __glewDrawElementsInstancedBaseVertexBaseInstance = NULL;

PFNGLGETIMAGEHANDLEARBPROC __glewGetImageHandleARB = NULL;
PFNGLGETTEXTUREHANDLEARBPROC __glewGetTextureHandleARB = NULL;
PFNGLGETTEXTURESAMPLERHANDLEARBPROC __glewGetTextureSamplerHandleARB = NULL;
PFNGLGETVERTEXATTRIBLUI64VARBPROC __glewGetVertexAttribLui64vARB = NULL;
PFNGLISIMAGEHANDLERESIDENTARBPROC __glewIsImageHandleResidentARB = NULL;
PFNGLISTEXTUREHANDLERESIDENTARBPROC __glewIsTextureHandleResidentARB = NULL;
PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC __glewMakeImageHandleNonResidentARB = NULL;
PFNGLMAKEIMAGEHANDLERESIDENTARBPROC __glewMakeImageHandleResidentARB = NULL;
PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC __glewMakeTextureHandleNonResidentARB = NULL;
PFNGLMAKETEXTUREHANDLERESIDENTARBPROC __glewMakeTextureHandleResidentARB = NULL;
PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC __glewProgramUniformHandleui64ARB = NULL;
PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC __glewProgramUniformHandleui64vARB = NULL;
PFNGLUNIFORMHANDLEUI64ARBPROC __glewUniformHandleui64ARB = NULL;
PFNGLUNIFORMHANDLEUI64VARBPROC __glewUniformHandleui64vARB = NULL;
PFNGLVERTEXATTRIBL1UI64ARBPROC __glewVertexAttribL1ui64ARB = NULL;
PFNGLVERTEXATTRIBL1UI64VARBPROC __glewVertexAttribL1ui64vARB = NULL;

PFNGLBINDFRAGDATALOCATIONINDEXEDPROC __glewBindFragDataLocationIndexed = NULL;
PFNGLGETFRAGDATAINDEXPROC __glewGetFragDataIndex = NULL;

PFNGLBUFFERSTORAGEPROC __glewBufferStorage = NULL;

PFNGLCREATESYNCFROMCLEVENTARBPROC __glewCreateSyncFromCLeventARB = NULL;

PFNGLCLEARBUFFERDATAPROC __glewClearBufferData = NULL;
PFNGLCLEARBUFFERSUBDATAPROC __glewClearBufferSubData = NULL;
PFNGLCLEARNAMEDBUFFERDATAEXTPROC __glewClearNamedBufferDataEXT = NULL;
PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC __glewClearNamedBufferSubDataEXT = NULL;

PFNGLCLEARTEXIMAGEPROC __glewClearTexImage = NULL;
PFNGLCLEARTEXSUBIMAGEPROC __glewClearTexSubImage = NULL;

PFNGLCLIPCONTROLPROC __glewClipControl = NULL;

PFNGLCLAMPCOLORARBPROC __glewClampColorARB = NULL;

PFNGLDISPATCHCOMPUTEPROC __glewDispatchCompute = NULL;
PFNGLDISPATCHCOMPUTEINDIRECTPROC __glewDispatchComputeIndirect = NULL;

PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC __glewDispatchComputeGroupSizeARB = NULL;

PFNGLCOPYBUFFERSUBDATAPROC __glewCopyBufferSubData = NULL;

PFNGLCOPYIMAGESUBDATAPROC __glewCopyImageSubData = NULL;

PFNGLDEBUGMESSAGECALLBACKARBPROC __glewDebugMessageCallbackARB = NULL;
PFNGLDEBUGMESSAGECONTROLARBPROC __glewDebugMessageControlARB = NULL;
PFNGLDEBUGMESSAGEINSERTARBPROC __glewDebugMessageInsertARB = NULL;
PFNGLGETDEBUGMESSAGELOGARBPROC __glewGetDebugMessageLogARB = NULL;

PFNGLBINDTEXTUREUNITPROC __glewBindTextureUnit = NULL;
PFNGLBLITNAMEDFRAMEBUFFERPROC __glewBlitNamedFramebuffer = NULL;
PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC __glewCheckNamedFramebufferStatus = NULL;
PFNGLCLEARNAMEDBUFFERDATAPROC __glewClearNamedBufferData = NULL;
PFNGLCLEARNAMEDBUFFERSUBDATAPROC __glewClearNamedBufferSubData = NULL;
PFNGLCLEARNAMEDFRAMEBUFFERFIPROC __glewClearNamedFramebufferfi = NULL;
PFNGLCLEARNAMEDFRAMEBUFFERFVPROC __glewClearNamedFramebufferfv = NULL;
PFNGLCLEARNAMEDFRAMEBUFFERIVPROC __glewClearNamedFramebufferiv = NULL;
PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC __glewClearNamedFramebufferuiv = NULL;
PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC __glewCompressedTextureSubImage1D = NULL;
PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC __glewCompressedTextureSubImage2D = NULL;
PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC __glewCompressedTextureSubImage3D = NULL;
PFNGLCOPYNAMEDBUFFERSUBDATAPROC __glewCopyNamedBufferSubData = NULL;
PFNGLCOPYTEXTURESUBIMAGE1DPROC __glewCopyTextureSubImage1D = NULL;
PFNGLCOPYTEXTURESUBIMAGE2DPROC __glewCopyTextureSubImage2D = NULL;
PFNGLCOPYTEXTURESUBIMAGE3DPROC __glewCopyTextureSubImage3D = NULL;
PFNGLCREATEBUFFERSPROC __glewCreateBuffers = NULL;
PFNGLCREATEFRAMEBUFFERSPROC __glewCreateFramebuffers = NULL;
PFNGLCREATEPROGRAMPIPELINESPROC __glewCreateProgramPipelines = NULL;
PFNGLCREATEQUERIESPROC __glewCreateQueries = NULL;
PFNGLCREATERENDERBUFFERSPROC __glewCreateRenderbuffers = NULL;
PFNGLCREATESAMPLERSPROC __glewCreateSamplers = NULL;
PFNGLCREATETEXTURESPROC __glewCreateTextures = NULL;
PFNGLCREATETRANSFORMFEEDBACKSPROC __glewCreateTransformFeedbacks = NULL;
PFNGLCREATEVERTEXARRAYSPROC __glewCreateVertexArrays = NULL;
PFNGLDISABLEVERTEXARRAYATTRIBPROC __glewDisableVertexArrayAttrib = NULL;
PFNGLENABLEVERTEXARRAYATTRIBPROC __glewEnableVertexArrayAttrib = NULL;
PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC __glewFlushMappedNamedBufferRange = NULL;
PFNGLGENERATETEXTUREMIPMAPPROC __glewGenerateTextureMipmap = NULL;
PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC __glewGetCompressedTextureImage = NULL;
PFNGLGETNAMEDBUFFERPARAMETERI64VPROC __glewGetNamedBufferParameteri64v = NULL;
PFNGLGETNAMEDBUFFERPARAMETERIVPROC __glewGetNamedBufferParameteriv = NULL;
PFNGLGETNAMEDBUFFERPOINTERVPROC __glewGetNamedBufferPointerv = NULL;
PFNGLGETNAMEDBUFFERSUBDATAPROC __glewGetNamedBufferSubData = NULL;
PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetNamedFramebufferAttachmentParameteriv = NULL;
PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC __glewGetNamedFramebufferParameteriv = NULL;
PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC __glewGetNamedRenderbufferParameteriv = NULL;
PFNGLGETQUERYBUFFEROBJECTI64VPROC __glewGetQueryBufferObjecti64v = NULL;
PFNGLGETQUERYBUFFEROBJECTIVPROC __glewGetQueryBufferObjectiv = NULL;
PFNGLGETQUERYBUFFEROBJECTUI64VPROC __glewGetQueryBufferObjectui64v = NULL;
PFNGLGETQUERYBUFFEROBJECTUIVPROC __glewGetQueryBufferObjectuiv = NULL;
PFNGLGETTEXTUREIMAGEPROC __glewGetTextureImage = NULL;
PFNGLGETTEXTURELEVELPARAMETERFVPROC __glewGetTextureLevelParameterfv = NULL;
PFNGLGETTEXTURELEVELPARAMETERIVPROC __glewGetTextureLevelParameteriv = NULL;
PFNGLGETTEXTUREPARAMETERIIVPROC __glewGetTextureParameterIiv = NULL;
PFNGLGETTEXTUREPARAMETERIUIVPROC __glewGetTextureParameterIuiv = NULL;
PFNGLGETTEXTUREPARAMETERFVPROC __glewGetTextureParameterfv = NULL;
PFNGLGETTEXTUREPARAMETERIVPROC __glewGetTextureParameteriv = NULL;
PFNGLGETTRANSFORMFEEDBACKI64_VPROC __glewGetTransformFeedbacki64_v = NULL;
PFNGLGETTRANSFORMFEEDBACKI_VPROC __glewGetTransformFeedbacki_v = NULL;
PFNGLGETTRANSFORMFEEDBACKIVPROC __glewGetTransformFeedbackiv = NULL;
PFNGLGETVERTEXARRAYINDEXED64IVPROC __glewGetVertexArrayIndexed64iv = NULL;
PFNGLGETVERTEXARRAYINDEXEDIVPROC __glewGetVertexArrayIndexediv = NULL;
PFNGLGETVERTEXARRAYIVPROC __glewGetVertexArrayiv = NULL;
PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC __glewInvalidateNamedFramebufferData = NULL;
PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC __glewInvalidateNamedFramebufferSubData = NULL;
PFNGLMAPNAMEDBUFFERPROC __glewMapNamedBuffer = NULL;
PFNGLMAPNAMEDBUFFERRANGEPROC __glewMapNamedBufferRange = NULL;
PFNGLNAMEDBUFFERDATAPROC __glewNamedBufferData = NULL;
PFNGLNAMEDBUFFERSTORAGEPROC __glewNamedBufferStorage = NULL;
PFNGLNAMEDBUFFERSUBDATAPROC __glewNamedBufferSubData = NULL;
PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC __glewNamedFramebufferDrawBuffer = NULL;
PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC __glewNamedFramebufferDrawBuffers = NULL;
PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC __glewNamedFramebufferParameteri = NULL;
PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC __glewNamedFramebufferReadBuffer = NULL;
PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC __glewNamedFramebufferRenderbuffer = NULL;
PFNGLNAMEDFRAMEBUFFERTEXTUREPROC __glewNamedFramebufferTexture = NULL;
PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC __glewNamedFramebufferTextureLayer = NULL;
PFNGLNAMEDRENDERBUFFERSTORAGEPROC __glewNamedRenderbufferStorage = NULL;
PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewNamedRenderbufferStorageMultisample = NULL;
PFNGLTEXTUREBUFFERPROC __glewTextureBuffer = NULL;
PFNGLTEXTUREBUFFERRANGEPROC __glewTextureBufferRange = NULL;
PFNGLTEXTUREPARAMETERIIVPROC __glewTextureParameterIiv = NULL;
PFNGLTEXTUREPARAMETERIUIVPROC __glewTextureParameterIuiv = NULL;
PFNGLTEXTUREPARAMETERFPROC __glewTextureParameterf = NULL;
PFNGLTEXTUREPARAMETERFVPROC __glewTextureParameterfv = NULL;
PFNGLTEXTUREPARAMETERIPROC __glewTextureParameteri = NULL;
PFNGLTEXTUREPARAMETERIVPROC __glewTextureParameteriv = NULL;
PFNGLTEXTURESTORAGE1DPROC __glewTextureStorage1D = NULL;
PFNGLTEXTURESTORAGE2DPROC __glewTextureStorage2D = NULL;
PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC __glewTextureStorage2DMultisample = NULL;
PFNGLTEXTURESTORAGE3DPROC __glewTextureStorage3D = NULL;
PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC __glewTextureStorage3DMultisample = NULL;
PFNGLTEXTURESUBIMAGE1DPROC __glewTextureSubImage1D = NULL;
PFNGLTEXTURESUBIMAGE2DPROC __glewTextureSubImage2D = NULL;
PFNGLTEXTURESUBIMAGE3DPROC __glewTextureSubImage3D = NULL;
PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC __glewTransformFeedbackBufferBase = NULL;
PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC __glewTransformFeedbackBufferRange = NULL;
PFNGLUNMAPNAMEDBUFFERPROC __glewUnmapNamedBuffer = NULL;
PFNGLVERTEXARRAYATTRIBBINDINGPROC __glewVertexArrayAttribBinding = NULL;
PFNGLVERTEXARRAYATTRIBFORMATPROC __glewVertexArrayAttribFormat = NULL;
PFNGLVERTEXARRAYATTRIBIFORMATPROC __glewVertexArrayAttribIFormat = NULL;
PFNGLVERTEXARRAYATTRIBLFORMATPROC __glewVertexArrayAttribLFormat = NULL;
PFNGLVERTEXARRAYBINDINGDIVISORPROC __glewVertexArrayBindingDivisor = NULL;
PFNGLVERTEXARRAYELEMENTBUFFERPROC __glewVertexArrayElementBuffer = NULL;
PFNGLVERTEXARRAYVERTEXBUFFERPROC __glewVertexArrayVertexBuffer = NULL;
PFNGLVERTEXARRAYVERTEXBUFFERSPROC __glewVertexArrayVertexBuffers = NULL;

PFNGLDRAWBUFFERSARBPROC __glewDrawBuffersARB = NULL;

PFNGLBLENDEQUATIONSEPARATEIARBPROC __glewBlendEquationSeparateiARB = NULL;
PFNGLBLENDEQUATIONIARBPROC __glewBlendEquationiARB = NULL;
PFNGLBLENDFUNCSEPARATEIARBPROC __glewBlendFuncSeparateiARB = NULL;
PFNGLBLENDFUNCIARBPROC __glewBlendFunciARB = NULL;

PFNGLDRAWELEMENTSBASEVERTEXPROC __glewDrawElementsBaseVertex = NULL;
PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC __glewDrawElementsInstancedBaseVertex = NULL;
PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC __glewDrawRangeElementsBaseVertex = NULL;
PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC __glewMultiDrawElementsBaseVertex = NULL;

PFNGLDRAWARRAYSINDIRECTPROC __glewDrawArraysIndirect = NULL;
PFNGLDRAWELEMENTSINDIRECTPROC __glewDrawElementsIndirect = NULL;

PFNGLFRAMEBUFFERPARAMETERIPROC __glewFramebufferParameteri = NULL;
PFNGLGETFRAMEBUFFERPARAMETERIVPROC __glewGetFramebufferParameteriv = NULL;
PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC __glewGetNamedFramebufferParameterivEXT = NULL;
PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC __glewNamedFramebufferParameteriEXT = NULL;

PFNGLBINDFRAMEBUFFERPROC __glewBindFramebuffer = NULL;
PFNGLBINDRENDERBUFFERPROC __glewBindRenderbuffer = NULL;
PFNGLBLITFRAMEBUFFERPROC __glewBlitFramebuffer = NULL;
PFNGLCHECKFRAMEBUFFERSTATUSPROC __glewCheckFramebufferStatus = NULL;
PFNGLDELETEFRAMEBUFFERSPROC __glewDeleteFramebuffers = NULL;
PFNGLDELETERENDERBUFFERSPROC __glewDeleteRenderbuffers = NULL;
PFNGLFRAMEBUFFERRENDERBUFFERPROC __glewFramebufferRenderbuffer = NULL;
PFNGLFRAMEBUFFERTEXTURE1DPROC __glewFramebufferTexture1D = NULL;
PFNGLFRAMEBUFFERTEXTURE2DPROC __glewFramebufferTexture2D = NULL;
PFNGLFRAMEBUFFERTEXTURE3DPROC __glewFramebufferTexture3D = NULL;
PFNGLFRAMEBUFFERTEXTURELAYERPROC __glewFramebufferTextureLayer = NULL;
PFNGLGENFRAMEBUFFERSPROC __glewGenFramebuffers = NULL;
PFNGLGENRENDERBUFFERSPROC __glewGenRenderbuffers = NULL;
PFNGLGENERATEMIPMAPPROC __glewGenerateMipmap = NULL;
PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetFramebufferAttachmentParameteriv = NULL;
PFNGLGETRENDERBUFFERPARAMETERIVPROC __glewGetRenderbufferParameteriv = NULL;
PFNGLISFRAMEBUFFERPROC __glewIsFramebuffer = NULL;
PFNGLISRENDERBUFFERPROC __glewIsRenderbuffer = NULL;
PFNGLRENDERBUFFERSTORAGEPROC __glewRenderbufferStorage = NULL;
PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewRenderbufferStorageMultisample = NULL;

PFNGLFRAMEBUFFERTEXTUREARBPROC __glewFramebufferTextureARB = NULL;
PFNGLFRAMEBUFFERTEXTUREFACEARBPROC __glewFramebufferTextureFaceARB = NULL;
PFNGLFRAMEBUFFERTEXTURELAYERARBPROC __glewFramebufferTextureLayerARB = NULL;
PFNGLPROGRAMPARAMETERIARBPROC __glewProgramParameteriARB = NULL;

PFNGLGETPROGRAMBINARYPROC __glewGetProgramBinary = NULL;
PFNGLPROGRAMBINARYPROC __glewProgramBinary = NULL;
PFNGLPROGRAMPARAMETERIPROC __glewProgramParameteri = NULL;

PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC __glewGetCompressedTextureSubImage = NULL;
PFNGLGETTEXTURESUBIMAGEPROC __glewGetTextureSubImage = NULL;

PFNGLSPECIALIZESHADERARBPROC __glewSpecializeShaderARB = NULL;

PFNGLGETUNIFORMDVPROC __glewGetUniformdv = NULL;
PFNGLUNIFORM1DPROC __glewUniform1d = NULL;
PFNGLUNIFORM1DVPROC __glewUniform1dv = NULL;
PFNGLUNIFORM2DPROC __glewUniform2d = NULL;
PFNGLUNIFORM2DVPROC __glewUniform2dv = NULL;
PFNGLUNIFORM3DPROC __glewUniform3d = NULL;
PFNGLUNIFORM3DVPROC __glewUniform3dv = NULL;
PFNGLUNIFORM4DPROC __glewUniform4d = NULL;
PFNGLUNIFORM4DVPROC __glewUniform4dv = NULL;
PFNGLUNIFORMMATRIX2DVPROC __glewUniformMatrix2dv = NULL;
PFNGLUNIFORMMATRIX2X3DVPROC __glewUniformMatrix2x3dv = NULL;
PFNGLUNIFORMMATRIX2X4DVPROC __glewUniformMatrix2x4dv = NULL;
PFNGLUNIFORMMATRIX3DVPROC __glewUniformMatrix3dv = NULL;
PFNGLUNIFORMMATRIX3X2DVPROC __glewUniformMatrix3x2dv = NULL;
PFNGLUNIFORMMATRIX3X4DVPROC __glewUniformMatrix3x4dv = NULL;
PFNGLUNIFORMMATRIX4DVPROC __glewUniformMatrix4dv = NULL;
PFNGLUNIFORMMATRIX4X2DVPROC __glewUniformMatrix4x2dv = NULL;
PFNGLUNIFORMMATRIX4X3DVPROC __glewUniformMatrix4x3dv = NULL;

PFNGLGETUNIFORMI64VARBPROC __glewGetUniformi64vARB = NULL;
PFNGLGETUNIFORMUI64VARBPROC __glewGetUniformui64vARB = NULL;
PFNGLGETNUNIFORMI64VARBPROC __glewGetnUniformi64vARB = NULL;
PFNGLGETNUNIFORMUI64VARBPROC __glewGetnUniformui64vARB = NULL;
PFNGLPROGRAMUNIFORM1I64ARBPROC __glewProgramUniform1i64ARB = NULL;
PFNGLPROGRAMUNIFORM1I64VARBPROC __glewProgramUniform1i64vARB = NULL;
PFNGLPROGRAMUNIFORM1UI64ARBPROC __glewProgramUniform1ui64ARB = NULL;
PFNGLPROGRAMUNIFORM1UI64VARBPROC __glewProgramUniform1ui64vARB = NULL;
PFNGLPROGRAMUNIFORM2I64ARBPROC __glewProgramUniform2i64ARB = NULL;
PFNGLPROGRAMUNIFORM2I64VARBPROC __glewProgramUniform2i64vARB = NULL;
PFNGLPROGRAMUNIFORM2UI64ARBPROC __glewProgramUniform2ui64ARB = NULL;
PFNGLPROGRAMUNIFORM2UI64VARBPROC __glewProgramUniform2ui64vARB = NULL;
PFNGLPROGRAMUNIFORM3I64ARBPROC __glewProgramUniform3i64ARB = NULL;
PFNGLPROGRAMUNIFORM3I64VARBPROC __glewProgramUniform3i64vARB = NULL;
PFNGLPROGRAMUNIFORM3UI64ARBPROC __glewProgramUniform3ui64ARB = NULL;
PFNGLPROGRAMUNIFORM3UI64VARBPROC __glewProgramUniform3ui64vARB = NULL;
PFNGLPROGRAMUNIFORM4I64ARBPROC __glewProgramUniform4i64ARB = NULL;
PFNGLPROGRAMUNIFORM4I64VARBPROC __glewProgramUniform4i64vARB = NULL;
PFNGLPROGRAMUNIFORM4UI64ARBPROC __glewProgramUniform4ui64ARB = NULL;
PFNGLPROGRAMUNIFORM4UI64VARBPROC __glewProgramUniform4ui64vARB = NULL;
PFNGLUNIFORM1I64ARBPROC __glewUniform1i64ARB = NULL;
PFNGLUNIFORM1I64VARBPROC __glewUniform1i64vARB = NULL;
PFNGLUNIFORM1UI64ARBPROC __glewUniform1ui64ARB = NULL;
PFNGLUNIFORM1UI64VARBPROC __glewUniform1ui64vARB = NULL;
PFNGLUNIFORM2I64ARBPROC __glewUniform2i64ARB = NULL;
PFNGLUNIFORM2I64VARBPROC __glewUniform2i64vARB = NULL;
PFNGLUNIFORM2UI64ARBPROC __glewUniform2ui64ARB = NULL;
PFNGLUNIFORM2UI64VARBPROC __glewUniform2ui64vARB = NULL;
PFNGLUNIFORM3I64ARBPROC __glewUniform3i64ARB = NULL;
PFNGLUNIFORM3I64VARBPROC __glewUniform3i64vARB = NULL;
PFNGLUNIFORM3UI64ARBPROC __glewUniform3ui64ARB = NULL;
PFNGLUNIFORM3UI64VARBPROC __glewUniform3ui64vARB = NULL;
PFNGLUNIFORM4I64ARBPROC __glewUniform4i64ARB = NULL;
PFNGLUNIFORM4I64VARBPROC __glewUniform4i64vARB = NULL;
PFNGLUNIFORM4UI64ARBPROC __glewUniform4ui64ARB = NULL;
PFNGLUNIFORM4UI64VARBPROC __glewUniform4ui64vARB = NULL;

PFNGLCOLORSUBTABLEPROC __glewColorSubTable = NULL;
PFNGLCOLORTABLEPROC __glewColorTable = NULL;
PFNGLCOLORTABLEPARAMETERFVPROC __glewColorTableParameterfv = NULL;
PFNGLCOLORTABLEPARAMETERIVPROC __glewColorTableParameteriv = NULL;
PFNGLCONVOLUTIONFILTER1DPROC __glewConvolutionFilter1D = NULL;
PFNGLCONVOLUTIONFILTER2DPROC __glewConvolutionFilter2D = NULL;
PFNGLCONVOLUTIONPARAMETERFPROC __glewConvolutionParameterf = NULL;
PFNGLCONVOLUTIONPARAMETERFVPROC __glewConvolutionParameterfv = NULL;
PFNGLCONVOLUTIONPARAMETERIPROC __glewConvolutionParameteri = NULL;
PFNGLCONVOLUTIONPARAMETERIVPROC __glewConvolutionParameteriv = NULL;
PFNGLCOPYCOLORSUBTABLEPROC __glewCopyColorSubTable = NULL;
PFNGLCOPYCOLORTABLEPROC __glewCopyColorTable = NULL;
PFNGLCOPYCONVOLUTIONFILTER1DPROC __glewCopyConvolutionFilter1D = NULL;
PFNGLCOPYCONVOLUTIONFILTER2DPROC __glewCopyConvolutionFilter2D = NULL;
PFNGLGETCOLORTABLEPROC __glewGetColorTable = NULL;
PFNGLGETCOLORTABLEPARAMETERFVPROC __glewGetColorTableParameterfv = NULL;
PFNGLGETCOLORTABLEPARAMETERIVPROC __glewGetColorTableParameteriv = NULL;
PFNGLGETCONVOLUTIONFILTERPROC __glewGetConvolutionFilter = NULL;
PFNGLGETCONVOLUTIONPARAMETERFVPROC __glewGetConvolutionParameterfv = NULL;
PFNGLGETCONVOLUTIONPARAMETERIVPROC __glewGetConvolutionParameteriv = NULL;
PFNGLGETHISTOGRAMPROC __glewGetHistogram = NULL;
PFNGLGETHISTOGRAMPARAMETERFVPROC __glewGetHistogramParameterfv = NULL;
PFNGLGETHISTOGRAMPARAMETERIVPROC __glewGetHistogramParameteriv = NULL;
PFNGLGETMINMAXPROC __glewGetMinmax = NULL;
PFNGLGETMINMAXPARAMETERFVPROC __glewGetMinmaxParameterfv = NULL;
PFNGLGETMINMAXPARAMETERIVPROC __glewGetMinmaxParameteriv = NULL;
PFNGLGETSEPARABLEFILTERPROC __glewGetSeparableFilter = NULL;
PFNGLHISTOGRAMPROC __glewHistogram = NULL;
PFNGLMINMAXPROC __glewMinmax = NULL;
PFNGLRESETHISTOGRAMPROC __glewResetHistogram = NULL;
PFNGLRESETMINMAXPROC __glewResetMinmax = NULL;
PFNGLSEPARABLEFILTER2DPROC __glewSeparableFilter2D = NULL;

PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC __glewMultiDrawArraysIndirectCountARB = NULL;
PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC __glewMultiDrawElementsIndirectCountARB = NULL;

PFNGLDRAWARRAYSINSTANCEDARBPROC __glewDrawArraysInstancedARB = NULL;
PFNGLDRAWELEMENTSINSTANCEDARBPROC __glewDrawElementsInstancedARB = NULL;
PFNGLVERTEXATTRIBDIVISORARBPROC __glewVertexAttribDivisorARB = NULL;

PFNGLGETINTERNALFORMATIVPROC __glewGetInternalformativ = NULL;

PFNGLGETINTERNALFORMATI64VPROC __glewGetInternalformati64v = NULL;

PFNGLINVALIDATEBUFFERDATAPROC __glewInvalidateBufferData = NULL;
PFNGLINVALIDATEBUFFERSUBDATAPROC __glewInvalidateBufferSubData = NULL;
PFNGLINVALIDATEFRAMEBUFFERPROC __glewInvalidateFramebuffer = NULL;
PFNGLINVALIDATESUBFRAMEBUFFERPROC __glewInvalidateSubFramebuffer = NULL;
PFNGLINVALIDATETEXIMAGEPROC __glewInvalidateTexImage = NULL;
PFNGLINVALIDATETEXSUBIMAGEPROC __glewInvalidateTexSubImage = NULL;

PFNGLFLUSHMAPPEDBUFFERRANGEPROC __glewFlushMappedBufferRange = NULL;
PFNGLMAPBUFFERRANGEPROC __glewMapBufferRange = NULL;

PFNGLCURRENTPALETTEMATRIXARBPROC __glewCurrentPaletteMatrixARB = NULL;
PFNGLMATRIXINDEXPOINTERARBPROC __glewMatrixIndexPointerARB = NULL;
PFNGLMATRIXINDEXUBVARBPROC __glewMatrixIndexubvARB = NULL;
PFNGLMATRIXINDEXUIVARBPROC __glewMatrixIndexuivARB = NULL;
PFNGLMATRIXINDEXUSVARBPROC __glewMatrixIndexusvARB = NULL;

PFNGLBINDBUFFERSBASEPROC __glewBindBuffersBase = NULL;
PFNGLBINDBUFFERSRANGEPROC __glewBindBuffersRange = NULL;
PFNGLBINDIMAGETEXTURESPROC __glewBindImageTextures = NULL;
PFNGLBINDSAMPLERSPROC __glewBindSamplers = NULL;
PFNGLBINDTEXTURESPROC __glewBindTextures = NULL;
PFNGLBINDVERTEXBUFFERSPROC __glewBindVertexBuffers = NULL;

PFNGLMULTIDRAWARRAYSINDIRECTPROC __glewMultiDrawArraysIndirect = NULL;
PFNGLMULTIDRAWELEMENTSINDIRECTPROC __glewMultiDrawElementsIndirect = NULL;

PFNGLSAMPLECOVERAGEARBPROC __glewSampleCoverageARB = NULL;

PFNGLACTIVETEXTUREARBPROC __glewActiveTextureARB = NULL;
PFNGLCLIENTACTIVETEXTUREARBPROC __glewClientActiveTextureARB = NULL;
PFNGLMULTITEXCOORD1DARBPROC __glewMultiTexCoord1dARB = NULL;
PFNGLMULTITEXCOORD1DVARBPROC __glewMultiTexCoord1dvARB = NULL;
PFNGLMULTITEXCOORD1FARBPROC __glewMultiTexCoord1fARB = NULL;
PFNGLMULTITEXCOORD1FVARBPROC __glewMultiTexCoord1fvARB = NULL;
PFNGLMULTITEXCOORD1IARBPROC __glewMultiTexCoord1iARB = NULL;
PFNGLMULTITEXCOORD1IVARBPROC __glewMultiTexCoord1ivARB = NULL;
PFNGLMULTITEXCOORD1SARBPROC __glewMultiTexCoord1sARB = NULL;
PFNGLMULTITEXCOORD1SVARBPROC __glewMultiTexCoord1svARB = NULL;
PFNGLMULTITEXCOORD2DARBPROC __glewMultiTexCoord2dARB = NULL;
PFNGLMULTITEXCOORD2DVARBPROC __glewMultiTexCoord2dvARB = NULL;
PFNGLMULTITEXCOORD2FARBPROC __glewMultiTexCoord2fARB = NULL;
PFNGLMULTITEXCOORD2FVARBPROC __glewMultiTexCoord2fvARB = NULL;
PFNGLMULTITEXCOORD2IARBPROC __glewMultiTexCoord2iARB = NULL;
PFNGLMULTITEXCOORD2IVARBPROC __glewMultiTexCoord2ivARB = NULL;
PFNGLMULTITEXCOORD2SARBPROC __glewMultiTexCoord2sARB = NULL;
PFNGLMULTITEXCOORD2SVARBPROC __glewMultiTexCoord2svARB = NULL;
PFNGLMULTITEXCOORD3DARBPROC __glewMultiTexCoord3dARB = NULL;
PFNGLMULTITEXCOORD3DVARBPROC __glewMultiTexCoord3dvARB = NULL;
PFNGLMULTITEXCOORD3FARBPROC __glewMultiTexCoord3fARB = NULL;
PFNGLMULTITEXCOORD3FVARBPROC __glewMultiTexCoord3fvARB = NULL;
PFNGLMULTITEXCOORD3IARBPROC __glewMultiTexCoord3iARB = NULL;
PFNGLMULTITEXCOORD3IVARBPROC __glewMultiTexCoord3ivARB = NULL;
PFNGLMULTITEXCOORD3SARBPROC __glewMultiTexCoord3sARB = NULL;
PFNGLMULTITEXCOORD3SVARBPROC __glewMultiTexCoord3svARB = NULL;
PFNGLMULTITEXCOORD4DARBPROC __glewMultiTexCoord4dARB = NULL;
PFNGLMULTITEXCOORD4DVARBPROC __glewMultiTexCoord4dvARB = NULL;
PFNGLMULTITEXCOORD4FARBPROC __glewMultiTexCoord4fARB = NULL;
PFNGLMULTITEXCOORD4FVARBPROC __glewMultiTexCoord4fvARB = NULL;
PFNGLMULTITEXCOORD4IARBPROC __glewMultiTexCoord4iARB = NULL;
PFNGLMULTITEXCOORD4IVARBPROC __glewMultiTexCoord4ivARB = NULL;
PFNGLMULTITEXCOORD4SARBPROC __glewMultiTexCoord4sARB = NULL;
PFNGLMULTITEXCOORD4SVARBPROC __glewMultiTexCoord4svARB = NULL;

PFNGLBEGINQUERYARBPROC __glewBeginQueryARB = NULL;
PFNGLDELETEQUERIESARBPROC __glewDeleteQueriesARB = NULL;
PFNGLENDQUERYARBPROC __glewEndQueryARB = NULL;
PFNGLGENQUERIESARBPROC __glewGenQueriesARB = NULL;
PFNGLGETQUERYOBJECTIVARBPROC __glewGetQueryObjectivARB = NULL;
PFNGLGETQUERYOBJECTUIVARBPROC __glewGetQueryObjectuivARB = NULL;
PFNGLGETQUERYIVARBPROC __glewGetQueryivARB = NULL;
PFNGLISQUERYARBPROC __glewIsQueryARB = NULL;

PFNGLMAXSHADERCOMPILERTHREADSARBPROC __glewMaxShaderCompilerThreadsARB = NULL;

PFNGLPOINTPARAMETERFARBPROC __glewPointParameterfARB = NULL;
PFNGLPOINTPARAMETERFVARBPROC __glewPointParameterfvARB = NULL;

PFNGLPOLYGONOFFSETCLAMPPROC __glewPolygonOffsetClamp = NULL;

PFNGLGETPROGRAMINTERFACEIVPROC __glewGetProgramInterfaceiv = NULL;
PFNGLGETPROGRAMRESOURCEINDEXPROC __glewGetProgramResourceIndex = NULL;
PFNGLGETPROGRAMRESOURCELOCATIONPROC __glewGetProgramResourceLocation = NULL;
PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC __glewGetProgramResourceLocationIndex = NULL;
PFNGLGETPROGRAMRESOURCENAMEPROC __glewGetProgramResourceName = NULL;
PFNGLGETPROGRAMRESOURCEIVPROC __glewGetProgramResourceiv = NULL;

PFNGLPROVOKINGVERTEXPROC __glewProvokingVertex = NULL;

PFNGLGETGRAPHICSRESETSTATUSARBPROC __glewGetGraphicsResetStatusARB = NULL;
PFNGLGETNCOLORTABLEARBPROC __glewGetnColorTableARB = NULL;
PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC __glewGetnCompressedTexImageARB = NULL;
PFNGLGETNCONVOLUTIONFILTERARBPROC __glewGetnConvolutionFilterARB = NULL;
PFNGLGETNHISTOGRAMARBPROC __glewGetnHistogramARB = NULL;
PFNGLGETNMAPDVARBPROC __glewGetnMapdvARB = NULL;
PFNGLGETNMAPFVARBPROC __glewGetnMapfvARB = NULL;
PFNGLGETNMAPIVARBPROC __glewGetnMapivARB = NULL;
PFNGLGETNMINMAXARBPROC __glewGetnMinmaxARB = NULL;
PFNGLGETNPIXELMAPFVARBPROC __glewGetnPixelMapfvARB = NULL;
PFNGLGETNPIXELMAPUIVARBPROC __glewGetnPixelMapuivARB = NULL;
PFNGLGETNPIXELMAPUSVARBPROC __glewGetnPixelMapusvARB = NULL;
PFNGLGETNPOLYGONSTIPPLEARBPROC __glewGetnPolygonStippleARB = NULL;
PFNGLGETNSEPARABLEFILTERARBPROC __glewGetnSeparableFilterARB = NULL;
PFNGLGETNTEXIMAGEARBPROC __glewGetnTexImageARB = NULL;
PFNGLGETNUNIFORMDVARBPROC __glewGetnUniformdvARB = NULL;
PFNGLGETNUNIFORMFVARBPROC __glewGetnUniformfvARB = NULL;
PFNGLGETNUNIFORMIVARBPROC __glewGetnUniformivARB = NULL;
PFNGLGETNUNIFORMUIVARBPROC __glewGetnUniformuivARB = NULL;
PFNGLREADNPIXELSARBPROC __glewReadnPixelsARB = NULL;

PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC __glewFramebufferSampleLocationsfvARB = NULL;
PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC __glewNamedFramebufferSampleLocationsfvARB = NULL;

PFNGLMINSAMPLESHADINGARBPROC __glewMinSampleShadingARB = NULL;

PFNGLBINDSAMPLERPROC __glewBindSampler = NULL;
PFNGLDELETESAMPLERSPROC __glewDeleteSamplers = NULL;
PFNGLGENSAMPLERSPROC __glewGenSamplers = NULL;
PFNGLGETSAMPLERPARAMETERIIVPROC __glewGetSamplerParameterIiv = NULL;
PFNGLGETSAMPLERPARAMETERIUIVPROC __glewGetSamplerParameterIuiv = NULL;
PFNGLGETSAMPLERPARAMETERFVPROC __glewGetSamplerParameterfv = NULL;
PFNGLGETSAMPLERPARAMETERIVPROC __glewGetSamplerParameteriv = NULL;
PFNGLISSAMPLERPROC __glewIsSampler = NULL;
PFNGLSAMPLERPARAMETERIIVPROC __glewSamplerParameterIiv = NULL;
PFNGLSAMPLERPARAMETERIUIVPROC __glewSamplerParameterIuiv = NULL;
PFNGLSAMPLERPARAMETERFPROC __glewSamplerParameterf = NULL;
PFNGLSAMPLERPARAMETERFVPROC __glewSamplerParameterfv = NULL;
PFNGLSAMPLERPARAMETERIPROC __glewSamplerParameteri = NULL;
PFNGLSAMPLERPARAMETERIVPROC __glewSamplerParameteriv = NULL;

PFNGLACTIVESHADERPROGRAMPROC __glewActiveShaderProgram = NULL;
PFNGLBINDPROGRAMPIPELINEPROC __glewBindProgramPipeline = NULL;
PFNGLCREATESHADERPROGRAMVPROC __glewCreateShaderProgramv = NULL;
PFNGLDELETEPROGRAMPIPELINESPROC __glewDeleteProgramPipelines = NULL;
PFNGLGENPROGRAMPIPELINESPROC __glewGenProgramPipelines = NULL;
PFNGLGETPROGRAMPIPELINEINFOLOGPROC __glewGetProgramPipelineInfoLog = NULL;
PFNGLGETPROGRAMPIPELINEIVPROC __glewGetProgramPipelineiv = NULL;
PFNGLISPROGRAMPIPELINEPROC __glewIsProgramPipeline = NULL;
PFNGLPROGRAMUNIFORM1DPROC __glewProgramUniform1d = NULL;
PFNGLPROGRAMUNIFORM1DVPROC __glewProgramUniform1dv = NULL;
PFNGLPROGRAMUNIFORM1FPROC __glewProgramUniform1f = NULL;
PFNGLPROGRAMUNIFORM1FVPROC __glewProgramUniform1fv = NULL;
PFNGLPROGRAMUNIFORM1IPROC __glewProgramUniform1i = NULL;
PFNGLPROGRAMUNIFORM1IVPROC __glewProgramUniform1iv = NULL;
PFNGLPROGRAMUNIFORM1UIPROC __glewProgramUniform1ui = NULL;
PFNGLPROGRAMUNIFORM1UIVPROC __glewProgramUniform1uiv = NULL;
PFNGLPROGRAMUNIFORM2DPROC __glewProgramUniform2d = NULL;
PFNGLPROGRAMUNIFORM2DVPROC __glewProgramUniform2dv = NULL;
PFNGLPROGRAMUNIFORM2FPROC __glewProgramUniform2f = NULL;
PFNGLPROGRAMUNIFORM2FVPROC __glewProgramUniform2fv = NULL;
PFNGLPROGRAMUNIFORM2IPROC __glewProgramUniform2i = NULL;
PFNGLPROGRAMUNIFORM2IVPROC __glewProgramUniform2iv = NULL;
PFNGLPROGRAMUNIFORM2UIPROC __glewProgramUniform2ui = NULL;
PFNGLPROGRAMUNIFORM2UIVPROC __glewProgramUniform2uiv = NULL;
PFNGLPROGRAMUNIFORM3DPROC __glewProgramUniform3d = NULL;
PFNGLPROGRAMUNIFORM3DVPROC __glewProgramUniform3dv = NULL;
PFNGLPROGRAMUNIFORM3FPROC __glewProgramUniform3f = NULL;
PFNGLPROGRAMUNIFORM3FVPROC __glewProgramUniform3fv = NULL;
PFNGLPROGRAMUNIFORM3IPROC __glewProgramUniform3i = NULL;
PFNGLPROGRAMUNIFORM3IVPROC __glewProgramUniform3iv = NULL;
PFNGLPROGRAMUNIFORM3UIPROC __glewProgramUniform3ui = NULL;
PFNGLPROGRAMUNIFORM3UIVPROC __glewProgramUniform3uiv = NULL;
PFNGLPROGRAMUNIFORM4DPROC __glewProgramUniform4d = NULL;
PFNGLPROGRAMUNIFORM4DVPROC __glewProgramUniform4dv = NULL;
PFNGLPROGRAMUNIFORM4FPROC __glewProgramUniform4f = NULL;
PFNGLPROGRAMUNIFORM4FVPROC __glewProgramUniform4fv = NULL;
PFNGLPROGRAMUNIFORM4IPROC __glewProgramUniform4i = NULL;
PFNGLPROGRAMUNIFORM4IVPROC __glewProgramUniform4iv = NULL;
PFNGLPROGRAMUNIFORM4UIPROC __glewProgramUniform4ui = NULL;
PFNGLPROGRAMUNIFORM4UIVPROC __glewProgramUniform4uiv = NULL;
PFNGLPROGRAMUNIFORMMATRIX2DVPROC __glewProgramUniformMatrix2dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX2FVPROC __glewProgramUniformMatrix2fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC __glewProgramUniformMatrix2x3dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC __glewProgramUniformMatrix2x3fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC __glewProgramUniformMatrix2x4dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC __glewProgramUniformMatrix2x4fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX3DVPROC __glewProgramUniformMatrix3dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX3FVPROC __glewProgramUniformMatrix3fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC __glewProgramUniformMatrix3x2dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC __glewProgramUniformMatrix3x2fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC __glewProgramUniformMatrix3x4dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC __glewProgramUniformMatrix3x4fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX4DVPROC __glewProgramUniformMatrix4dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX4FVPROC __glewProgramUniformMatrix4fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC __glewProgramUniformMatrix4x2dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC __glewProgramUniformMatrix4x2fv = NULL;
PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC __glewProgramUniformMatrix4x3dv = NULL;
PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC __glewProgramUniformMatrix4x3fv = NULL;
PFNGLUSEPROGRAMSTAGESPROC __glewUseProgramStages = NULL;
PFNGLVALIDATEPROGRAMPIPELINEPROC __glewValidateProgramPipeline = NULL;

PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC __glewGetActiveAtomicCounterBufferiv = NULL;

PFNGLBINDIMAGETEXTUREPROC __glewBindImageTexture = NULL;
PFNGLMEMORYBARRIERPROC __glewMemoryBarrier = NULL;

PFNGLATTACHOBJECTARBPROC __glewAttachObjectARB = NULL;
PFNGLCOMPILESHADERARBPROC __glewCompileShaderARB = NULL;
PFNGLCREATEPROGRAMOBJECTARBPROC __glewCreateProgramObjectARB = NULL;
PFNGLCREATESHADEROBJECTARBPROC __glewCreateShaderObjectARB = NULL;
PFNGLDELETEOBJECTARBPROC __glewDeleteObjectARB = NULL;
PFNGLDETACHOBJECTARBPROC __glewDetachObjectARB = NULL;
PFNGLGETACTIVEUNIFORMARBPROC __glewGetActiveUniformARB = NULL;
PFNGLGETATTACHEDOBJECTSARBPROC __glewGetAttachedObjectsARB = NULL;
PFNGLGETHANDLEARBPROC __glewGetHandleARB = NULL;
PFNGLGETINFOLOGARBPROC __glewGetInfoLogARB = NULL;
PFNGLGETOBJECTPARAMETERFVARBPROC __glewGetObjectParameterfvARB = NULL;
PFNGLGETOBJECTPARAMETERIVARBPROC __glewGetObjectParameterivARB = NULL;
PFNGLGETSHADERSOURCEARBPROC __glewGetShaderSourceARB = NULL;
PFNGLGETUNIFORMLOCATIONARBPROC __glewGetUniformLocationARB = NULL;
PFNGLGETUNIFORMFVARBPROC __glewGetUniformfvARB = NULL;
PFNGLGETUNIFORMIVARBPROC __glewGetUniformivARB = NULL;
PFNGLLINKPROGRAMARBPROC __glewLinkProgramARB = NULL;
PFNGLSHADERSOURCEARBPROC __glewShaderSourceARB = NULL;
PFNGLUNIFORM1FARBPROC __glewUniform1fARB = NULL;
PFNGLUNIFORM1FVARBPROC __glewUniform1fvARB = NULL;
PFNGLUNIFORM1IARBPROC __glewUniform1iARB = NULL;
PFNGLUNIFORM1IVARBPROC __glewUniform1ivARB = NULL;
PFNGLUNIFORM2FARBPROC __glewUniform2fARB = NULL;
PFNGLUNIFORM2FVARBPROC __glewUniform2fvARB = NULL;
PFNGLUNIFORM2IARBPROC __glewUniform2iARB = NULL;
PFNGLUNIFORM2IVARBPROC __glewUniform2ivARB = NULL;
PFNGLUNIFORM3FARBPROC __glewUniform3fARB = NULL;
PFNGLUNIFORM3FVARBPROC __glewUniform3fvARB = NULL;
PFNGLUNIFORM3IARBPROC __glewUniform3iARB = NULL;
PFNGLUNIFORM3IVARBPROC __glewUniform3ivARB = NULL;
PFNGLUNIFORM4FARBPROC __glewUniform4fARB = NULL;
PFNGLUNIFORM4FVARBPROC __glewUniform4fvARB = NULL;
PFNGLUNIFORM4IARBPROC __glewUniform4iARB = NULL;
PFNGLUNIFORM4IVARBPROC __glewUniform4ivARB = NULL;
PFNGLUNIFORMMATRIX2FVARBPROC __glewUniformMatrix2fvARB = NULL;
PFNGLUNIFORMMATRIX3FVARBPROC __glewUniformMatrix3fvARB = NULL;
PFNGLUNIFORMMATRIX4FVARBPROC __glewUniformMatrix4fvARB = NULL;
PFNGLUSEPROGRAMOBJECTARBPROC __glewUseProgramObjectARB = NULL;
PFNGLVALIDATEPROGRAMARBPROC __glewValidateProgramARB = NULL;

PFNGLSHADERSTORAGEBLOCKBINDINGPROC __glewShaderStorageBlockBinding = NULL;

PFNGLGETACTIVESUBROUTINENAMEPROC __glewGetActiveSubroutineName = NULL;
PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC __glewGetActiveSubroutineUniformName = NULL;
PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC __glewGetActiveSubroutineUniformiv = NULL;
PFNGLGETPROGRAMSTAGEIVPROC __glewGetProgramStageiv = NULL;
PFNGLGETSUBROUTINEINDEXPROC __glewGetSubroutineIndex = NULL;
PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC __glewGetSubroutineUniformLocation = NULL;
PFNGLGETUNIFORMSUBROUTINEUIVPROC __glewGetUniformSubroutineuiv = NULL;
PFNGLUNIFORMSUBROUTINESUIVPROC __glewUniformSubroutinesuiv = NULL;

PFNGLCOMPILESHADERINCLUDEARBPROC __glewCompileShaderIncludeARB = NULL;
PFNGLDELETENAMEDSTRINGARBPROC __glewDeleteNamedStringARB = NULL;
PFNGLGETNAMEDSTRINGARBPROC __glewGetNamedStringARB = NULL;
PFNGLGETNAMEDSTRINGIVARBPROC __glewGetNamedSt
Download .txt
gitextract_gjnt3x0x/

├── .github/
│   └── workflows/
│       └── build.yml
├── .gitignore
├── .gitmodules
├── .vscode/
│   └── c_cpp_properties.json
├── CMakeLists.txt
├── CNAME
├── INSTALL.txt
├── LICENSE
├── README.md
├── _config.yml
├── doc/
│   └── API.md
├── lib/
│   ├── CMakeLists.txt
│   ├── clipboard/
│   │   ├── CMakeLists.txt
│   │   ├── clipboard.h
│   │   ├── clipboard_linux.cpp
│   │   ├── clipboard_mac.mm
│   │   └── clipboard_win.cpp
│   ├── glew/
│   │   ├── CMakeLists.txt
│   │   ├── eglew.h
│   │   ├── glew.c
│   │   ├── glew.h
│   │   ├── glxew.h
│   │   └── wglew.h
│   ├── lb_xplane/
│   │   ├── CMakeLists.txt
│   │   ├── command.h
│   │   ├── command_provider.cpp
│   │   ├── command_provider.h
│   │   ├── dataref.h
│   │   ├── dataref_provider.h
│   │   ├── flight_loop.h
│   │   ├── logging.cpp
│   │   ├── logging.h
│   │   ├── menus.cpp
│   │   └── menus.h
│   ├── lb_xplane_ui/
│   │   ├── CMakeLists.txt
│   │   ├── container/
│   │   │   ├── container.cpp
│   │   │   ├── container.h
│   │   │   ├── scroll.cpp
│   │   │   ├── scroll.h
│   │   │   ├── single_axis_layout.cpp
│   │   │   └── single_axis_layout.h
│   │   ├── containers.h
│   │   ├── draw_basic.cpp
│   │   ├── draw_basic.h
│   │   ├── geometry.h
│   │   ├── gl_utils.cpp
│   │   ├── gl_utils.h
│   │   ├── layout_object.cpp
│   │   ├── layout_object.h
│   │   ├── widgets/
│   │   │   ├── button.cpp
│   │   │   ├── button.h
│   │   │   ├── horizontal_bar.cpp
│   │   │   ├── horizontal_bar.h
│   │   │   ├── image.cpp
│   │   │   ├── image.h
│   │   │   ├── progress.cpp
│   │   │   ├── progress.h
│   │   │   ├── scroll_bar.cpp
│   │   │   ├── scroll_bar.h
│   │   │   ├── spacer.h
│   │   │   ├── text.cpp
│   │   │   ├── text.h
│   │   │   ├── text_field.cpp
│   │   │   ├── text_field.h
│   │   │   └── widget.h
│   │   ├── widgets.h
│   │   ├── window11.cpp
│   │   └── window11.h
│   ├── mio/
│   │   ├── CMakeLists.txt
│   │   ├── README.md
│   │   └── include/
│   │       └── mio.hpp
│   └── nlohmann/
│       └── json.hpp
├── make_release_zip.sh
├── scripts/
│   └── make_keychain.sh
└── src/
    ├── CMakeLists.txt
    ├── drt_client/
    │   ├── CMakeLists.txt
    │   ├── drt_client.c
    │   ├── drt_client.h
    │   ├── example_queries.c
    │   ├── example_queries.h
    │   └── plugin.c
    ├── libdrt/
    │   ├── CMakeLists.txt
    │   ├── scan/
    │   │   ├── deduplicate_vector.h
    │   │   ├── scan_entity.cpp
    │   │   ├── scan_entity.h
    │   │   ├── scan_files.cpp
    │   │   └── scan_files.h
    │   ├── search/
    │   │   ├── allrefs.cpp
    │   │   ├── allrefs.h
    │   │   ├── commandref.cpp
    │   │   ├── commandref.h
    │   │   ├── dataref.cpp
    │   │   ├── dataref.h
    │   │   ├── ref.cpp
    │   │   ├── ref.h
    │   │   ├── search.cpp
    │   │   └── search.h
    │   └── util/
    │       ├── string_util.cpp
    │       ├── string_util.h
    │       └── visit_backport.h
    └── plugin/
        ├── CMakeLists.txt
        ├── drt_datarefs.cpp
        ├── drt_datarefs.h
        ├── drt_plugin.cpp
        ├── drt_plugin.h
        ├── internal_dataref_list.cpp
        ├── internal_dataref_list.h
        ├── next_flight_loop_callback.h
        ├── plugin.cpp
        ├── plugin.h
        ├── plugin_menu.cpp
        ├── plugin_menu.h
        ├── prefs.cpp
        ├── prefs.h
        ├── search_api.cpp
        ├── search_api.h
        ├── threaded_scanner.cpp
        ├── threaded_scanner.h
        └── ui/
            ├── about_window.cpp
            ├── about_window.h
            ├── commandref_window.cpp
            ├── commandref_window.h
            ├── dataref_edit_panel.cpp
            ├── dataref_edit_panel.h
            ├── dataref_window.cpp
            ├── dataref_window.h
            ├── search_window.cpp
            ├── search_window.h
            ├── selectable_list.cpp
            └── selectable_list.h
Copy disabled (too large) Download .txt
Showing preview only (36,924K chars total). Download the full file to get everything.
SYMBOL INDEX (1790 symbols across 74 files)

FILE: lib/clipboard/clipboard_linux.cpp
  function getClipboard (line 9) | std::string getClipboard() {
  function setClipboard (line 73) | void setClipboard(const std::string & s) {

FILE: lib/clipboard/clipboard_win.cpp
  function getClipboard (line 6) | std::string getClipboard() {
  function setClipboard (line 26) | void setClipboard(const std::string & s) {

FILE: lib/glew/eglew.h
  type EGLint (line 115) | typedef int32_t EGLint;
  type EGLBoolean (line 117) | typedef unsigned int EGLBoolean;
  type EGLenum (line 124) | typedef unsigned int EGLenum;
  type EGLAttrib (line 128) | typedef intptr_t EGLAttrib;
  type khronos_utime_nanoseconds_t (line 129) | typedef khronos_utime_nanoseconds_t EGLTime;
  type EGLAttribKHR (line 133) | typedef intptr_t EGLAttribKHR;
  type khronos_utime_nanoseconds_t (line 137) | typedef khronos_utime_nanoseconds_t EGLTimeKHR;
  type khronos_uint64_t (line 140) | typedef khronos_uint64_t EGLuint64KHR;
  type EGLNativeFileDescriptorKHR (line 141) | typedef int EGLNativeFileDescriptorKHR;
  type khronos_ssize_t (line 142) | typedef khronos_ssize_t EGLsizeiANDROID;
  type EGLsizeiANDROID (line 144) | typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsi...
  type khronos_utime_nanoseconds_t (line 149) | typedef khronos_utime_nanoseconds_t EGLTimeNV;
  type khronos_utime_nanoseconds_t (line 150) | typedef khronos_utime_nanoseconds_t EGLuint64NV;
  type khronos_stime_nanoseconds_t (line 151) | typedef khronos_stime_nanoseconds_t EGLnsecsANDROID;
  type EGLClientPixmapHI (line 153) | struct EGLClientPixmapHI
  type EGLBoolean (line 229) | typedef EGLBoolean  ( * PFNEGLCHOOSECONFIGPROC) (EGLDisplay  dpy, const ...
  type EGLBoolean (line 230) | typedef EGLBoolean  ( * PFNEGLCOPYBUFFERSPROC) (EGLDisplay  dpy, EGLSurf...
  type EGLContext (line 231) | typedef EGLContext  ( * PFNEGLCREATECONTEXTPROC) (EGLDisplay  dpy, EGLCo...
  type EGLSurface (line 232) | typedef EGLSurface  ( * PFNEGLCREATEPBUFFERSURFACEPROC) (EGLDisplay  dpy...
  type EGLSurface (line 233) | typedef EGLSurface  ( * PFNEGLCREATEPIXMAPSURFACEPROC) (EGLDisplay  dpy,...
  type EGLSurface (line 234) | typedef EGLSurface  ( * PFNEGLCREATEWINDOWSURFACEPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 235) | typedef EGLBoolean  ( * PFNEGLDESTROYCONTEXTPROC) (EGLDisplay  dpy, EGLC...
  type EGLBoolean (line 236) | typedef EGLBoolean  ( * PFNEGLDESTROYSURFACEPROC) (EGLDisplay  dpy, EGLS...
  type EGLBoolean (line 237) | typedef EGLBoolean  ( * PFNEGLGETCONFIGATTRIBPROC) (EGLDisplay  dpy, EGL...
  type EGLBoolean (line 238) | typedef EGLBoolean  ( * PFNEGLGETCONFIGSPROC) (EGLDisplay  dpy, EGLConfi...
  type EGLDisplay (line 239) | typedef EGLDisplay  ( * PFNEGLGETCURRENTDISPLAYPROC) ( void );
  type EGLSurface (line 240) | typedef EGLSurface  ( * PFNEGLGETCURRENTSURFACEPROC) (EGLint  readdraw);
  type EGLDisplay (line 241) | typedef EGLDisplay  ( * PFNEGLGETDISPLAYPROC) (EGLNativeDisplayType  dis...
  type EGLint (line 242) | typedef EGLint  ( * PFNEGLGETERRORPROC) ( void );
  type EGLBoolean (line 243) | typedef EGLBoolean  ( * PFNEGLINITIALIZEPROC) (EGLDisplay  dpy, EGLint *...
  type EGLBoolean (line 244) | typedef EGLBoolean  ( * PFNEGLMAKECURRENTPROC) (EGLDisplay  dpy, EGLSurf...
  type EGLBoolean (line 245) | typedef EGLBoolean  ( * PFNEGLQUERYCONTEXTPROC) (EGLDisplay  dpy, EGLCon...
  type EGLBoolean (line 247) | typedef EGLBoolean  ( * PFNEGLQUERYSURFACEPROC) (EGLDisplay  dpy, EGLSur...
  type EGLBoolean (line 248) | typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSPROC) (EGLDisplay  dpy, EGLSurf...
  type EGLBoolean (line 249) | typedef EGLBoolean  ( * PFNEGLTERMINATEPROC) (EGLDisplay  dpy);
  type EGLBoolean (line 250) | typedef EGLBoolean  ( * PFNEGLWAITGLPROC) ( void );
  type EGLBoolean (line 251) | typedef EGLBoolean  ( * PFNEGLWAITNATIVEPROC) (EGLint  engine);
  type EGLBoolean (line 301) | typedef EGLBoolean  ( * PFNEGLBINDTEXIMAGEPROC) (EGLDisplay  dpy, EGLSur...
  type EGLBoolean (line 302) | typedef EGLBoolean  ( * PFNEGLRELEASETEXIMAGEPROC) (EGLDisplay  dpy, EGL...
  type EGLBoolean (line 303) | typedef EGLBoolean  ( * PFNEGLSURFACEATTRIBPROC) (EGLDisplay  dpy, EGLSu...
  type EGLBoolean (line 304) | typedef EGLBoolean  ( * PFNEGLSWAPINTERVALPROC) (EGLDisplay  dpy, EGLint...
  type EGLBoolean (line 348) | typedef EGLBoolean  ( * PFNEGLBINDAPIPROC) (EGLenum  api);
  type EGLSurface (line 349) | typedef EGLSurface  ( * PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC) (EGLDis...
  type EGLenum (line 350) | typedef EGLenum  ( * PFNEGLQUERYAPIPROC) ( void );
  type EGLBoolean (line 351) | typedef EGLBoolean  ( * PFNEGLRELEASETHREADPROC) ( void );
  type EGLBoolean (line 352) | typedef EGLBoolean  ( * PFNEGLWAITCLIENTPROC) ( void );
  type EGLContext (line 398) | typedef EGLContext  ( * PFNEGLGETCURRENTCONTEXTPROC) ( void );
  type EGLint (line 453) | typedef EGLint  ( * PFNEGLCLIENTWAITSYNCPROC) (EGLDisplay  dpy, EGLSync ...
  type EGLImage (line 454) | typedef EGLImage  ( * PFNEGLCREATEIMAGEPROC) (EGLDisplay  dpy, EGLContex...
  type EGLSurface (line 455) | typedef EGLSurface  ( * PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC) (EGLDispl...
  type EGLSurface (line 456) | typedef EGLSurface  ( * PFNEGLCREATEPLATFORMWINDOWSURFACEPROC) (EGLDispl...
  type EGLSync (line 457) | typedef EGLSync  ( * PFNEGLCREATESYNCPROC) (EGLDisplay  dpy, EGLenum  ty...
  type EGLBoolean (line 458) | typedef EGLBoolean  ( * PFNEGLDESTROYIMAGEPROC) (EGLDisplay  dpy, EGLIma...
  type EGLBoolean (line 459) | typedef EGLBoolean  ( * PFNEGLDESTROYSYNCPROC) (EGLDisplay  dpy, EGLSync...
  type EGLDisplay (line 460) | typedef EGLDisplay  ( * PFNEGLGETPLATFORMDISPLAYPROC) (EGLenum  platform...
  type EGLBoolean (line 461) | typedef EGLBoolean  ( * PFNEGLGETSYNCATTRIBPROC) (EGLDisplay  dpy, EGLSy...
  type EGLBoolean (line 462) | typedef EGLBoolean  ( * PFNEGLWAITSYNCPROC) (EGLDisplay  dpy, EGLSync  s...
  type EGLClientBuffer (line 502) | typedef EGLClientBuffer  ( * PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC) ...
  type EGLint (line 552) | typedef EGLint  ( * PFNEGLDUPNATIVEFENCEFDANDROIDPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 565) | typedef EGLBoolean  ( * PFNEGLPRESENTATIONTIMEANDROIDPROC) (EGLDisplay  ...
  type EGLBoolean (line 612) | typedef EGLBoolean  ( * PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay ...
  type EGLBoolean (line 726) | typedef EGLBoolean  ( * PFNEGLQUERYDEVICESEXTPROC) (EGLint  max_devices,...
  type EGLBoolean (line 753) | typedef EGLBoolean  ( * PFNEGLQUERYDEVICEATTRIBEXTPROC) (EGLDeviceEXT  d...
  type EGLBoolean (line 755) | typedef EGLBoolean  ( * PFNEGLQUERYDISPLAYATTRIBEXTPROC) (EGLDisplay  dp...
  type EGLBoolean (line 847) | typedef EGLBoolean  ( * PFNEGLQUERYDMABUFFORMATSEXTPROC) (EGLDisplay  dp...
  type EGLBoolean (line 848) | typedef EGLBoolean  ( * PFNEGLQUERYDMABUFMODIFIERSEXTPROC) (EGLDisplay  ...
  type EGLBoolean (line 877) | typedef EGLBoolean  ( * PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDisplay  dpy, ...
  type EGLBoolean (line 878) | typedef EGLBoolean  ( * PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDisplay  dpy, c...
  type EGLBoolean (line 879) | typedef EGLBoolean  ( * PFNEGLOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay  dpy...
  type EGLBoolean (line 880) | typedef EGLBoolean  ( * PFNEGLOUTPUTPORTATTRIBEXTPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 881) | typedef EGLBoolean  ( * PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay...
  type EGLBoolean (line 883) | typedef EGLBoolean  ( * PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC) (EGLDisplay ...
  type EGLSurface (line 942) | typedef EGLSurface  ( * PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLDi...
  type EGLSurface (line 943) | typedef EGLSurface  ( * PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC) (EGLDi...
  type EGLDisplay (line 944) | typedef EGLDisplay  ( * PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLenum  platf...
  type EGLBoolean (line 1015) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMEROUTPUTEXTPROC) (EGLDisplay  ...
  type EGLBoolean (line 1048) | typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC) (EGLDisplay ...
  type EGLSurface (line 1098) | typedef EGLSurface  ( * PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay  dp...
  type EGLSyncKHR (line 1168) | typedef EGLSyncKHR  ( * PFNEGLCREATESYNC64KHRPROC) (EGLDisplay  dpy, EGL...
  type EGLint (line 1264) | typedef EGLint  ( * PFNEGLDEBUGMESSAGECONTROLKHRPROC) (EGLDEBUGPROCKHR  ...
  type EGLint (line 1265) | typedef EGLint  ( * PFNEGLLABELOBJECTKHRPROC) (EGLDisplay  display, EGLe...
  type EGLBoolean (line 1266) | typedef EGLBoolean  ( * PFNEGLQUERYDEBUGKHRPROC) (EGLint  attribute, EGL...
  type EGLImageKHR (line 1369) | typedef EGLImageKHR  ( * PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay  dpy, EGL...
  type EGLBoolean (line 1370) | typedef EGLBoolean  ( * PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay  dpy, EGL...
  type EGLBoolean (line 1428) | typedef EGLBoolean  ( * PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay  dpy, EGLS...
  type EGLBoolean (line 1429) | typedef EGLBoolean  ( * PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay  dpy, EG...
  type EGLBoolean (line 1477) | typedef EGLBoolean  ( * PFNEGLQUERYSURFACE64KHRPROC) (EGLDisplay  dpy, E...
  type EGLBoolean (line 1512) | typedef EGLBoolean  ( * PFNEGLSETDAMAGEREGIONKHRPROC) (EGLDisplay  dpy, ...
  type EGLint (line 1580) | typedef EGLint  ( * PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay  dpy, EGLSy...
  type EGLSyncKHR (line 1581) | typedef EGLSyncKHR  ( * PFNEGLCREATESYNCKHRPROC) (EGLDisplay  dpy, EGLen...
  type EGLBoolean (line 1582) | typedef EGLBoolean  ( * PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay  dpy, EGLS...
  type EGLBoolean (line 1583) | typedef EGLBoolean  ( * PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay  dpy, EG...
  type EGLBoolean (line 1584) | typedef EGLBoolean  ( * PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay  dpy, EGLSy...
  type EGLStreamKHR (line 1614) | typedef EGLStreamKHR  ( * PFNEGLCREATESTREAMKHRPROC) (EGLDisplay  dpy, c...
  type EGLBoolean (line 1615) | typedef EGLBoolean  ( * PFNEGLDESTROYSTREAMKHRPROC) (EGLDisplay  dpy, EG...
  type EGLBoolean (line 1616) | typedef EGLBoolean  ( * PFNEGLQUERYSTREAMKHRPROC) (EGLDisplay  dpy, EGLS...
  type EGLBoolean (line 1617) | typedef EGLBoolean  ( * PFNEGLQUERYSTREAMU64KHRPROC) (EGLDisplay  dpy, E...
  type EGLBoolean (line 1618) | typedef EGLBoolean  ( * PFNEGLSTREAMATTRIBKHRPROC) (EGLDisplay  dpy, EGL...
  type EGLStreamKHR (line 1640) | typedef EGLStreamKHR  ( * PFNEGLCREATESTREAMATTRIBKHRPROC) (EGLDisplay  ...
  type EGLBoolean (line 1641) | typedef EGLBoolean  ( * PFNEGLQUERYSTREAMATTRIBKHRPROC) (EGLDisplay  dpy...
  type EGLBoolean (line 1642) | typedef EGLBoolean  ( * PFNEGLSETSTREAMATTRIBKHRPROC) (EGLDisplay  dpy, ...
  type EGLBoolean (line 1643) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC) (EGLDi...
  type EGLBoolean (line 1644) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC) (EGLDi...
  type EGLBoolean (line 1663) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERACQUIREKHRPROC) (EGLDisplay ...
  type EGLBoolean (line 1664) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC) (E...
  type EGLBoolean (line 1665) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERRELEASEKHRPROC) (EGLDisplay ...
  type EGLStreamKHR (line 1680) | typedef EGLStreamKHR  ( * PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC) (...
  type EGLNativeFileDescriptorKHR (line 1681) | typedef EGLNativeFileDescriptorKHR  ( * PFNEGLGETSTREAMFILEDESCRIPTORKHR...
  type EGLBoolean (line 1700) | typedef EGLBoolean  ( * PFNEGLQUERYSTREAMTIMEKHRPROC) (EGLDisplay  dpy, ...
  type EGLSurface (line 1724) | typedef EGLSurface  ( * PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC) (EGLDi...
  type EGLBoolean (line 1746) | typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC) (EGLDisplay ...
  type EGLint (line 1770) | typedef EGLint  ( * PFNEGLWAITSYNCKHRPROC) (EGLDisplay  dpy, EGLSyncKHR ...
  type EGLImageKHR (line 1791) | typedef EGLImageKHR  ( * PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 1792) | typedef EGLBoolean  ( * PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay  dpy, ...
  type EGLBoolean (line 1806) | typedef EGLBoolean  ( * PFNEGLEXPORTDMABUFIMAGEMESAPROC) (EGLDisplay  dp...
  type EGLBoolean (line 1807) | typedef EGLBoolean  ( * PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC) (EGLDispla...
  type EGLBoolean (line 1843) | typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay  dpy...
  type EGLBoolean (line 1856) | typedef EGLBoolean  ( * PFNEGLSWAPBUFFERSREGION2NOKPROC) (EGLDisplay  dp...
  type EGLBoolean (line 1953) | typedef EGLBoolean  ( * PFNEGLQUERYNATIVEDISPLAYNVPROC) (EGLDisplay  dpy...
  type EGLBoolean (line 1954) | typedef EGLBoolean  ( * PFNEGLQUERYNATIVEPIXMAPNVPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 1955) | typedef EGLBoolean  ( * PFNEGLQUERYNATIVEWINDOWNVPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 1981) | typedef EGLBoolean  ( * PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay  dpy, EGL...
  type EGLBoolean (line 2011) | typedef EGLBoolean  ( * PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPR...
  type EGLBoolean (line 2129) | typedef EGLBoolean  ( * PFNEGLQUERYDISPLAYATTRIBNVPROC) (EGLDisplay  dpy...
  type EGLBoolean (line 2130) | typedef EGLBoolean  ( * PFNEGLQUERYSTREAMMETADATANVPROC) (EGLDisplay  dp...
  type EGLBoolean (line 2131) | typedef EGLBoolean  ( * PFNEGLSETSTREAMMETADATANVPROC) (EGLDisplay  dpy,...
  type EGLBoolean (line 2167) | typedef EGLBoolean  ( * PFNEGLRESETSTREAMNVPROC) (EGLDisplay  dpy, EGLSt...
  type EGLSyncKHR (line 2218) | typedef EGLSyncKHR  ( * PFNEGLCREATESTREAMSYNCNVPROC) (EGLDisplay  dpy, ...
  type EGLint (line 2244) | typedef EGLint  ( * PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV  sync, EGLint...
  type EGLSyncNV (line 2245) | typedef EGLSyncNV  ( * PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay  dpy, EG...
  type EGLBoolean (line 2246) | typedef EGLBoolean  ( * PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV  sync);
  type EGLBoolean (line 2247) | typedef EGLBoolean  ( * PFNEGLFENCENVPROC) (EGLSyncNV  sync);
  type EGLBoolean (line 2248) | typedef EGLBoolean  ( * PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV  sync, EGL...
  type EGLBoolean (line 2249) | typedef EGLBoolean  ( * PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV  sync, EGLenu...
  type EGLuint64NV (line 2267) | typedef EGLuint64NV  ( * PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) ( void );
  type EGLuint64NV (line 2268) | typedef EGLuint64NV  ( * PFNEGLGETSYSTEMTIMENVPROC) ( void );

FILE: lib/glew/glew.c
  type mach_header (line 132) | struct mach_header
  function GLuint (line 208) | static GLuint _glewStrLen (const GLubyte* s)
  function GLuint (line 216) | static GLuint _glewStrCLen (const GLubyte* s, GLubyte c)
  function GLuint (line 224) | static GLuint _glewStrCopy(char *d, const char *s, char c)
  function GLboolean (line 235) | static GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuin...
  function GLboolean (line 246) | static GLboolean _glewStrSame1 (const GLubyte** a, GLuint* na, const GLu...
  function GLboolean (line 267) | static GLboolean _glewStrSame2 (const GLubyte** a, GLuint* na, const GLu...
  function GLboolean (line 283) | static GLboolean _glewStrSame3 (const GLubyte** a, GLuint* na, const GLu...
  function GLboolean (line 307) | static GLboolean _glewSearchExtension (const char* name, const GLubyte *...
  function GLboolean (line 9254) | static GLboolean _glewInit_GL_VERSION_1_2 ()
  function GLboolean (line 9270) | static GLboolean _glewInit_GL_VERSION_1_3 ()
  function GLboolean (line 9328) | static GLboolean _glewInit_GL_VERSION_1_4 ()
  function GLboolean (line 9387) | static GLboolean _glewInit_GL_VERSION_1_5 ()
  function GLboolean (line 9418) | static GLboolean _glewInit_GL_VERSION_2_0 ()
  function GLboolean (line 9523) | static GLboolean _glewInit_GL_VERSION_2_1 ()
  function GLboolean (line 9541) | static GLboolean _glewInit_GL_VERSION_3_0 ()
  function GLboolean (line 9613) | static GLboolean _glewInit_GL_VERSION_3_1 ()
  function GLboolean (line 9631) | static GLboolean _glewInit_GL_VERSION_3_2 ()
  function GLboolean (line 9651) | static GLboolean _glewInit_GL_VERSION_3_3 ()
  function GLboolean (line 9664) | static GLboolean _glewInit_GL_VERSION_4_0 ()
  function GLboolean (line 9681) | static GLboolean _glewInit_GL_VERSION_4_5 ()
  function GLboolean (line 9697) | static GLboolean _glewInit_GL_VERSION_4_6 ()
  function GLboolean (line 9712) | static GLboolean _glewInit_GL_3DFX_tbuffer ()
  function GLboolean (line 9725) | static GLboolean _glewInit_GL_AMD_debug_output ()
  function GLboolean (line 9741) | static GLboolean _glewInit_GL_AMD_draw_buffers_blend ()
  function GLboolean (line 9757) | static GLboolean _glewInit_GL_AMD_framebuffer_sample_positions ()
  function GLboolean (line 9773) | static GLboolean _glewInit_GL_AMD_interleaved_elements ()
  function GLboolean (line 9786) | static GLboolean _glewInit_GL_AMD_multi_draw_indirect ()
  function GLboolean (line 9800) | static GLboolean _glewInit_GL_AMD_name_gen_delete ()
  function GLboolean (line 9815) | static GLboolean _glewInit_GL_AMD_occlusion_query_event ()
  function GLboolean (line 9828) | static GLboolean _glewInit_GL_AMD_performance_monitor ()
  function GLboolean (line 9851) | static GLboolean _glewInit_GL_AMD_sample_positions ()
  function GLboolean (line 9864) | static GLboolean _glewInit_GL_AMD_sparse_texture ()
  function GLboolean (line 9878) | static GLboolean _glewInit_GL_AMD_stencil_operation_extended ()
  function GLboolean (line 9891) | static GLboolean _glewInit_GL_AMD_vertex_shader_tessellator ()
  function GLboolean (line 9905) | static GLboolean _glewInit_GL_ANGLE_framebuffer_blit ()
  function GLboolean (line 9918) | static GLboolean _glewInit_GL_ANGLE_framebuffer_multisample ()
  function GLboolean (line 9931) | static GLboolean _glewInit_GL_ANGLE_instanced_arrays ()
  function GLboolean (line 9946) | static GLboolean _glewInit_GL_ANGLE_timer_query ()
  function GLboolean (line 9969) | static GLboolean _glewInit_GL_ANGLE_translated_shader_source ()
  function GLboolean (line 9982) | static GLboolean _glewInit_GL_APPLE_copy_texture_levels ()
  function GLboolean (line 9995) | static GLboolean _glewInit_GL_APPLE_element_array ()
  function GLboolean (line 10012) | static GLboolean _glewInit_GL_APPLE_fence ()
  function GLboolean (line 10032) | static GLboolean _glewInit_GL_APPLE_flush_buffer_range ()
  function GLboolean (line 10046) | static GLboolean _glewInit_GL_APPLE_framebuffer_multisample ()
  function GLboolean (line 10060) | static GLboolean _glewInit_GL_APPLE_object_purgeable ()
  function GLboolean (line 10075) | static GLboolean _glewInit_GL_APPLE_sync ()
  function GLboolean (line 10094) | static GLboolean _glewInit_GL_APPLE_texture_range ()
  function GLboolean (line 10108) | static GLboolean _glewInit_GL_APPLE_vertex_array_object ()
  function GLboolean (line 10124) | static GLboolean _glewInit_GL_APPLE_vertex_array_range ()
  function GLboolean (line 10139) | static GLboolean _glewInit_GL_APPLE_vertex_program_evaluators ()
  function GLboolean (line 10158) | static GLboolean _glewInit_GL_ARB_ES2_compatibility ()
  function GLboolean (line 10175) | static GLboolean _glewInit_GL_ARB_ES3_1_compatibility ()
  function GLboolean (line 10188) | static GLboolean _glewInit_GL_ARB_ES3_2_compatibility ()
  function GLboolean (line 10201) | static GLboolean _glewInit_GL_ARB_base_instance ()
  function GLboolean (line 10216) | static GLboolean _glewInit_GL_ARB_bindless_texture ()
  function GLboolean (line 10244) | static GLboolean _glewInit_GL_ARB_blend_func_extended ()
  function GLboolean (line 10258) | static GLboolean _glewInit_GL_ARB_buffer_storage ()
  function GLboolean (line 10271) | static GLboolean _glewInit_GL_ARB_cl_event ()
  function GLboolean (line 10284) | static GLboolean _glewInit_GL_ARB_clear_buffer_object ()
  function GLboolean (line 10300) | static GLboolean _glewInit_GL_ARB_clear_texture ()
  function GLboolean (line 10314) | static GLboolean _glewInit_GL_ARB_clip_control ()
  function GLboolean (line 10327) | static GLboolean _glewInit_GL_ARB_color_buffer_float ()
  function GLboolean (line 10340) | static GLboolean _glewInit_GL_ARB_compute_shader ()
  function GLboolean (line 10354) | static GLboolean _glewInit_GL_ARB_compute_variable_group_size ()
  function GLboolean (line 10367) | static GLboolean _glewInit_GL_ARB_copy_buffer ()
  function GLboolean (line 10380) | static GLboolean _glewInit_GL_ARB_copy_image ()
  function GLboolean (line 10393) | static GLboolean _glewInit_GL_ARB_debug_output ()
  function GLboolean (line 10409) | static GLboolean _glewInit_GL_ARB_direct_state_access ()
  function GLboolean (line 10518) | static GLboolean _glewInit_GL_ARB_draw_buffers ()
  function GLboolean (line 10531) | static GLboolean _glewInit_GL_ARB_draw_buffers_blend ()
  function GLboolean (line 10547) | static GLboolean _glewInit_GL_ARB_draw_elements_base_vertex ()
  function GLboolean (line 10563) | static GLboolean _glewInit_GL_ARB_draw_indirect ()
  function GLboolean (line 10577) | static GLboolean _glewInit_GL_ARB_framebuffer_no_attachments ()
  function GLboolean (line 10593) | static GLboolean _glewInit_GL_ARB_framebuffer_object ()
  function GLboolean (line 10625) | static GLboolean _glewInit_GL_ARB_geometry_shader4 ()
  function GLboolean (line 10641) | static GLboolean _glewInit_GL_ARB_get_program_binary ()
  function GLboolean (line 10656) | static GLboolean _glewInit_GL_ARB_get_texture_sub_image ()
  function GLboolean (line 10670) | static GLboolean _glewInit_GL_ARB_gl_spirv ()
  function GLboolean (line 10683) | static GLboolean _glewInit_GL_ARB_gpu_shader_fp64 ()
  function GLboolean (line 10713) | static GLboolean _glewInit_GL_ARB_gpu_shader_int64 ()
  function GLboolean (line 10761) | static GLboolean _glewInit_GL_ARB_imaging ()
  function GLboolean (line 10806) | static GLboolean _glewInit_GL_ARB_indirect_parameters ()
  function GLboolean (line 10820) | static GLboolean _glewInit_GL_ARB_instanced_arrays ()
  function GLboolean (line 10835) | static GLboolean _glewInit_GL_ARB_internalformat_query ()
  function GLboolean (line 10848) | static GLboolean _glewInit_GL_ARB_internalformat_query2 ()
  function GLboolean (line 10861) | static GLboolean _glewInit_GL_ARB_invalidate_subdata ()
  function GLboolean (line 10879) | static GLboolean _glewInit_GL_ARB_map_buffer_range ()
  function GLboolean (line 10893) | static GLboolean _glewInit_GL_ARB_matrix_palette ()
  function GLboolean (line 10910) | static GLboolean _glewInit_GL_ARB_multi_bind ()
  function GLboolean (line 10928) | static GLboolean _glewInit_GL_ARB_multi_draw_indirect ()
  function GLboolean (line 10942) | static GLboolean _glewInit_GL_ARB_multisample ()
  function GLboolean (line 10955) | static GLboolean _glewInit_GL_ARB_multitexture ()
  function GLboolean (line 11001) | static GLboolean _glewInit_GL_ARB_occlusion_query ()
  function GLboolean (line 11021) | static GLboolean _glewInit_GL_ARB_parallel_shader_compile ()
  function GLboolean (line 11034) | static GLboolean _glewInit_GL_ARB_point_parameters ()
  function GLboolean (line 11048) | static GLboolean _glewInit_GL_ARB_polygon_offset_clamp ()
  function GLboolean (line 11061) | static GLboolean _glewInit_GL_ARB_program_interface_query ()
  function GLboolean (line 11079) | static GLboolean _glewInit_GL_ARB_provoking_vertex ()
  function GLboolean (line 11092) | static GLboolean _glewInit_GL_ARB_robustness ()
  function GLboolean (line 11124) | static GLboolean _glewInit_GL_ARB_sample_locations ()
  function GLboolean (line 11138) | static GLboolean _glewInit_GL_ARB_sample_shading ()
  function GLboolean (line 11151) | static GLboolean _glewInit_GL_ARB_sampler_objects ()
  function GLboolean (line 11177) | static GLboolean _glewInit_GL_ARB_separate_shader_objects ()
  function GLboolean (line 11249) | static GLboolean _glewInit_GL_ARB_shader_atomic_counters ()
  function GLboolean (line 11262) | static GLboolean _glewInit_GL_ARB_shader_image_load_store ()
  function GLboolean (line 11276) | static GLboolean _glewInit_GL_ARB_shader_objects ()
  function GLboolean (line 11327) | static GLboolean _glewInit_GL_ARB_shader_storage_buffer_object ()
  function GLboolean (line 11340) | static GLboolean _glewInit_GL_ARB_shader_subroutine ()
  function GLboolean (line 11360) | static GLboolean _glewInit_GL_ARB_shading_language_include ()
  function GLboolean (line 11378) | static GLboolean _glewInit_GL_ARB_sparse_buffer ()
  function GLboolean (line 11391) | static GLboolean _glewInit_GL_ARB_sparse_texture ()
  function GLboolean (line 11404) | static GLboolean _glewInit_GL_ARB_sync ()
  function GLboolean (line 11423) | static GLboolean _glewInit_GL_ARB_tessellation_shader ()
  function GLboolean (line 11437) | static GLboolean _glewInit_GL_ARB_texture_barrier ()
  function GLboolean (line 11450) | static GLboolean _glewInit_GL_ARB_texture_buffer_object ()
  function GLboolean (line 11463) | static GLboolean _glewInit_GL_ARB_texture_buffer_range ()
  function GLboolean (line 11477) | static GLboolean _glewInit_GL_ARB_texture_compression ()
  function GLboolean (line 11496) | static GLboolean _glewInit_GL_ARB_texture_multisample ()
  function GLboolean (line 11512) | static GLboolean _glewInit_GL_ARB_texture_storage ()
  function GLboolean (line 11527) | static GLboolean _glewInit_GL_ARB_texture_storage_multisample ()
  function GLboolean (line 11543) | static GLboolean _glewInit_GL_ARB_texture_view ()
  function GLboolean (line 11556) | static GLboolean _glewInit_GL_ARB_timer_query ()
  function GLboolean (line 11571) | static GLboolean _glewInit_GL_ARB_transform_feedback2 ()
  function GLboolean (line 11590) | static GLboolean _glewInit_GL_ARB_transform_feedback3 ()
  function GLboolean (line 11606) | static GLboolean _glewInit_GL_ARB_transform_feedback_instanced ()
  function GLboolean (line 11620) | static GLboolean _glewInit_GL_ARB_transpose_matrix ()
  function GLboolean (line 11636) | static GLboolean _glewInit_GL_ARB_uniform_buffer_object ()
  function GLboolean (line 11658) | static GLboolean _glewInit_GL_ARB_vertex_array_object ()
  function GLboolean (line 11674) | static GLboolean _glewInit_GL_ARB_vertex_attrib_64bit ()
  function GLboolean (line 11696) | static GLboolean _glewInit_GL_ARB_vertex_attrib_binding ()
  function GLboolean (line 11720) | static GLboolean _glewInit_GL_ARB_vertex_blend ()
  function GLboolean (line 11742) | static GLboolean _glewInit_GL_ARB_vertex_buffer_object ()
  function GLboolean (line 11765) | static GLboolean _glewInit_GL_ARB_vertex_program ()
  function GLboolean (line 11839) | static GLboolean _glewInit_GL_ARB_vertex_shader ()
  function GLboolean (line 11854) | static GLboolean _glewInit_GL_ARB_vertex_type_2_10_10_10_rev ()
  function GLboolean (line 11904) | static GLboolean _glewInit_GL_ARB_viewport_array ()
  function GLboolean (line 11926) | static GLboolean _glewInit_GL_ARB_window_pos ()
  function GLboolean (line 11954) | static GLboolean _glewInit_GL_ATI_draw_buffers ()
  function GLboolean (line 11967) | static GLboolean _glewInit_GL_ATI_element_array ()
  function GLboolean (line 11982) | static GLboolean _glewInit_GL_ATI_envmap_bumpmap ()
  function GLboolean (line 11998) | static GLboolean _glewInit_GL_ATI_fragment_shader ()
  function GLboolean (line 12024) | static GLboolean _glewInit_GL_ATI_map_object_buffer ()
  function GLboolean (line 12038) | static GLboolean _glewInit_GL_ATI_pn_triangles ()
  function GLboolean (line 12052) | static GLboolean _glewInit_GL_ATI_separate_stencil ()
  function GLboolean (line 12066) | static GLboolean _glewInit_GL_ATI_vertex_array_object ()
  function GLboolean (line 12090) | static GLboolean _glewInit_GL_ATI_vertex_attrib_array_object ()
  function GLboolean (line 12105) | static GLboolean _glewInit_GL_ATI_vertex_streams ()
  function GLboolean (line 12162) | static GLboolean _glewInit_GL_EXT_base_instance ()
  function GLboolean (line 12177) | static GLboolean _glewInit_GL_EXT_bindable_uniform ()
  function GLboolean (line 12192) | static GLboolean _glewInit_GL_EXT_blend_color ()
  function GLboolean (line 12205) | static GLboolean _glewInit_GL_EXT_blend_equation_separate ()
  function GLboolean (line 12218) | static GLboolean _glewInit_GL_EXT_blend_func_extended ()
  function GLboolean (line 12233) | static GLboolean _glewInit_GL_EXT_blend_func_separate ()
  function GLboolean (line 12246) | static GLboolean _glewInit_GL_EXT_blend_minmax ()
  function GLboolean (line 12259) | static GLboolean _glewInit_GL_EXT_buffer_storage ()
  function GLboolean (line 12273) | static GLboolean _glewInit_GL_EXT_clear_texture ()
  function GLboolean (line 12287) | static GLboolean _glewInit_GL_EXT_color_subtable ()
  function GLboolean (line 12301) | static GLboolean _glewInit_GL_EXT_compiled_vertex_array ()
  function GLboolean (line 12315) | static GLboolean _glewInit_GL_EXT_convolution ()
  function GLboolean (line 12340) | static GLboolean _glewInit_GL_EXT_coordinate_frame ()
  function GLboolean (line 12354) | static GLboolean _glewInit_GL_EXT_copy_image ()
  function GLboolean (line 12367) | static GLboolean _glewInit_GL_EXT_copy_texture ()
  function GLboolean (line 12384) | static GLboolean _glewInit_GL_EXT_cull_vertex ()
  function GLboolean (line 12398) | static GLboolean _glewInit_GL_EXT_debug_label ()
  function GLboolean (line 12412) | static GLboolean _glewInit_GL_EXT_debug_marker ()
  function GLboolean (line 12427) | static GLboolean _glewInit_GL_EXT_depth_bounds_test ()
  function GLboolean (line 12440) | static GLboolean _glewInit_GL_EXT_direct_state_access ()
  function GLboolean (line 12666) | static GLboolean _glewInit_GL_EXT_discard_framebuffer ()
  function GLboolean (line 12679) | static GLboolean _glewInit_GL_EXT_draw_buffers ()
  function GLboolean (line 12692) | static GLboolean _glewInit_GL_EXT_draw_buffers2 ()
  function GLboolean (line 12710) | static GLboolean _glewInit_GL_EXT_draw_buffers_indexed ()
  function GLboolean (line 12730) | static GLboolean _glewInit_GL_EXT_draw_elements_base_vertex ()
  function GLboolean (line 12746) | static GLboolean _glewInit_GL_EXT_draw_instanced ()
  function GLboolean (line 12760) | static GLboolean _glewInit_GL_EXT_draw_range_elements ()
  function GLboolean (line 12773) | static GLboolean _glewInit_GL_EXT_external_buffer ()
  function GLboolean (line 12787) | static GLboolean _glewInit_GL_EXT_fog_coord ()
  function GLboolean (line 12804) | static GLboolean _glewInit_GL_EXT_fragment_lighting ()
  function GLboolean (line 12834) | static GLboolean _glewInit_GL_EXT_framebuffer_blit ()
  function GLboolean (line 12847) | static GLboolean _glewInit_GL_EXT_framebuffer_multisample ()
  function GLboolean (line 12860) | static GLboolean _glewInit_GL_EXT_framebuffer_object ()
  function GLboolean (line 12889) | static GLboolean _glewInit_GL_EXT_geometry_shader4 ()
  function GLboolean (line 12904) | static GLboolean _glewInit_GL_EXT_gpu_program_parameters ()
  function GLboolean (line 12918) | static GLboolean _glewInit_GL_EXT_gpu_shader4 ()
  function GLboolean (line 12964) | static GLboolean _glewInit_GL_EXT_histogram ()
  function GLboolean (line 12986) | static GLboolean _glewInit_GL_EXT_index_func ()
  function GLboolean (line 12999) | static GLboolean _glewInit_GL_EXT_index_material ()
  function GLboolean (line 13012) | static GLboolean _glewInit_GL_EXT_instanced_arrays ()
  function GLboolean (line 13025) | static GLboolean _glewInit_GL_EXT_light_texture ()
  function GLboolean (line 13040) | static GLboolean _glewInit_GL_EXT_map_buffer_range ()
  function GLboolean (line 13054) | static GLboolean _glewInit_GL_EXT_memory_object ()
  function GLboolean (line 13085) | static GLboolean _glewInit_GL_EXT_memory_object_fd ()
  function GLboolean (line 13098) | static GLboolean _glewInit_GL_EXT_memory_object_win32 ()
  function GLboolean (line 13112) | static GLboolean _glewInit_GL_EXT_multi_draw_arrays ()
  function GLboolean (line 13126) | static GLboolean _glewInit_GL_EXT_multi_draw_indirect ()
  function GLboolean (line 13140) | static GLboolean _glewInit_GL_EXT_multisample ()
  function GLboolean (line 13154) | static GLboolean _glewInit_GL_EXT_multisampled_render_to_texture ()
  function GLboolean (line 13167) | static GLboolean _glewInit_GL_EXT_multiview_draw_buffers ()
  function GLboolean (line 13182) | static GLboolean _glewInit_GL_EXT_paletted_texture ()
  function GLboolean (line 13198) | static GLboolean _glewInit_GL_EXT_pixel_transform ()
  function GLboolean (line 13216) | static GLboolean _glewInit_GL_EXT_point_parameters ()
  function GLboolean (line 13230) | static GLboolean _glewInit_GL_EXT_polygon_offset ()
  function GLboolean (line 13243) | static GLboolean _glewInit_GL_EXT_polygon_offset_clamp ()
  function GLboolean (line 13256) | static GLboolean _glewInit_GL_EXT_provoking_vertex ()
  function GLboolean (line 13269) | static GLboolean _glewInit_GL_EXT_raster_multisample ()
  function GLboolean (line 13285) | static GLboolean _glewInit_GL_EXT_scene_marker ()
  function GLboolean (line 13299) | static GLboolean _glewInit_GL_EXT_secondary_color ()
  function GLboolean (line 13328) | static GLboolean _glewInit_GL_EXT_semaphore ()
  function GLboolean (line 13347) | static GLboolean _glewInit_GL_EXT_semaphore_fd ()
  function GLboolean (line 13360) | static GLboolean _glewInit_GL_EXT_semaphore_win32 ()
  function GLboolean (line 13374) | static GLboolean _glewInit_GL_EXT_separate_shader_objects ()
  function GLboolean (line 13389) | static GLboolean _glewInit_GL_EXT_shader_image_load_store ()
  function GLboolean (line 13403) | static GLboolean _glewInit_GL_EXT_shader_pixel_local_storage2 ()
  function GLboolean (line 13418) | static GLboolean _glewInit_GL_EXT_sparse_texture ()
  function GLboolean (line 13432) | static GLboolean _glewInit_GL_EXT_stencil_two_side ()
  function GLboolean (line 13445) | static GLboolean _glewInit_GL_EXT_subtexture ()
  function GLboolean (line 13460) | static GLboolean _glewInit_GL_EXT_texture3D ()
  function GLboolean (line 13473) | static GLboolean _glewInit_GL_EXT_texture_array ()
  function GLboolean (line 13486) | static GLboolean _glewInit_GL_EXT_texture_buffer_object ()
  function GLboolean (line 13499) | static GLboolean _glewInit_GL_EXT_texture_integer ()
  function GLboolean (line 13517) | static GLboolean _glewInit_GL_EXT_texture_object ()
  function GLboolean (line 13535) | static GLboolean _glewInit_GL_EXT_texture_perturb_normal ()
  function GLboolean (line 13548) | static GLboolean _glewInit_GL_EXT_texture_storage ()
  function GLboolean (line 13566) | static GLboolean _glewInit_GL_EXT_texture_view ()
  function GLboolean (line 13579) | static GLboolean _glewInit_GL_EXT_timer_query ()
  function GLboolean (line 13593) | static GLboolean _glewInit_GL_EXT_transform_feedback ()
  function GLboolean (line 13612) | static GLboolean _glewInit_GL_EXT_vertex_array ()
  function GLboolean (line 13632) | static GLboolean _glewInit_GL_EXT_vertex_array_setXXX ()
  function GLboolean (line 13647) | static GLboolean _glewInit_GL_EXT_vertex_attrib_64bit ()
  function GLboolean (line 13670) | static GLboolean _glewInit_GL_EXT_vertex_shader ()
  function GLboolean (line 13724) | static GLboolean _glewInit_GL_EXT_vertex_weighting ()
  function GLboolean (line 13739) | static GLboolean _glewInit_GL_EXT_win32_keyed_mutex ()
  function GLboolean (line 13753) | static GLboolean _glewInit_GL_EXT_window_rectangles ()
  function GLboolean (line 13766) | static GLboolean _glewInit_GL_EXT_x11_sync_object ()
  function GLboolean (line 13779) | static GLboolean _glewInit_GL_GREMEDY_frame_terminator ()
  function GLboolean (line 13792) | static GLboolean _glewInit_GL_GREMEDY_string_marker ()
  function GLboolean (line 13805) | static GLboolean _glewInit_GL_HP_image_transform ()
  function GLboolean (line 13823) | static GLboolean _glewInit_GL_IBM_multimode_draw_arrays ()
  function GLboolean (line 13837) | static GLboolean _glewInit_GL_IBM_vertex_array_lists ()
  function GLboolean (line 13857) | static GLboolean _glewInit_GL_INTEL_map_texture ()
  function GLboolean (line 13872) | static GLboolean _glewInit_GL_INTEL_parallel_arrays ()
  function GLboolean (line 13888) | static GLboolean _glewInit_GL_INTEL_performance_query ()
  function GLboolean (line 13910) | static GLboolean _glewInit_GL_INTEL_texture_scissor ()
  function GLboolean (line 13924) | static GLboolean _glewInit_GL_KHR_blend_equation_advanced ()
  function GLboolean (line 13937) | static GLboolean _glewInit_GL_KHR_debug ()
  function GLboolean (line 13959) | static GLboolean _glewInit_GL_KHR_parallel_shader_compile ()
  function GLboolean (line 13972) | static GLboolean _glewInit_GL_KHR_robustness ()
  function GLboolean (line 13988) | static GLboolean _glewInit_GL_KTX_buffer_region ()
  function GLboolean (line 14005) | static GLboolean _glewInit_GL_MESA_resize_buffers ()
  function GLboolean (line 14018) | static GLboolean _glewInit_GL_MESA_window_pos ()
  function GLboolean (line 14054) | static GLboolean _glewInit_GL_NVX_conditional_render ()
  function GLboolean (line 14068) | static GLboolean _glewInit_GL_NVX_linked_gpu_multicast ()
  function GLboolean (line 14083) | static GLboolean _glewInit_GL_NV_3dvision_settings ()
  function GLboolean (line 14097) | static GLboolean _glewInit_GL_NV_bindless_multi_draw_indirect ()
  function GLboolean (line 14111) | static GLboolean _glewInit_GL_NV_bindless_multi_draw_indirect_count ()
  function GLboolean (line 14125) | static GLboolean _glewInit_GL_NV_bindless_texture ()
  function GLboolean (line 14150) | static GLboolean _glewInit_GL_NV_blend_equation_advanced ()
  function GLboolean (line 14164) | static GLboolean _glewInit_GL_NV_clip_space_w_scaling ()
  function GLboolean (line 14177) | static GLboolean _glewInit_GL_NV_command_list ()
  function GLboolean (line 14206) | static GLboolean _glewInit_GL_NV_conditional_render ()
  function GLboolean (line 14220) | static GLboolean _glewInit_GL_NV_conservative_raster ()
  function GLboolean (line 14233) | static GLboolean _glewInit_GL_NV_conservative_raster_dilate ()
  function GLboolean (line 14246) | static GLboolean _glewInit_GL_NV_conservative_raster_pre_snap_triangles ()
  function GLboolean (line 14259) | static GLboolean _glewInit_GL_NV_copy_buffer ()
  function GLboolean (line 14272) | static GLboolean _glewInit_GL_NV_copy_image ()
  function GLboolean (line 14285) | static GLboolean _glewInit_GL_NV_depth_buffer_float ()
  function GLboolean (line 14300) | static GLboolean _glewInit_GL_NV_draw_buffers ()
  function GLboolean (line 14313) | static GLboolean _glewInit_GL_NV_draw_instanced ()
  function GLboolean (line 14327) | static GLboolean _glewInit_GL_NV_draw_texture ()
  function GLboolean (line 14340) | static GLboolean _glewInit_GL_NV_draw_vulkan_image ()
  function GLboolean (line 14357) | static GLboolean _glewInit_GL_NV_evaluators ()
  function GLboolean (line 14378) | static GLboolean _glewInit_GL_NV_explicit_multisample ()
  function GLboolean (line 14393) | static GLboolean _glewInit_GL_NV_fence ()
  function GLboolean (line 14412) | static GLboolean _glewInit_GL_NV_fragment_coverage_to_color ()
  function GLboolean (line 14425) | static GLboolean _glewInit_GL_NV_fragment_program ()
  function GLboolean (line 14443) | static GLboolean _glewInit_GL_NV_framebuffer_blit ()
  function GLboolean (line 14456) | static GLboolean _glewInit_GL_NV_framebuffer_multisample ()
  function GLboolean (line 14469) | static GLboolean _glewInit_GL_NV_framebuffer_multisample_coverage ()
  function GLboolean (line 14482) | static GLboolean _glewInit_GL_NV_geometry_program4 ()
  function GLboolean (line 14495) | static GLboolean _glewInit_GL_NV_gpu_multicast ()
  function GLboolean (line 14519) | static GLboolean _glewInit_GL_NV_gpu_program4 ()
  function GLboolean (line 14543) | static GLboolean _glewInit_GL_NV_gpu_shader5 ()
  function GLboolean (line 14589) | static GLboolean _glewInit_GL_NV_half_float ()
  function GLboolean (line 14647) | static GLboolean _glewInit_GL_NV_instanced_arrays ()
  function GLboolean (line 14660) | static GLboolean _glewInit_GL_NV_internalformat_sample_query ()
  function GLboolean (line 14673) | static GLboolean _glewInit_GL_NV_non_square_matrices ()
  function GLboolean (line 14691) | static GLboolean _glewInit_GL_NV_occlusion_query ()
  function GLboolean (line 14710) | static GLboolean _glewInit_GL_NV_parameter_buffer_object ()
  function GLboolean (line 14725) | static GLboolean _glewInit_GL_NV_path_rendering ()
  function GLboolean (line 14801) | static GLboolean _glewInit_GL_NV_pixel_data_range ()
  function GLboolean (line 14815) | static GLboolean _glewInit_GL_NV_point_sprite ()
  function GLboolean (line 14829) | static GLboolean _glewInit_GL_NV_polygon_mode ()
  function GLboolean (line 14842) | static GLboolean _glewInit_GL_NV_present_video ()
  function GLboolean (line 14860) | static GLboolean _glewInit_GL_NV_primitive_restart ()
  function GLboolean (line 14874) | static GLboolean _glewInit_GL_NV_register_combiners ()
  function GLboolean (line 14899) | static GLboolean _glewInit_GL_NV_register_combiners2 ()
  function GLboolean (line 14913) | static GLboolean _glewInit_GL_NV_sample_locations ()
  function GLboolean (line 14927) | static GLboolean _glewInit_GL_NV_shader_buffer_load ()
  function GLboolean (line 14952) | static GLboolean _glewInit_GL_NV_texture_array ()
  function GLboolean (line 14970) | static GLboolean _glewInit_GL_NV_texture_barrier ()
  function GLboolean (line 14983) | static GLboolean _glewInit_GL_NV_texture_multisample ()
  function GLboolean (line 15001) | static GLboolean _glewInit_GL_NV_transform_feedback ()
  function GLboolean (line 15024) | static GLboolean _glewInit_GL_NV_transform_feedback2 ()
  function GLboolean (line 15043) | static GLboolean _glewInit_GL_NV_vdpau_interop ()
  function GLboolean (line 15065) | static GLboolean _glewInit_GL_NV_vertex_array_range ()
  function GLboolean (line 15079) | static GLboolean _glewInit_GL_NV_vertex_attrib_integer_64bit ()
  function GLboolean (line 15110) | static GLboolean _glewInit_GL_NV_vertex_buffer_unified_memory ()
  function GLboolean (line 15134) | static GLboolean _glewInit_GL_NV_vertex_program ()
  function GLboolean (line 15210) | static GLboolean _glewInit_GL_NV_video_capture ()
  function GLboolean (line 15234) | static GLboolean _glewInit_GL_NV_viewport_array ()
  function GLboolean (line 15258) | static GLboolean _glewInit_GL_NV_viewport_swizzle ()
  function GLboolean (line 15271) | static GLboolean _glewInit_GL_OVR_multiview ()
  function GLboolean (line 15284) | static GLboolean _glewInit_GL_OVR_multiview_multisampled_render_to_textu...
  function GLboolean (line 15297) | static GLboolean _glewInit_GL_QCOM_alpha_test ()
  function GLboolean (line 15310) | static GLboolean _glewInit_GL_QCOM_driver_control ()
  function GLboolean (line 15326) | static GLboolean _glewInit_GL_QCOM_extended_get ()
  function GLboolean (line 15346) | static GLboolean _glewInit_GL_QCOM_extended_get2 ()
  function GLboolean (line 15362) | static GLboolean _glewInit_GL_QCOM_framebuffer_foveated ()
  function GLboolean (line 15376) | static GLboolean _glewInit_GL_QCOM_shader_framebuffer_fetch_noncoherent ()
  function GLboolean (line 15389) | static GLboolean _glewInit_GL_QCOM_tiled_rendering ()
  function GLboolean (line 15403) | static GLboolean _glewInit_GL_REGAL_ES1_0_compatibility ()
  function GLboolean (line 15446) | static GLboolean _glewInit_GL_REGAL_ES1_1_compatibility ()
  function GLboolean (line 15471) | static GLboolean _glewInit_GL_REGAL_error_string ()
  function GLboolean (line 15484) | static GLboolean _glewInit_GL_REGAL_extension_query ()
  function GLboolean (line 15498) | static GLboolean _glewInit_GL_REGAL_log ()
  function GLboolean (line 15511) | static GLboolean _glewInit_GL_REGAL_proc_address ()
  function GLboolean (line 15524) | static GLboolean _glewInit_GL_SGIS_detail_texture ()
  function GLboolean (line 15538) | static GLboolean _glewInit_GL_SGIS_fog_function ()
  function GLboolean (line 15552) | static GLboolean _glewInit_GL_SGIS_multisample ()
  function GLboolean (line 15566) | static GLboolean _glewInit_GL_SGIS_multitexture ()
  function GLboolean (line 15582) | static GLboolean _glewInit_GL_SGIS_shared_multisample ()
  function GLboolean (line 15595) | static GLboolean _glewInit_GL_SGIS_sharpen_texture ()
  function GLboolean (line 15609) | static GLboolean _glewInit_GL_SGIS_texture4D ()
  function GLboolean (line 15623) | static GLboolean _glewInit_GL_SGIS_texture_filter4 ()
  function GLboolean (line 15637) | static GLboolean _glewInit_GL_SGIX_async ()
  function GLboolean (line 15655) | static GLboolean _glewInit_GL_SGIX_datapipe ()
  function GLboolean (line 15669) | static GLboolean _glewInit_GL_SGIX_flush_raster ()
  function GLboolean (line 15682) | static GLboolean _glewInit_GL_SGIX_fog_layers ()
  function GLboolean (line 15696) | static GLboolean _glewInit_GL_SGIX_fog_texture ()
  function GLboolean (line 15709) | static GLboolean _glewInit_GL_SGIX_fragment_specular_lighting ()
  function GLboolean (line 15738) | static GLboolean _glewInit_GL_SGIX_framezoom ()
  function GLboolean (line 15751) | static GLboolean _glewInit_GL_SGIX_igloo_interface ()
  function GLboolean (line 15764) | static GLboolean _glewInit_GL_SGIX_mpeg1 ()
  function GLboolean (line 15787) | static GLboolean _glewInit_GL_SGIX_nonlinear_lighting_pervertex ()
  function GLboolean (line 15803) | static GLboolean _glewInit_GL_SGIX_pixel_texture ()
  function GLboolean (line 15816) | static GLboolean _glewInit_GL_SGIX_polynomial_ffd ()
  function GLboolean (line 15830) | static GLboolean _glewInit_GL_SGIX_quad_mesh ()
  function GLboolean (line 15844) | static GLboolean _glewInit_GL_SGIX_reference_plane ()
  function GLboolean (line 15857) | static GLboolean _glewInit_GL_SGIX_sprite ()
  function GLboolean (line 15873) | static GLboolean _glewInit_GL_SGIX_tag_sample_buffer ()
  function GLboolean (line 15886) | static GLboolean _glewInit_GL_SGIX_vector_ops ()
  function GLboolean (line 15900) | static GLboolean _glewInit_GL_SGIX_vertex_array_object ()
  function GLboolean (line 15918) | static GLboolean _glewInit_GL_SGI_color_table ()
  function GLboolean (line 15937) | static GLboolean _glewInit_GL_SGI_fft ()
  function GLboolean (line 15956) | static GLboolean _glewInit_GL_SUNX_constant_data ()
  function GLboolean (line 15969) | static GLboolean _glewInit_GL_SUN_global_alpha ()
  function GLboolean (line 15989) | static GLboolean _glewInit_GL_SUN_read_video_pixels ()
  function GLboolean (line 16002) | static GLboolean _glewInit_GL_SUN_triangle_list ()
  function GLboolean (line 16021) | static GLboolean _glewInit_GL_SUN_vertex ()
  function GLboolean (line 16073) | static GLboolean _glewInit_GL_WIN_swap_hint ()
  function _glewExtensionCompare (line 16086) | static int _glewExtensionCompare(const char *s1, const char *s2)
  function _glewBsearchExtension (line 16101) | static ptrdiff_t _glewBsearchExtension(const char* name)
  function GLboolean (line 16116) | static GLboolean *_glewGetExtensionString(const char *name)
  function GLboolean (line 16123) | static GLboolean *_glewGetExtensionEnable(const char *name)
  function GLboolean (line 16146) | GLboolean GLEWAPIENTRY glewGetExtension (const char* name)
  type GLubyte (line 16156) | typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGPROC) (GLenum name);
  function GLenum (line 16159) | static GLenum GLEWAPIENTRY glewContextInit ()
  function GLboolean (line 17667) | static GLboolean _glewInit_EGL_VERSION_1_0 ()
  function GLboolean (line 17702) | static GLboolean _glewInit_EGL_VERSION_1_1 ()
  function GLboolean (line 17718) | static GLboolean _glewInit_EGL_VERSION_1_2 ()
  function GLboolean (line 17735) | static GLboolean _glewInit_EGL_VERSION_1_4 ()
  function GLboolean (line 17748) | static GLboolean _glewInit_EGL_VERSION_1_5 ()
  function GLboolean (line 17770) | static GLboolean _glewInit_EGL_ANDROID_blob_cache ()
  function GLboolean (line 17783) | static GLboolean _glewInit_EGL_ANDROID_create_native_client_buffer ()
  function GLboolean (line 17796) | static GLboolean _glewInit_EGL_ANDROID_native_fence_sync ()
  function GLboolean (line 17809) | static GLboolean _glewInit_EGL_ANDROID_presentation_time ()
  function GLboolean (line 17822) | static GLboolean _glewInit_EGL_ANGLE_query_surface_pointer ()
  function GLboolean (line 17835) | static GLboolean _glewInit_EGL_EXT_device_enumeration ()
  function GLboolean (line 17848) | static GLboolean _glewInit_EGL_EXT_device_query ()
  function GLboolean (line 17863) | static GLboolean _glewInit_EGL_EXT_image_dma_buf_import_modifiers ()
  function GLboolean (line 17877) | static GLboolean _glewInit_EGL_EXT_output_base ()
  function GLboolean (line 17897) | static GLboolean _glewInit_EGL_EXT_platform_base ()
  function GLboolean (line 17912) | static GLboolean _glewInit_EGL_EXT_stream_consumer_egloutput ()
  function GLboolean (line 17925) | static GLboolean _glewInit_EGL_EXT_swap_buffers_with_damage ()
  function GLboolean (line 17938) | static GLboolean _glewInit_EGL_HI_clientpixmap ()
  function GLboolean (line 17951) | static GLboolean _glewInit_EGL_KHR_cl_event2 ()
  function GLboolean (line 17964) | static GLboolean _glewInit_EGL_KHR_debug ()
  function GLboolean (line 17979) | static GLboolean _glewInit_EGL_KHR_image ()
  function GLboolean (line 17993) | static GLboolean _glewInit_EGL_KHR_lock_surface ()
  function GLboolean (line 18007) | static GLboolean _glewInit_EGL_KHR_lock_surface3 ()
  function GLboolean (line 18020) | static GLboolean _glewInit_EGL_KHR_partial_update ()
  function GLboolean (line 18033) | static GLboolean _glewInit_EGL_KHR_reusable_sync ()
  function GLboolean (line 18050) | static GLboolean _glewInit_EGL_KHR_stream ()
  function GLboolean (line 18067) | static GLboolean _glewInit_EGL_KHR_stream_attrib ()
  function GLboolean (line 18084) | static GLboolean _glewInit_EGL_KHR_stream_consumer_gltexture ()
  function GLboolean (line 18099) | static GLboolean _glewInit_EGL_KHR_stream_cross_process_fd ()
  function GLboolean (line 18113) | static GLboolean _glewInit_EGL_KHR_stream_fifo ()
  function GLboolean (line 18126) | static GLboolean _glewInit_EGL_KHR_stream_producer_eglsurface ()
  function GLboolean (line 18139) | static GLboolean _glewInit_EGL_KHR_swap_buffers_with_damage ()
  function GLboolean (line 18152) | static GLboolean _glewInit_EGL_KHR_wait_sync ()
  function GLboolean (line 18165) | static GLboolean _glewInit_EGL_MESA_drm_image ()
  function GLboolean (line 18179) | static GLboolean _glewInit_EGL_MESA_image_dma_buf_export ()
  function GLboolean (line 18193) | static GLboolean _glewInit_EGL_NOK_swap_region ()
  function GLboolean (line 18206) | static GLboolean _glewInit_EGL_NOK_swap_region2 ()
  function GLboolean (line 18219) | static GLboolean _glewInit_EGL_NV_native_query ()
  function GLboolean (line 18234) | static GLboolean _glewInit_EGL_NV_post_sub_buffer ()
  function GLboolean (line 18247) | static GLboolean _glewInit_EGL_NV_stream_consumer_gltexture_yuv ()
  function GLboolean (line 18260) | static GLboolean _glewInit_EGL_NV_stream_metadata ()
  function GLboolean (line 18275) | static GLboolean _glewInit_EGL_NV_stream_reset ()
  function GLboolean (line 18288) | static GLboolean _glewInit_EGL_NV_stream_sync ()
  function GLboolean (line 18301) | static GLboolean _glewInit_EGL_NV_sync ()
  function GLboolean (line 18319) | static GLboolean _glewInit_EGL_NV_system_time ()
  function GLboolean (line 18333) | GLboolean eglewGetExtension (const char* name)
  function GLenum (line 18344) | GLenum eglewInit (EGLDisplay display)
  function GLboolean (line 19016) | static GLboolean _glewInit_WGL_3DL_stereo_control ()
  function GLboolean (line 19029) | static GLboolean _glewInit_WGL_AMD_gpu_association ()
  function GLboolean (line 19050) | static GLboolean _glewInit_WGL_ARB_buffer_region ()
  function GLboolean (line 19066) | static GLboolean _glewInit_WGL_ARB_create_context ()
  function GLboolean (line 19079) | static GLboolean _glewInit_WGL_ARB_extensions_string ()
  function GLboolean (line 19092) | static GLboolean _glewInit_WGL_ARB_make_current_read ()
  function GLboolean (line 19106) | static GLboolean _glewInit_WGL_ARB_pbuffer ()
  function GLboolean (line 19123) | static GLboolean _glewInit_WGL_ARB_pixel_format ()
  function GLboolean (line 19138) | static GLboolean _glewInit_WGL_ARB_render_texture ()
  function GLboolean (line 19153) | static GLboolean _glewInit_WGL_EXT_display_color_table ()
  function GLboolean (line 19169) | static GLboolean _glewInit_WGL_EXT_extensions_string ()
  function GLboolean (line 19182) | static GLboolean _glewInit_WGL_EXT_make_current_read ()
  function GLboolean (line 19196) | static GLboolean _glewInit_WGL_EXT_pbuffer ()
  function GLboolean (line 19213) | static GLboolean _glewInit_WGL_EXT_pixel_format ()
  function GLboolean (line 19228) | static GLboolean _glewInit_WGL_EXT_swap_control ()
  function GLboolean (line 19242) | static GLboolean _glewInit_WGL_I3D_digital_video_control ()
  function GLboolean (line 19256) | static GLboolean _glewInit_WGL_I3D_gamma ()
  function GLboolean (line 19272) | static GLboolean _glewInit_WGL_I3D_genlock ()
  function GLboolean (line 19296) | static GLboolean _glewInit_WGL_I3D_image_buffer ()
  function GLboolean (line 19312) | static GLboolean _glewInit_WGL_I3D_swap_frame_lock ()
  function GLboolean (line 19328) | static GLboolean _glewInit_WGL_I3D_swap_frame_usage ()
  function GLboolean (line 19344) | static GLboolean _glewInit_WGL_NV_DX_interop ()
  function GLboolean (line 19364) | static GLboolean _glewInit_WGL_NV_copy_image ()
  function GLboolean (line 19377) | static GLboolean _glewInit_WGL_NV_delay_before_swap ()
  function GLboolean (line 19390) | static GLboolean _glewInit_WGL_NV_gpu_affinity ()
  function GLboolean (line 19407) | static GLboolean _glewInit_WGL_NV_present_video ()
  function GLboolean (line 19422) | static GLboolean _glewInit_WGL_NV_swap_group ()
  function GLboolean (line 19440) | static GLboolean _glewInit_WGL_NV_vertex_array_range ()
  function GLboolean (line 19454) | static GLboolean _glewInit_WGL_NV_video_capture ()
  function GLboolean (line 19471) | static GLboolean _glewInit_WGL_NV_video_output ()
  function GLboolean (line 19489) | static GLboolean _glewInit_WGL_OML_sync_control ()
  function GLboolean (line 19510) | GLboolean GLEWAPIENTRY wglewGetExtension (const char* name)
  function GLenum (line 19527) | GLenum GLEWAPIENTRY wglewInit ()
  function GLboolean (line 19977) | static GLboolean _glewInit_GLX_VERSION_1_2 ()
  function GLboolean (line 19990) | static GLboolean _glewInit_GLX_VERSION_1_3 ()
  function GLboolean (line 20019) | static GLboolean _glewInit_GLX_AMD_gpu_association ()
  function GLboolean (line 20040) | static GLboolean _glewInit_GLX_ARB_create_context ()
  function GLboolean (line 20053) | static GLboolean _glewInit_GLX_ATI_render_texture ()
  function GLboolean (line 20068) | static GLboolean _glewInit_GLX_EXT_import_context ()
  function GLboolean (line 20084) | static GLboolean _glewInit_GLX_EXT_swap_control ()
  function GLboolean (line 20097) | static GLboolean _glewInit_GLX_EXT_texture_from_pixmap ()
  function GLboolean (line 20111) | static GLboolean _glewInit_GLX_MESA_agp_offset ()
  function GLboolean (line 20124) | static GLboolean _glewInit_GLX_MESA_copy_sub_buffer ()
  function GLboolean (line 20137) | static GLboolean _glewInit_GLX_MESA_pixmap_colormap ()
  function GLboolean (line 20150) | static GLboolean _glewInit_GLX_MESA_query_renderer ()
  function GLboolean (line 20166) | static GLboolean _glewInit_GLX_MESA_release_buffers ()
  function GLboolean (line 20179) | static GLboolean _glewInit_GLX_MESA_set_3dfx_mode ()
  function GLboolean (line 20192) | static GLboolean _glewInit_GLX_MESA_swap_control ()
  function GLboolean (line 20206) | static GLboolean _glewInit_GLX_NV_copy_buffer ()
  function GLboolean (line 20220) | static GLboolean _glewInit_GLX_NV_copy_image ()
  function GLboolean (line 20233) | static GLboolean _glewInit_GLX_NV_delay_before_swap ()
  function GLboolean (line 20246) | static GLboolean _glewInit_GLX_NV_present_video ()
  function GLboolean (line 20260) | static GLboolean _glewInit_GLX_NV_swap_group ()
  function GLboolean (line 20278) | static GLboolean _glewInit_GLX_NV_vertex_array_range ()
  function GLboolean (line 20292) | static GLboolean _glewInit_GLX_NV_video_capture ()
  function GLboolean (line 20309) | static GLboolean _glewInit_GLX_NV_video_out ()
  function GLboolean (line 20327) | static GLboolean _glewInit_GLX_OML_sync_control ()
  function GLboolean (line 20344) | static GLboolean _glewInit_GLX_SGIX_fbconfig ()
  function GLboolean (line 20362) | static GLboolean _glewInit_GLX_SGIX_hyperpipe ()
  function GLboolean (line 20382) | static GLboolean _glewInit_GLX_SGIX_pbuffer ()
  function GLboolean (line 20399) | static GLboolean _glewInit_GLX_SGIX_swap_barrier ()
  function GLboolean (line 20413) | static GLboolean _glewInit_GLX_SGIX_swap_group ()
  function GLboolean (line 20426) | static GLboolean _glewInit_GLX_SGIX_video_resize ()
  function GLboolean (line 20443) | static GLboolean _glewInit_GLX_SGI_cushion ()
  function GLboolean (line 20456) | static GLboolean _glewInit_GLX_SGI_make_current_read ()
  function GLboolean (line 20470) | static GLboolean _glewInit_GLX_SGI_swap_control ()
  function GLboolean (line 20483) | static GLboolean _glewInit_GLX_SGI_video_sync ()
  function GLboolean (line 20497) | static GLboolean _glewInit_GLX_SUN_get_transparent_index ()
  function GLboolean (line 20510) | static GLboolean _glewInit_GLX_SUN_video_resize ()
  function GLboolean (line 20524) | GLboolean glxewGetExtension (const char* name)
  function GLenum (line 20536) | GLenum glxewInit ()
  function GLubyte (line 20828) | const GLubyte * GLEWAPIENTRY glewGetErrorString (GLenum error)
  function GLubyte (line 20842) | const GLubyte * GLEWAPIENTRY glewGetString (GLenum name)
  function GLenum (line 20860) | GLenum GLEWAPIENTRY glewInit (void)
  function DllMainCRTStartup (line 20885) | int __stdcall DllMainCRTStartup(void* instance, unsigned reason, void* r...
  function GLboolean (line 20893) | GLboolean GLEWAPIENTRY glewIsSupported (const char* name)
  function GLboolean (line 26628) | GLboolean GLEWAPIENTRY wglewIsSupported (const char* name)
  function GLboolean (line 27064) | GLboolean glxewIsSupported (const char* name)
  function GLboolean (line 27620) | GLboolean eglewIsSupported (const char* name)

FILE: lib/glew/glew.h
  type wchar_t (line 166) | typedef unsigned short wchar_t;
  type __int64 (line 179) | typedef __int64 ptrdiff_t;
  type _W64 (line 181) | typedef _W64 int ptrdiff_t;
  type GLenum (line 278) | typedef unsigned int GLenum;
  type GLbitfield (line 279) | typedef unsigned int GLbitfield;
  type GLuint (line 280) | typedef unsigned int GLuint;
  type GLint (line 281) | typedef int GLint;
  type GLsizei (line 282) | typedef int GLsizei;
  type GLboolean (line 283) | typedef unsigned char GLboolean;
  type GLbyte (line 284) | typedef signed char GLbyte;
  type GLshort (line 285) | typedef short GLshort;
  type GLubyte (line 286) | typedef unsigned char GLubyte;
  type GLushort (line 287) | typedef unsigned short GLushort;
  type GLulong (line 288) | typedef unsigned long GLulong;
  type GLfloat (line 289) | typedef float GLfloat;
  type GLclampf (line 290) | typedef float GLclampf;
  type GLdouble (line 291) | typedef double GLdouble;
  type GLclampd (line 292) | typedef double GLclampd;
  type GLvoid (line 293) | typedef void GLvoid;
  type __int64 (line 295) | typedef __int64 GLint64EXT;
  type GLuint64EXT (line 296) | typedef unsigned __int64 GLuint64EXT;
  type GLint64EXT (line 298) | typedef signed long long GLint64EXT;
  type GLuint64EXT (line 299) | typedef unsigned long long GLuint64EXT;
  type GLint64EXT (line 304) | typedef int64_t GLint64EXT;
  type GLuint64EXT (line 305) | typedef uint64_t GLuint64EXT;
  type GLint64EXT (line 307) | typedef GLint64EXT  GLint64;
  type GLuint64EXT (line 308) | typedef GLuint64EXT GLuint64;
  type __GLsync (line 309) | struct __GLsync
  type GLchar (line 311) | typedef char GLchar;
  type GLintptr (line 1679) | typedef ptrdiff_t GLintptr;
  type GLsizeiptr (line 1680) | typedef ptrdiff_t GLsizeiptr;
  type GLubyte (line 2181) | typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGIPROC) (GLenum name, ...
  type GLfixed (line 3819) | typedef int GLfixed;
  type _cl_context (line 4013) | struct _cl_context
  type _cl_event (line 4014) | struct _cl_event
  type const (line 5980) | typedef GLuint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint p...
  type const (line 5981) | typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint...
  type const (line 5982) | typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (G...
  type GLcharARB (line 6585) | typedef char GLcharARB;
  type GLhandleARB (line 6586) | typedef unsigned int GLhandleARB;
  type const (line 6739) | typedef GLuint (GLAPIENTRY * PFNGLGETSUBROUTINEINDEXPROC) (GLuint progra...
  type const (line 6740) | typedef GLint (GLAPIENTRY * PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLui...
  type GLchar (line 6817) | typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDSTRINGARBPROC) (GLint namele...
  type GLintptrARB (line 7980) | typedef ptrdiff_t GLintptrARB;
  type GLsizeiptrARB (line 7981) | typedef ptrdiff_t GLsizeiptrARB;
  type GLenum (line 8895) | typedef GLuint (GLAPIENTRY * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size,...
  type const (line 9226) | typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONINDEXEXTPROC)...
  type GLuint (line 12476) | typedef GLboolean (GLAPIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsize...
  type GLhalf (line 15291) | typedef unsigned short GLhalf;
  type const (line 15800) | typedef GLenum (GLAPIENTRY * PFNGLPATHGLYPHINDEXARRAYNVPROC) (GLuint fir...
  type GLbitfield (line 15801) | typedef GLenum (GLAPIENTRY * PFNGLPATHGLYPHINDEXRANGENVPROC) (GLenum fon...
  type GLintptr (line 16883) | typedef GLintptr GLvdpauSurfaceNV;
  type const (line 16890) | typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTEROUTPUTSURFACENV...
  type const (line 16891) | typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTERVIDEOSURFACENVP...
  type GLuint (line 17145) | typedef GLboolean (GLAPIENTRY * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei...
  type GLclampx (line 17843) | typedef int GLclampx;
  type GLchar (line 17975) | typedef const GLchar* (GLAPIENTRY * PFNGLERRORSTRINGREGALPROC) (GLenum e...
  type GLuint (line 19380) | typedef GLboolean (GLAPIENTRY * PFNGLAREVERTEXARRAYSRESIDENTSGIXPROC) (G...

FILE: lib/glew/glxew.h
  type XID (line 137) | typedef XID GLXDrawable;
  type XID (line 138) | typedef XID GLXPixmap;
  type __glXContextRec (line 140) | struct __glXContextRec
  type __GLXcontextRec (line 142) | struct __GLXcontextRec
  type GLXVideoDeviceNV (line 145) | typedef unsigned int GLXVideoDeviceNV;
  type Display (line 191) | typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
  type XID (line 261) | typedef XID GLXFBConfigID;
  type XID (line 262) | typedef XID GLXPbuffer;
  type XID (line 263) | typedef XID GLXWindow;
  type __GLXFBConfigRec (line 264) | struct __GLXFBConfigRec
  type GLXPbufferClobberEvent (line 266) | typedef struct {
  type GLXEvent (line 279) | typedef union __GLXEvent {
  type GLXFBConfig (line 284) | typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int sc...
  type GLXContext (line 285) | typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBC...
  type GLXPbuffer (line 286) | typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConf...
  type GLXPixmap (line 287) | typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig...
  type GLXWindow (line 288) | typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig...
  type GLXDrawable (line 292) | typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
  type GLXFBConfig (line 294) | typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int scre...
  type XVisualInfo (line 296) | typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy,...
  type Bool (line 297) | typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDra...
  type GLXContext (line 367) | typedef GLXContext ( * PFNGLXCREATEASSOCIATEDCONTEXTAMDPROC) (unsigned i...
  type GLXContext (line 368) | typedef GLXContext ( * PFNGLXCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (uns...
  type Bool (line 369) | typedef Bool ( * PFNGLXDELETEASSOCIATEDCONTEXTAMDPROC) (GLXContext ctx);
  type GLXContext (line 371) | typedef GLXContext ( * PFNGLXGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
  type Bool (line 374) | typedef Bool ( * PFNGLXMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (GLXContext ...
  type GLXContext (line 410) | typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy,...
  type XID (line 662) | typedef XID GLXContextID;
  type GLXContextID (line 665) | typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext co...
  type GLXContext (line 666) | typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXCon...
  type GLXPixmap (line 869) | typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVis...
  type Bool (line 895) | typedef Bool ( * PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC) (int attribu...
  type Bool (line 897) | typedef Bool ( * PFNGLXQUERYRENDERERINTEGERMESAPROC) (Display* dpy, int ...
  type Bool (line 914) | typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawabl...
  type GLboolean (line 930) | typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
  type Bool (line 986) | typedef Bool ( * PFNGLXDELAYBEFORESWAPNVPROC) (Display* dpy, GLXDrawable...
  type Bool (line 1050) | typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint grou...
  type Bool (line 1051) | typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display* dpy, GLXDrawable d...
  type Bool (line 1052) | typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display* dpy, int screen,...
  type Bool (line 1053) | typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display* dpy, int scre...
  type Bool (line 1054) | typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable ...
  type Bool (line 1055) | typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen);
  type XID (line 1092) | typedef XID GLXVideoCaptureDeviceNV;
  type GLXVideoCaptureDeviceNV (line 1095) | typedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICES...
  type Bool (line 1163) | typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable dra...
  type Bool (line 1164) | typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable ...
  type Bool (line 1166) | typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable dra...
  type Bool (line 1167) | typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable dra...
  type XID (line 1240) | typedef XID GLXFBConfigIDSGIX;
  type __GLXFBConfigRec (line 1241) | struct __GLXFBConfigRec
  type GLXFBConfigSGIX (line 1243) | typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy...
  type GLXContext (line 1244) | typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* ...
  type GLXPixmap (line 1245) | typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display*...
  type GLXFBConfigSGIX (line 1247) | typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Displa...
  type XVisualInfo (line 1248) | typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *...
  type GLXHyperpipeNetworkSGIX (line 1277) | typedef struct {
  type GLXPipeRectLimits (line 1281) | typedef struct {
  type GLXHyperpipeConfigSGIX (line 1288) | typedef struct {
  type GLXPipeRect (line 1294) | typedef struct {
  type GLXHyperpipeConfigSGIX (line 1312) | typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC)...
  type GLXHyperpipeNetworkSGIX (line 1313) | typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPRO...
  type XID (line 1359) | typedef XID GLXPbufferSGIX;
  type GLXBufferClobberEventSGIX (line 1360) | typedef struct { int type; unsigned long serial; Bool send_event; Displa...
  type GLXPbuffer (line 1362) | typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GL...
  type Bool (line 1384) | typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int ...
  type GLXDrawable (line 1459) | typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
  type Bool (line 1460) | typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawabl...
  type Status (line 1502) | typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Wind...

FILE: lib/glew/wglew.h
  type const (line 140) | typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UI...
  type const (line 209) | typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGL...
  type const (line 323) | typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int ...
  type const (line 394) | typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const i...
  type const (line 395) | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, in...
  type const (line 396) | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, in...
  type const (line 649) | typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int ...
  type const (line 716) | typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const i...
  type const (line 774) | typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC,...
  type USHORT (line 793) | typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntrie...
  type const (line 794) | typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, i...
  type GPU_DEVICE (line 1004) | typedef struct _GPU_DEVICE {

FILE: lib/lb_xplane/command.h
  function class (line 8) | class CommandrefError : public std::exception {
  function class (line 23) | class Commandref {
  function commandBegin (line 29) | void commandBegin() const { XPLMCommandBegin(ref); }
  function commandOnce (line 38) | void commandOnce() const {
  function class (line 49) | class CommandHeld {

FILE: lib/lb_xplane/command_provider.h
  function class (line 8) | class CommandProvider {

FILE: lib/lb_xplane/dataref.h
  function class (line 13) | class DatarefError : public std::exception {
  function class (line 23) | class DatarefMissingError : public DatarefError {
  function class (line 29) | class DatarefTypeError : public DatarefError {
  function class (line 35) | class DatarefAssignValueError : public DatarefError {
  function Type (line 89) | Type get() const;
  function checkType (line 132) | bool>>::checkType() {
  function checkType (line 144) | float>>::checkType() {
  function checkType (line 156) | inline bool Dataref<std::string>::checkType() {
  function getElement (line 188) | bool>>::getElement(int index) const {
  function getElement (line 195) | int>>::getElement(int index) const {
  function getElement (line 202) | float>>::getElement(int index) const {
  function set (line 269) | float>::set(float val) const {
  function set (line 274) | int>::set(int val) const {
  function set (line 279) | bool>::set(bool val) const {
  function class (line 324) | class DatarefFloatConvertable {

FILE: lib/lb_xplane/dataref_provider.h
  function read_int (line 23) | inline static int read_int(void * refcon) {
  function write_int (line 28) | inline static void write_int(void * refcon, int value) {
  function read_bool (line 57) | inline static int read_bool(void * refcon) {
  function write_bool (line 62) | inline static void write_bool(void * refcon, int value) {
  function read_string (line 91) | inline static int read_string(void * refcon, void * outValue, int inOffs...
  function write_string (line 110) | inline static void write_string(void * refcon, void * inValue, int /* in...
  function read_float (line 141) | inline static float read_float(void * refcon) {
  function write_float (line 146) | inline static void write_float(void * refcon, float value) {

FILE: lib/lb_xplane/flight_loop.h
  function callback_handler (line 16) | static float callback_handler(float inElapsedSinceLastCall, float inElap...
  function schedule (line 37) | void schedule(float time) {

FILE: lib/lb_xplane/logging.h
  function class (line 20) | class XPLogAggregator {
  function class (line 40) | class XPLoggingBuffer : public std::streambuf {
  function class (line 68) | class XPLogger : public std::ostream {

FILE: lib/lb_xplane/menus.h
  function class (line 10) | class MenuItem {
  function setChecked (line 19) | void setChecked(bool checked) {
  function setEnabled (line 23) | void setEnabled(bool enabled) {
  function setName (line 27) | void setName(const std::string & name) {
  function class (line 32) | class Menu {

FILE: lib/lb_xplane_ui/container/container.cpp
  function XPLMCursorStatus (line 38) | XPLMCursorStatus WidgetsContainer::handleCursor(Point point, bool mouse_...

FILE: lib/lb_xplane_ui/container/container.h
  function class (line 13) | class WidgetContainer : public LayoutObject {
  function class (line 18) | class WidgetsContainer : public WidgetContainer {
  function virtual (line 105) | virtual XPLMCursorStatus handleCursor(Point, bool /* mouse_inside */) ov...
  function widget_iterator_type (line 113) | widget_iterator_type end() {
  function widget_reverse_iterator_type (line 120) | widget_reverse_iterator_type rbegin() {
  function widget_reverse_iterator_type (line 126) | widget_reverse_iterator_type rend() {

FILE: lib/lb_xplane_ui/container/scroll.cpp
  function multMatrixVec4f (line 59) | static std::array<GLfloat, 4> multMatrixVec4f(const std::array<GLfloat, ...
  function modelview_to_window_coords (line 69) | static std::array<int, 2> modelview_to_window_coords(const std::array<GL...

FILE: lib/lb_xplane_ui/container/scroll.h
  function class (line 14) | class ScrollContainer : public WidgetContainer {

FILE: lib/lb_xplane_ui/container/single_axis_layout.cpp
  type LayoutGetFunctor (line 8) | struct LayoutGetFunctor {

FILE: lib/lb_xplane_ui/container/single_axis_layout.h
  function class (line 12) | class SingleAxisLayoutContainer : public WidgetsContainer {

FILE: lib/lb_xplane_ui/draw_basic.cpp
  function drawRect (line 9) | void drawRect(Rectf bounds) {
  function drawRoundRect (line 22) | void drawRoundRect(Rectf bounds) {
  function drawString (line 45) | void drawString(std::array<float, 3> color, float size, Point location, ...
  function measureString (line 56) | float measureString(float size, const std::string & text) {

FILE: lib/lb_xplane_ui/geometry.h
  type Point (line 6) | struct Point {
  function operator (line 19) | bool operator!=(const Point & other) const {
  type Size (line 24) | struct Size {
  function overlaps (line 39) | [[nodiscard]] bool overlaps(const RectGeneric & other) const {
  function contains (line 47) | [[nodiscard]] bool contains(const Point & pt) const {
  function translate (line 51) | void translate(int x, int y) {
  function RectGeneric (line 58) | RectGeneric translated(int x, int y) const {
  function Size (line 64) | Size size() const {
  type Rectf (line 85) | struct Rectf

FILE: lib/lb_xplane_ui/gl_utils.cpp
  function user_error_fn (line 12) | void user_error_fn(png_structp /*png_ptr*/, png_const_charp error_msg) {
  function user_warning_fn (line 16) | void user_warning_fn(png_structp /*png_ptr*/, png_const_charp warning_ms...
  function png_texture_load (line 20) | bool png_texture_load(std::ostream & log, const lb::filesystem::path & f...

FILE: lib/lb_xplane_ui/layout_object.h
  function class (line 10) | class LayoutObject {

FILE: lib/lb_xplane_ui/widgets/button.cpp
  function XPLMCursorStatus (line 123) | XPLMCursorStatus Widget11Button::handleCursor(Point /* point */, bool mo...

FILE: lib/lb_xplane_ui/widgets/button.h
  function class (line 12) | class Widget11Button : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/horizontal_bar.h
  function class (line 5) | class Widget11HorizontalBar : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/image.h
  function class (line 7) | class Widget11Image : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/progress.h
  function class (line 5) | class Widget11Progress : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/scroll_bar.h
  function class (line 8) | class VerticalScrollBar : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/spacer.h
  function class (line 3) | class Widget11Spacer : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/text.h
  function class (line 9) | class Widget11Text : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/text_field.h
  function class (line 8) | class Widget11TextField : public Widget11 {

FILE: lib/lb_xplane_ui/widgets/widget.h
  function class (line 7) | class Widget11 : public LayoutObject {

FILE: lib/lb_xplane_ui/window11.cpp
  function XPLMCursorStatus (line 315) | XPLMCursorStatus Window11Base::handleCursor(Point point) {

FILE: lib/lb_xplane_ui/window11.h
  function class (line 29) | class Window11Base {

FILE: lib/mio/include/mio.hpp
  type mio (line 54) | namespace mio {
    type access_mode (line 60) | enum class access_mode
    function page_size (line 73) | inline size_t page_size()
    function make_offset_page_aligned (line 93) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    type basic_mmap (line 136) | struct basic_mmap
      method basic_mmap (line 187) | basic_mmap() = default;
      method basic_mmap (line 196) | basic_mmap(const String& path, const size_type offset = 0, const siz...
      method basic_mmap (line 208) | basic_mmap(const handle_type handle, const size_type offset = 0, con...
      method basic_mmap (line 220) | basic_mmap(const basic_mmap&) = delete;
      method basic_mmap (line 222) | basic_mmap& operator=(const basic_mmap&) = delete;
      method handle_type (line 236) | handle_type file_handle() const noexcept { return file_handle_; }
      method is_open (line 240) | bool is_open() const noexcept { return file_handle_ != invalid_handl...
      method empty (line 247) | bool empty() const noexcept { return length() == 0; }
      method size_type (line 258) | size_type size() const noexcept { return length(); }
      method size_type (line 259) | size_type length() const noexcept { return length_; }
      method size_type (line 260) | size_type mapped_length() const noexcept { return mapped_length_; }
      method size_type (line 263) | size_type mapping_offset() const noexcept
      method pointer (line 275) | pointer data() noexcept { return data_; }
      method const_pointer (line 276) | const_pointer data() const noexcept { return data_; }
      method iterator (line 285) | iterator begin() noexcept { return data(); }
      method const_iterator (line 286) | const_iterator begin() const noexcept { return data(); }
      method const_iterator (line 287) | const_iterator cbegin() const noexcept { return data(); }
      method iterator (line 296) | iterator end() noexcept { return data() + length(); }
      method const_iterator (line 297) | const_iterator end() const noexcept { return data() + length(); }
      method const_iterator (line 298) | const_iterator cend() const noexcept { return data() + length(); }
      method reverse_iterator (line 308) | reverse_iterator rbegin() noexcept { return reverse_iterator(end()); }
      method const_reverse_iterator (line 309) | const_reverse_iterator rbegin() const noexcept
      method const_reverse_iterator (line 311) | const_reverse_iterator crbegin() const noexcept
      method reverse_iterator (line 321) | reverse_iterator rend() noexcept { return reverse_iterator(begin()); }
      method const_reverse_iterator (line 322) | const_reverse_iterator rend() const noexcept
      method const_reverse_iterator (line 324) | const_reverse_iterator crend() const noexcept
      method reference (line 332) | reference operator[](const size_type i) noexcept { return data_[i]; }
      method const_reference (line 333) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 372) | void map(const String& path, std::error_code& error)
      method map (line 410) | void map(const handle_type handle, std::error_code& error)
      method pointer (line 442) | pointer get_mapping_start() noexcept
      method const_pointer (line 447) | const_pointer get_mapping_start() const noexcept
    function MMap (line 519) | MMap make_mmap(const MappingToken& token,
    function mmap_source (line 535) | mmap_source make_mmap_source(const MappingToken& token, mmap_source::s...
    function mmap_source (line 542) | mmap_source make_mmap_source(const MappingToken& token, std::error_cod...
    function mmap_sink (line 555) | mmap_sink make_mmap_sink(const MappingToken& token, mmap_sink::size_ty...
    function mmap_sink (line 562) | mmap_sink make_mmap_sink(const MappingToken& token, std::error_code& e...
    type detail (line 624) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type detail (line 780) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type access_mode (line 1301) | enum class access_mode
    function page_size (line 1314) | inline size_t page_size()
    function make_offset_page_aligned (line 1334) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    class basic_shared_mmap (line 1385) | class basic_shared_mmap
      method basic_shared_mmap (line 1406) | basic_shared_mmap() = default;
      method basic_shared_mmap (line 1407) | basic_shared_mmap(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1408) | basic_shared_mmap& operator=(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1409) | basic_shared_mmap(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1410) | basic_shared_mmap& operator=(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1413) | basic_shared_mmap(mmap_type&& mmap)
      method basic_shared_mmap (line 1418) | basic_shared_mmap& operator=(mmap_type&& mmap)
      method basic_shared_mmap (line 1425) | basic_shared_mmap(std::shared_ptr<mmap_type> mmap) : pimpl_(std::mov...
      method basic_shared_mmap (line 1428) | basic_shared_mmap& operator=(std::shared_ptr<mmap_type> mmap)
      method basic_shared_mmap (line 1441) | basic_shared_mmap(const String& path, const size_type offset = 0, co...
      method basic_shared_mmap (line 1453) | basic_shared_mmap(const handle_type handle, const size_type offset =...
      method get_shared_ptr (line 1469) | std::shared_ptr<mmap_type> get_shared_ptr() { return pimpl_; }
      method handle_type (line 1476) | handle_type file_handle() const noexcept
      method handle_type (line 1481) | handle_type mapping_handle() const noexcept
      method is_open (line 1487) | bool is_open() const noexcept { return pimpl_ && pimpl_->is_open(); }
      method empty (line 1494) | bool empty() const noexcept { return !pimpl_ || pimpl_->empty(); }
      method size_type (line 1502) | size_type size() const noexcept { return pimpl_ ? pimpl_->length() :...
      method size_type (line 1503) | size_type length() const noexcept { return pimpl_ ? pimpl_->length()...
      method size_type (line 1504) | size_type mapped_length() const noexcept
      method pointer (line 1516) | pointer data() noexcept { return pimpl_->data(); }
      method const_pointer (line 1517) | const_pointer data() const noexcept { return pimpl_ ? pimpl_->data()...
      method iterator (line 1523) | iterator begin() noexcept { return pimpl_->begin(); }
      method const_iterator (line 1524) | const_iterator begin() const noexcept { return pimpl_->begin(); }
      method const_iterator (line 1525) | const_iterator cbegin() const noexcept { return pimpl_->cbegin(); }
      method iterator (line 1534) | iterator end() noexcept { return pimpl_->end(); }
      method const_iterator (line 1535) | const_iterator end() const noexcept { return pimpl_->end(); }
      method const_iterator (line 1536) | const_iterator cend() const noexcept { return pimpl_->cend(); }
      method reverse_iterator (line 1546) | reverse_iterator rbegin() noexcept { return pimpl_->rbegin(); }
      method const_reverse_iterator (line 1547) | const_reverse_iterator rbegin() const noexcept { return pimpl_->rbeg...
      method const_reverse_iterator (line 1548) | const_reverse_iterator crbegin() const noexcept { return pimpl_->crb...
      method reverse_iterator (line 1557) | reverse_iterator rend() noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1558) | const_reverse_iterator rend() const noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1559) | const_reverse_iterator crend() const noexcept { return pimpl_->crend...
      method reference (line 1566) | reference operator[](const size_type i) noexcept { return (*pimpl_)[...
      method const_reference (line 1567) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 1590) | void map(const String& path, const size_type offset,
      method map (line 1609) | void map(const String& path, std::error_code& error)
      method map (line 1633) | void map(const handle_type handle, const size_type offset,
      method map (line 1650) | void map(const handle_type handle, std::error_code& error)
      method unmap (line 1664) | void unmap() { if(pimpl_) pimpl_->unmap(); }
      method swap (line 1666) | void swap(basic_shared_mmap& other) { pimpl_.swap(other.pimpl_); }
      method sync (line 1672) | void sync(std::error_code& error) { if(pimpl_) pimpl_->sync(error); }
      method map_impl (line 1708) | void map_impl(const MappingToken& token, const size_type offset,
  type mio (line 119) | namespace mio {
    type access_mode (line 60) | enum class access_mode
    function page_size (line 73) | inline size_t page_size()
    function make_offset_page_aligned (line 93) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    type basic_mmap (line 136) | struct basic_mmap
      method basic_mmap (line 187) | basic_mmap() = default;
      method basic_mmap (line 196) | basic_mmap(const String& path, const size_type offset = 0, const siz...
      method basic_mmap (line 208) | basic_mmap(const handle_type handle, const size_type offset = 0, con...
      method basic_mmap (line 220) | basic_mmap(const basic_mmap&) = delete;
      method basic_mmap (line 222) | basic_mmap& operator=(const basic_mmap&) = delete;
      method handle_type (line 236) | handle_type file_handle() const noexcept { return file_handle_; }
      method is_open (line 240) | bool is_open() const noexcept { return file_handle_ != invalid_handl...
      method empty (line 247) | bool empty() const noexcept { return length() == 0; }
      method size_type (line 258) | size_type size() const noexcept { return length(); }
      method size_type (line 259) | size_type length() const noexcept { return length_; }
      method size_type (line 260) | size_type mapped_length() const noexcept { return mapped_length_; }
      method size_type (line 263) | size_type mapping_offset() const noexcept
      method pointer (line 275) | pointer data() noexcept { return data_; }
      method const_pointer (line 276) | const_pointer data() const noexcept { return data_; }
      method iterator (line 285) | iterator begin() noexcept { return data(); }
      method const_iterator (line 286) | const_iterator begin() const noexcept { return data(); }
      method const_iterator (line 287) | const_iterator cbegin() const noexcept { return data(); }
      method iterator (line 296) | iterator end() noexcept { return data() + length(); }
      method const_iterator (line 297) | const_iterator end() const noexcept { return data() + length(); }
      method const_iterator (line 298) | const_iterator cend() const noexcept { return data() + length(); }
      method reverse_iterator (line 308) | reverse_iterator rbegin() noexcept { return reverse_iterator(end()); }
      method const_reverse_iterator (line 309) | const_reverse_iterator rbegin() const noexcept
      method const_reverse_iterator (line 311) | const_reverse_iterator crbegin() const noexcept
      method reverse_iterator (line 321) | reverse_iterator rend() noexcept { return reverse_iterator(begin()); }
      method const_reverse_iterator (line 322) | const_reverse_iterator rend() const noexcept
      method const_reverse_iterator (line 324) | const_reverse_iterator crend() const noexcept
      method reference (line 332) | reference operator[](const size_type i) noexcept { return data_[i]; }
      method const_reference (line 333) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 372) | void map(const String& path, std::error_code& error)
      method map (line 410) | void map(const handle_type handle, std::error_code& error)
      method pointer (line 442) | pointer get_mapping_start() noexcept
      method const_pointer (line 447) | const_pointer get_mapping_start() const noexcept
    function MMap (line 519) | MMap make_mmap(const MappingToken& token,
    function mmap_source (line 535) | mmap_source make_mmap_source(const MappingToken& token, mmap_source::s...
    function mmap_source (line 542) | mmap_source make_mmap_source(const MappingToken& token, std::error_cod...
    function mmap_sink (line 555) | mmap_sink make_mmap_sink(const MappingToken& token, mmap_sink::size_ty...
    function mmap_sink (line 562) | mmap_sink make_mmap_sink(const MappingToken& token, std::error_code& e...
    type detail (line 624) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type detail (line 780) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type access_mode (line 1301) | enum class access_mode
    function page_size (line 1314) | inline size_t page_size()
    function make_offset_page_aligned (line 1334) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    class basic_shared_mmap (line 1385) | class basic_shared_mmap
      method basic_shared_mmap (line 1406) | basic_shared_mmap() = default;
      method basic_shared_mmap (line 1407) | basic_shared_mmap(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1408) | basic_shared_mmap& operator=(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1409) | basic_shared_mmap(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1410) | basic_shared_mmap& operator=(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1413) | basic_shared_mmap(mmap_type&& mmap)
      method basic_shared_mmap (line 1418) | basic_shared_mmap& operator=(mmap_type&& mmap)
      method basic_shared_mmap (line 1425) | basic_shared_mmap(std::shared_ptr<mmap_type> mmap) : pimpl_(std::mov...
      method basic_shared_mmap (line 1428) | basic_shared_mmap& operator=(std::shared_ptr<mmap_type> mmap)
      method basic_shared_mmap (line 1441) | basic_shared_mmap(const String& path, const size_type offset = 0, co...
      method basic_shared_mmap (line 1453) | basic_shared_mmap(const handle_type handle, const size_type offset =...
      method get_shared_ptr (line 1469) | std::shared_ptr<mmap_type> get_shared_ptr() { return pimpl_; }
      method handle_type (line 1476) | handle_type file_handle() const noexcept
      method handle_type (line 1481) | handle_type mapping_handle() const noexcept
      method is_open (line 1487) | bool is_open() const noexcept { return pimpl_ && pimpl_->is_open(); }
      method empty (line 1494) | bool empty() const noexcept { return !pimpl_ || pimpl_->empty(); }
      method size_type (line 1502) | size_type size() const noexcept { return pimpl_ ? pimpl_->length() :...
      method size_type (line 1503) | size_type length() const noexcept { return pimpl_ ? pimpl_->length()...
      method size_type (line 1504) | size_type mapped_length() const noexcept
      method pointer (line 1516) | pointer data() noexcept { return pimpl_->data(); }
      method const_pointer (line 1517) | const_pointer data() const noexcept { return pimpl_ ? pimpl_->data()...
      method iterator (line 1523) | iterator begin() noexcept { return pimpl_->begin(); }
      method const_iterator (line 1524) | const_iterator begin() const noexcept { return pimpl_->begin(); }
      method const_iterator (line 1525) | const_iterator cbegin() const noexcept { return pimpl_->cbegin(); }
      method iterator (line 1534) | iterator end() noexcept { return pimpl_->end(); }
      method const_iterator (line 1535) | const_iterator end() const noexcept { return pimpl_->end(); }
      method const_iterator (line 1536) | const_iterator cend() const noexcept { return pimpl_->cend(); }
      method reverse_iterator (line 1546) | reverse_iterator rbegin() noexcept { return pimpl_->rbegin(); }
      method const_reverse_iterator (line 1547) | const_reverse_iterator rbegin() const noexcept { return pimpl_->rbeg...
      method const_reverse_iterator (line 1548) | const_reverse_iterator crbegin() const noexcept { return pimpl_->crb...
      method reverse_iterator (line 1557) | reverse_iterator rend() noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1558) | const_reverse_iterator rend() const noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1559) | const_reverse_iterator crend() const noexcept { return pimpl_->crend...
      method reference (line 1566) | reference operator[](const size_type i) noexcept { return (*pimpl_)[...
      method const_reference (line 1567) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 1590) | void map(const String& path, const size_type offset,
      method map (line 1609) | void map(const String& path, std::error_code& error)
      method map (line 1633) | void map(const handle_type handle, const size_type offset,
      method map (line 1650) | void map(const handle_type handle, std::error_code& error)
      method unmap (line 1664) | void unmap() { if(pimpl_) pimpl_->unmap(); }
      method swap (line 1666) | void swap(basic_shared_mmap& other) { pimpl_.swap(other.pimpl_); }
      method sync (line 1672) | void sync(std::error_code& error) { if(pimpl_) pimpl_->sync(error); }
      method map_impl (line 1708) | void map_impl(const MappingToken& token, const size_type offset,
  type mio (line 623) | namespace mio {
    type access_mode (line 60) | enum class access_mode
    function page_size (line 73) | inline size_t page_size()
    function make_offset_page_aligned (line 93) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    type basic_mmap (line 136) | struct basic_mmap
      method basic_mmap (line 187) | basic_mmap() = default;
      method basic_mmap (line 196) | basic_mmap(const String& path, const size_type offset = 0, const siz...
      method basic_mmap (line 208) | basic_mmap(const handle_type handle, const size_type offset = 0, con...
      method basic_mmap (line 220) | basic_mmap(const basic_mmap&) = delete;
      method basic_mmap (line 222) | basic_mmap& operator=(const basic_mmap&) = delete;
      method handle_type (line 236) | handle_type file_handle() const noexcept { return file_handle_; }
      method is_open (line 240) | bool is_open() const noexcept { return file_handle_ != invalid_handl...
      method empty (line 247) | bool empty() const noexcept { return length() == 0; }
      method size_type (line 258) | size_type size() const noexcept { return length(); }
      method size_type (line 259) | size_type length() const noexcept { return length_; }
      method size_type (line 260) | size_type mapped_length() const noexcept { return mapped_length_; }
      method size_type (line 263) | size_type mapping_offset() const noexcept
      method pointer (line 275) | pointer data() noexcept { return data_; }
      method const_pointer (line 276) | const_pointer data() const noexcept { return data_; }
      method iterator (line 285) | iterator begin() noexcept { return data(); }
      method const_iterator (line 286) | const_iterator begin() const noexcept { return data(); }
      method const_iterator (line 287) | const_iterator cbegin() const noexcept { return data(); }
      method iterator (line 296) | iterator end() noexcept { return data() + length(); }
      method const_iterator (line 297) | const_iterator end() const noexcept { return data() + length(); }
      method const_iterator (line 298) | const_iterator cend() const noexcept { return data() + length(); }
      method reverse_iterator (line 308) | reverse_iterator rbegin() noexcept { return reverse_iterator(end()); }
      method const_reverse_iterator (line 309) | const_reverse_iterator rbegin() const noexcept
      method const_reverse_iterator (line 311) | const_reverse_iterator crbegin() const noexcept
      method reverse_iterator (line 321) | reverse_iterator rend() noexcept { return reverse_iterator(begin()); }
      method const_reverse_iterator (line 322) | const_reverse_iterator rend() const noexcept
      method const_reverse_iterator (line 324) | const_reverse_iterator crend() const noexcept
      method reference (line 332) | reference operator[](const size_type i) noexcept { return data_[i]; }
      method const_reference (line 333) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 372) | void map(const String& path, std::error_code& error)
      method map (line 410) | void map(const handle_type handle, std::error_code& error)
      method pointer (line 442) | pointer get_mapping_start() noexcept
      method const_pointer (line 447) | const_pointer get_mapping_start() const noexcept
    function MMap (line 519) | MMap make_mmap(const MappingToken& token,
    function mmap_source (line 535) | mmap_source make_mmap_source(const MappingToken& token, mmap_source::s...
    function mmap_source (line 542) | mmap_source make_mmap_source(const MappingToken& token, std::error_cod...
    function mmap_sink (line 555) | mmap_sink make_mmap_sink(const MappingToken& token, mmap_sink::size_ty...
    function mmap_sink (line 562) | mmap_sink make_mmap_sink(const MappingToken& token, std::error_code& e...
    type detail (line 624) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type detail (line 780) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type access_mode (line 1301) | enum class access_mode
    function page_size (line 1314) | inline size_t page_size()
    function make_offset_page_aligned (line 1334) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    class basic_shared_mmap (line 1385) | class basic_shared_mmap
      method basic_shared_mmap (line 1406) | basic_shared_mmap() = default;
      method basic_shared_mmap (line 1407) | basic_shared_mmap(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1408) | basic_shared_mmap& operator=(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1409) | basic_shared_mmap(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1410) | basic_shared_mmap& operator=(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1413) | basic_shared_mmap(mmap_type&& mmap)
      method basic_shared_mmap (line 1418) | basic_shared_mmap& operator=(mmap_type&& mmap)
      method basic_shared_mmap (line 1425) | basic_shared_mmap(std::shared_ptr<mmap_type> mmap) : pimpl_(std::mov...
      method basic_shared_mmap (line 1428) | basic_shared_mmap& operator=(std::shared_ptr<mmap_type> mmap)
      method basic_shared_mmap (line 1441) | basic_shared_mmap(const String& path, const size_type offset = 0, co...
      method basic_shared_mmap (line 1453) | basic_shared_mmap(const handle_type handle, const size_type offset =...
      method get_shared_ptr (line 1469) | std::shared_ptr<mmap_type> get_shared_ptr() { return pimpl_; }
      method handle_type (line 1476) | handle_type file_handle() const noexcept
      method handle_type (line 1481) | handle_type mapping_handle() const noexcept
      method is_open (line 1487) | bool is_open() const noexcept { return pimpl_ && pimpl_->is_open(); }
      method empty (line 1494) | bool empty() const noexcept { return !pimpl_ || pimpl_->empty(); }
      method size_type (line 1502) | size_type size() const noexcept { return pimpl_ ? pimpl_->length() :...
      method size_type (line 1503) | size_type length() const noexcept { return pimpl_ ? pimpl_->length()...
      method size_type (line 1504) | size_type mapped_length() const noexcept
      method pointer (line 1516) | pointer data() noexcept { return pimpl_->data(); }
      method const_pointer (line 1517) | const_pointer data() const noexcept { return pimpl_ ? pimpl_->data()...
      method iterator (line 1523) | iterator begin() noexcept { return pimpl_->begin(); }
      method const_iterator (line 1524) | const_iterator begin() const noexcept { return pimpl_->begin(); }
      method const_iterator (line 1525) | const_iterator cbegin() const noexcept { return pimpl_->cbegin(); }
      method iterator (line 1534) | iterator end() noexcept { return pimpl_->end(); }
      method const_iterator (line 1535) | const_iterator end() const noexcept { return pimpl_->end(); }
      method const_iterator (line 1536) | const_iterator cend() const noexcept { return pimpl_->cend(); }
      method reverse_iterator (line 1546) | reverse_iterator rbegin() noexcept { return pimpl_->rbegin(); }
      method const_reverse_iterator (line 1547) | const_reverse_iterator rbegin() const noexcept { return pimpl_->rbeg...
      method const_reverse_iterator (line 1548) | const_reverse_iterator crbegin() const noexcept { return pimpl_->crb...
      method reverse_iterator (line 1557) | reverse_iterator rend() noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1558) | const_reverse_iterator rend() const noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1559) | const_reverse_iterator crend() const noexcept { return pimpl_->crend...
      method reference (line 1566) | reference operator[](const size_type i) noexcept { return (*pimpl_)[...
      method const_reference (line 1567) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 1590) | void map(const String& path, const size_type offset,
      method map (line 1609) | void map(const String& path, std::error_code& error)
      method map (line 1633) | void map(const handle_type handle, const size_type offset,
      method map (line 1650) | void map(const handle_type handle, std::error_code& error)
      method unmap (line 1664) | void unmap() { if(pimpl_) pimpl_->unmap(); }
      method swap (line 1666) | void swap(basic_shared_mmap& other) { pimpl_.swap(other.pimpl_); }
      method sync (line 1672) | void sync(std::error_code& error) { if(pimpl_) pimpl_->sync(error); }
      method map_impl (line 1708) | void map_impl(const MappingToken& token, const size_type offset,
  type mio (line 779) | namespace mio {
    type access_mode (line 60) | enum class access_mode
    function page_size (line 73) | inline size_t page_size()
    function make_offset_page_aligned (line 93) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    type basic_mmap (line 136) | struct basic_mmap
      method basic_mmap (line 187) | basic_mmap() = default;
      method basic_mmap (line 196) | basic_mmap(const String& path, const size_type offset = 0, const siz...
      method basic_mmap (line 208) | basic_mmap(const handle_type handle, const size_type offset = 0, con...
      method basic_mmap (line 220) | basic_mmap(const basic_mmap&) = delete;
      method basic_mmap (line 222) | basic_mmap& operator=(const basic_mmap&) = delete;
      method handle_type (line 236) | handle_type file_handle() const noexcept { return file_handle_; }
      method is_open (line 240) | bool is_open() const noexcept { return file_handle_ != invalid_handl...
      method empty (line 247) | bool empty() const noexcept { return length() == 0; }
      method size_type (line 258) | size_type size() const noexcept { return length(); }
      method size_type (line 259) | size_type length() const noexcept { return length_; }
      method size_type (line 260) | size_type mapped_length() const noexcept { return mapped_length_; }
      method size_type (line 263) | size_type mapping_offset() const noexcept
      method pointer (line 275) | pointer data() noexcept { return data_; }
      method const_pointer (line 276) | const_pointer data() const noexcept { return data_; }
      method iterator (line 285) | iterator begin() noexcept { return data(); }
      method const_iterator (line 286) | const_iterator begin() const noexcept { return data(); }
      method const_iterator (line 287) | const_iterator cbegin() const noexcept { return data(); }
      method iterator (line 296) | iterator end() noexcept { return data() + length(); }
      method const_iterator (line 297) | const_iterator end() const noexcept { return data() + length(); }
      method const_iterator (line 298) | const_iterator cend() const noexcept { return data() + length(); }
      method reverse_iterator (line 308) | reverse_iterator rbegin() noexcept { return reverse_iterator(end()); }
      method const_reverse_iterator (line 309) | const_reverse_iterator rbegin() const noexcept
      method const_reverse_iterator (line 311) | const_reverse_iterator crbegin() const noexcept
      method reverse_iterator (line 321) | reverse_iterator rend() noexcept { return reverse_iterator(begin()); }
      method const_reverse_iterator (line 322) | const_reverse_iterator rend() const noexcept
      method const_reverse_iterator (line 324) | const_reverse_iterator crend() const noexcept
      method reference (line 332) | reference operator[](const size_type i) noexcept { return data_[i]; }
      method const_reference (line 333) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 372) | void map(const String& path, std::error_code& error)
      method map (line 410) | void map(const handle_type handle, std::error_code& error)
      method pointer (line 442) | pointer get_mapping_start() noexcept
      method const_pointer (line 447) | const_pointer get_mapping_start() const noexcept
    function MMap (line 519) | MMap make_mmap(const MappingToken& token,
    function mmap_source (line 535) | mmap_source make_mmap_source(const MappingToken& token, mmap_source::s...
    function mmap_source (line 542) | mmap_source make_mmap_source(const MappingToken& token, std::error_cod...
    function mmap_sink (line 555) | mmap_sink make_mmap_sink(const MappingToken& token, mmap_sink::size_ty...
    function mmap_sink (line 562) | mmap_sink make_mmap_sink(const MappingToken& token, std::error_code& e...
    type detail (line 624) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type detail (line 780) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type access_mode (line 1301) | enum class access_mode
    function page_size (line 1314) | inline size_t page_size()
    function make_offset_page_aligned (line 1334) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    class basic_shared_mmap (line 1385) | class basic_shared_mmap
      method basic_shared_mmap (line 1406) | basic_shared_mmap() = default;
      method basic_shared_mmap (line 1407) | basic_shared_mmap(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1408) | basic_shared_mmap& operator=(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1409) | basic_shared_mmap(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1410) | basic_shared_mmap& operator=(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1413) | basic_shared_mmap(mmap_type&& mmap)
      method basic_shared_mmap (line 1418) | basic_shared_mmap& operator=(mmap_type&& mmap)
      method basic_shared_mmap (line 1425) | basic_shared_mmap(std::shared_ptr<mmap_type> mmap) : pimpl_(std::mov...
      method basic_shared_mmap (line 1428) | basic_shared_mmap& operator=(std::shared_ptr<mmap_type> mmap)
      method basic_shared_mmap (line 1441) | basic_shared_mmap(const String& path, const size_type offset = 0, co...
      method basic_shared_mmap (line 1453) | basic_shared_mmap(const handle_type handle, const size_type offset =...
      method get_shared_ptr (line 1469) | std::shared_ptr<mmap_type> get_shared_ptr() { return pimpl_; }
      method handle_type (line 1476) | handle_type file_handle() const noexcept
      method handle_type (line 1481) | handle_type mapping_handle() const noexcept
      method is_open (line 1487) | bool is_open() const noexcept { return pimpl_ && pimpl_->is_open(); }
      method empty (line 1494) | bool empty() const noexcept { return !pimpl_ || pimpl_->empty(); }
      method size_type (line 1502) | size_type size() const noexcept { return pimpl_ ? pimpl_->length() :...
      method size_type (line 1503) | size_type length() const noexcept { return pimpl_ ? pimpl_->length()...
      method size_type (line 1504) | size_type mapped_length() const noexcept
      method pointer (line 1516) | pointer data() noexcept { return pimpl_->data(); }
      method const_pointer (line 1517) | const_pointer data() const noexcept { return pimpl_ ? pimpl_->data()...
      method iterator (line 1523) | iterator begin() noexcept { return pimpl_->begin(); }
      method const_iterator (line 1524) | const_iterator begin() const noexcept { return pimpl_->begin(); }
      method const_iterator (line 1525) | const_iterator cbegin() const noexcept { return pimpl_->cbegin(); }
      method iterator (line 1534) | iterator end() noexcept { return pimpl_->end(); }
      method const_iterator (line 1535) | const_iterator end() const noexcept { return pimpl_->end(); }
      method const_iterator (line 1536) | const_iterator cend() const noexcept { return pimpl_->cend(); }
      method reverse_iterator (line 1546) | reverse_iterator rbegin() noexcept { return pimpl_->rbegin(); }
      method const_reverse_iterator (line 1547) | const_reverse_iterator rbegin() const noexcept { return pimpl_->rbeg...
      method const_reverse_iterator (line 1548) | const_reverse_iterator crbegin() const noexcept { return pimpl_->crb...
      method reverse_iterator (line 1557) | reverse_iterator rend() noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1558) | const_reverse_iterator rend() const noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1559) | const_reverse_iterator crend() const noexcept { return pimpl_->crend...
      method reference (line 1566) | reference operator[](const size_type i) noexcept { return (*pimpl_)[...
      method const_reference (line 1567) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 1590) | void map(const String& path, const size_type offset,
      method map (line 1609) | void map(const String& path, std::error_code& error)
      method map (line 1633) | void map(const handle_type handle, const size_type offset,
      method map (line 1650) | void map(const handle_type handle, std::error_code& error)
      method unmap (line 1664) | void unmap() { if(pimpl_) pimpl_->unmap(); }
      method swap (line 1666) | void swap(basic_shared_mmap& other) { pimpl_.swap(other.pimpl_); }
      method sync (line 1672) | void sync(std::error_code& error) { if(pimpl_) pimpl_->sync(error); }
      method map_impl (line 1708) | void map_impl(const MappingToken& token, const size_type offset,
  type mio (line 1295) | namespace mio {
    type access_mode (line 60) | enum class access_mode
    function page_size (line 73) | inline size_t page_size()
    function make_offset_page_aligned (line 93) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    type basic_mmap (line 136) | struct basic_mmap
      method basic_mmap (line 187) | basic_mmap() = default;
      method basic_mmap (line 196) | basic_mmap(const String& path, const size_type offset = 0, const siz...
      method basic_mmap (line 208) | basic_mmap(const handle_type handle, const size_type offset = 0, con...
      method basic_mmap (line 220) | basic_mmap(const basic_mmap&) = delete;
      method basic_mmap (line 222) | basic_mmap& operator=(const basic_mmap&) = delete;
      method handle_type (line 236) | handle_type file_handle() const noexcept { return file_handle_; }
      method is_open (line 240) | bool is_open() const noexcept { return file_handle_ != invalid_handl...
      method empty (line 247) | bool empty() const noexcept { return length() == 0; }
      method size_type (line 258) | size_type size() const noexcept { return length(); }
      method size_type (line 259) | size_type length() const noexcept { return length_; }
      method size_type (line 260) | size_type mapped_length() const noexcept { return mapped_length_; }
      method size_type (line 263) | size_type mapping_offset() const noexcept
      method pointer (line 275) | pointer data() noexcept { return data_; }
      method const_pointer (line 276) | const_pointer data() const noexcept { return data_; }
      method iterator (line 285) | iterator begin() noexcept { return data(); }
      method const_iterator (line 286) | const_iterator begin() const noexcept { return data(); }
      method const_iterator (line 287) | const_iterator cbegin() const noexcept { return data(); }
      method iterator (line 296) | iterator end() noexcept { return data() + length(); }
      method const_iterator (line 297) | const_iterator end() const noexcept { return data() + length(); }
      method const_iterator (line 298) | const_iterator cend() const noexcept { return data() + length(); }
      method reverse_iterator (line 308) | reverse_iterator rbegin() noexcept { return reverse_iterator(end()); }
      method const_reverse_iterator (line 309) | const_reverse_iterator rbegin() const noexcept
      method const_reverse_iterator (line 311) | const_reverse_iterator crbegin() const noexcept
      method reverse_iterator (line 321) | reverse_iterator rend() noexcept { return reverse_iterator(begin()); }
      method const_reverse_iterator (line 322) | const_reverse_iterator rend() const noexcept
      method const_reverse_iterator (line 324) | const_reverse_iterator crend() const noexcept
      method reference (line 332) | reference operator[](const size_type i) noexcept { return data_[i]; }
      method const_reference (line 333) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 372) | void map(const String& path, std::error_code& error)
      method map (line 410) | void map(const handle_type handle, std::error_code& error)
      method pointer (line 442) | pointer get_mapping_start() noexcept
      method const_pointer (line 447) | const_pointer get_mapping_start() const noexcept
    function MMap (line 519) | MMap make_mmap(const MappingToken& token,
    function mmap_source (line 535) | mmap_source make_mmap_source(const MappingToken& token, mmap_source::s...
    function mmap_source (line 542) | mmap_source make_mmap_source(const MappingToken& token, std::error_cod...
    function mmap_sink (line 555) | mmap_sink make_mmap_sink(const MappingToken& token, mmap_sink::size_ty...
    function mmap_sink (line 562) | mmap_sink make_mmap_sink(const MappingToken& token, std::error_code& e...
    type detail (line 624) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type detail (line 780) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type access_mode (line 1301) | enum class access_mode
    function page_size (line 1314) | inline size_t page_size()
    function make_offset_page_aligned (line 1334) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    class basic_shared_mmap (line 1385) | class basic_shared_mmap
      method basic_shared_mmap (line 1406) | basic_shared_mmap() = default;
      method basic_shared_mmap (line 1407) | basic_shared_mmap(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1408) | basic_shared_mmap& operator=(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1409) | basic_shared_mmap(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1410) | basic_shared_mmap& operator=(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1413) | basic_shared_mmap(mmap_type&& mmap)
      method basic_shared_mmap (line 1418) | basic_shared_mmap& operator=(mmap_type&& mmap)
      method basic_shared_mmap (line 1425) | basic_shared_mmap(std::shared_ptr<mmap_type> mmap) : pimpl_(std::mov...
      method basic_shared_mmap (line 1428) | basic_shared_mmap& operator=(std::shared_ptr<mmap_type> mmap)
      method basic_shared_mmap (line 1441) | basic_shared_mmap(const String& path, const size_type offset = 0, co...
      method basic_shared_mmap (line 1453) | basic_shared_mmap(const handle_type handle, const size_type offset =...
      method get_shared_ptr (line 1469) | std::shared_ptr<mmap_type> get_shared_ptr() { return pimpl_; }
      method handle_type (line 1476) | handle_type file_handle() const noexcept
      method handle_type (line 1481) | handle_type mapping_handle() const noexcept
      method is_open (line 1487) | bool is_open() const noexcept { return pimpl_ && pimpl_->is_open(); }
      method empty (line 1494) | bool empty() const noexcept { return !pimpl_ || pimpl_->empty(); }
      method size_type (line 1502) | size_type size() const noexcept { return pimpl_ ? pimpl_->length() :...
      method size_type (line 1503) | size_type length() const noexcept { return pimpl_ ? pimpl_->length()...
      method size_type (line 1504) | size_type mapped_length() const noexcept
      method pointer (line 1516) | pointer data() noexcept { return pimpl_->data(); }
      method const_pointer (line 1517) | const_pointer data() const noexcept { return pimpl_ ? pimpl_->data()...
      method iterator (line 1523) | iterator begin() noexcept { return pimpl_->begin(); }
      method const_iterator (line 1524) | const_iterator begin() const noexcept { return pimpl_->begin(); }
      method const_iterator (line 1525) | const_iterator cbegin() const noexcept { return pimpl_->cbegin(); }
      method iterator (line 1534) | iterator end() noexcept { return pimpl_->end(); }
      method const_iterator (line 1535) | const_iterator end() const noexcept { return pimpl_->end(); }
      method const_iterator (line 1536) | const_iterator cend() const noexcept { return pimpl_->cend(); }
      method reverse_iterator (line 1546) | reverse_iterator rbegin() noexcept { return pimpl_->rbegin(); }
      method const_reverse_iterator (line 1547) | const_reverse_iterator rbegin() const noexcept { return pimpl_->rbeg...
      method const_reverse_iterator (line 1548) | const_reverse_iterator crbegin() const noexcept { return pimpl_->crb...
      method reverse_iterator (line 1557) | reverse_iterator rend() noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1558) | const_reverse_iterator rend() const noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1559) | const_reverse_iterator crend() const noexcept { return pimpl_->crend...
      method reference (line 1566) | reference operator[](const size_type i) noexcept { return (*pimpl_)[...
      method const_reference (line 1567) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 1590) | void map(const String& path, const size_type offset,
      method map (line 1609) | void map(const String& path, std::error_code& error)
      method map (line 1633) | void map(const handle_type handle, const size_type offset,
      method map (line 1650) | void map(const handle_type handle, std::error_code& error)
      method unmap (line 1664) | void unmap() { if(pimpl_) pimpl_->unmap(); }
      method swap (line 1666) | void swap(basic_shared_mmap& other) { pimpl_.swap(other.pimpl_); }
      method sync (line 1672) | void sync(std::error_code& error) { if(pimpl_) pimpl_->sync(error); }
      method map_impl (line 1708) | void map_impl(const MappingToken& token, const size_type offset,
  type mio (line 1373) | namespace mio {
    type access_mode (line 60) | enum class access_mode
    function page_size (line 73) | inline size_t page_size()
    function make_offset_page_aligned (line 93) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    type basic_mmap (line 136) | struct basic_mmap
      method basic_mmap (line 187) | basic_mmap() = default;
      method basic_mmap (line 196) | basic_mmap(const String& path, const size_type offset = 0, const siz...
      method basic_mmap (line 208) | basic_mmap(const handle_type handle, const size_type offset = 0, con...
      method basic_mmap (line 220) | basic_mmap(const basic_mmap&) = delete;
      method basic_mmap (line 222) | basic_mmap& operator=(const basic_mmap&) = delete;
      method handle_type (line 236) | handle_type file_handle() const noexcept { return file_handle_; }
      method is_open (line 240) | bool is_open() const noexcept { return file_handle_ != invalid_handl...
      method empty (line 247) | bool empty() const noexcept { return length() == 0; }
      method size_type (line 258) | size_type size() const noexcept { return length(); }
      method size_type (line 259) | size_type length() const noexcept { return length_; }
      method size_type (line 260) | size_type mapped_length() const noexcept { return mapped_length_; }
      method size_type (line 263) | size_type mapping_offset() const noexcept
      method pointer (line 275) | pointer data() noexcept { return data_; }
      method const_pointer (line 276) | const_pointer data() const noexcept { return data_; }
      method iterator (line 285) | iterator begin() noexcept { return data(); }
      method const_iterator (line 286) | const_iterator begin() const noexcept { return data(); }
      method const_iterator (line 287) | const_iterator cbegin() const noexcept { return data(); }
      method iterator (line 296) | iterator end() noexcept { return data() + length(); }
      method const_iterator (line 297) | const_iterator end() const noexcept { return data() + length(); }
      method const_iterator (line 298) | const_iterator cend() const noexcept { return data() + length(); }
      method reverse_iterator (line 308) | reverse_iterator rbegin() noexcept { return reverse_iterator(end()); }
      method const_reverse_iterator (line 309) | const_reverse_iterator rbegin() const noexcept
      method const_reverse_iterator (line 311) | const_reverse_iterator crbegin() const noexcept
      method reverse_iterator (line 321) | reverse_iterator rend() noexcept { return reverse_iterator(begin()); }
      method const_reverse_iterator (line 322) | const_reverse_iterator rend() const noexcept
      method const_reverse_iterator (line 324) | const_reverse_iterator crend() const noexcept
      method reference (line 332) | reference operator[](const size_type i) noexcept { return data_[i]; }
      method const_reference (line 333) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 372) | void map(const String& path, std::error_code& error)
      method map (line 410) | void map(const handle_type handle, std::error_code& error)
      method pointer (line 442) | pointer get_mapping_start() noexcept
      method const_pointer (line 447) | const_pointer get_mapping_start() const noexcept
    function MMap (line 519) | MMap make_mmap(const MappingToken& token,
    function mmap_source (line 535) | mmap_source make_mmap_source(const MappingToken& token, mmap_source::s...
    function mmap_source (line 542) | mmap_source make_mmap_source(const MappingToken& token, std::error_cod...
    function mmap_sink (line 555) | mmap_sink make_mmap_sink(const MappingToken& token, mmap_sink::size_ty...
    function mmap_sink (line 562) | mmap_sink make_mmap_sink(const MappingToken& token, std::error_code& e...
    type detail (line 624) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type detail (line 780) | namespace detail {
      type char_type_helper (line 636) | struct char_type_helper {
      type char_type (line 641) | struct char_type {
      type char_type<char*> (line 647) | struct char_type<char*> {
      type char_type<const char*> (line 652) | struct char_type<const char*> {
      type char_type<char[N]> (line 657) | struct char_type<char[N]> {
      type char_type<const char[N]> (line 662) | struct char_type<const char[N]> {
      type char_type<wchar_t*> (line 668) | struct char_type<wchar_t*> {
      type char_type<const wchar_t*> (line 673) | struct char_type<const wchar_t*> {
      type char_type<wchar_t[N]> (line 678) | struct char_type<wchar_t[N]> {
      type char_type<const wchar_t[N]> (line 683) | struct char_type<const wchar_t[N]> {
      type is_c_str_helper (line 689) | struct is_c_str_helper
      type is_c_str (line 707) | struct is_c_str
      type is_c_wstr (line 714) | struct is_c_wstr
      type is_c_str_or_c_wstr (line 721) | struct is_c_str_or_c_wstr
      function empty (line 743) | bool empty(const String& path)
      function empty (line 759) | bool empty(String path)
      type win (line 783) | namespace win {
        function DWORD (line 786) | inline DWORD int64_high(int64_t n) noexcept
        function DWORD (line 792) | inline DWORD int64_low(int64_t n) noexcept
        function file_handle_type (line 802) | file_handle_type open_file_helper(const String& path, const access...
        function open_file_helper (line 814) | typename std::enable_if<
      function last_error (line 835) | inline std::error_code last_error() noexcept
      function file_handle_type (line 847) | file_handle_type open_file(const String& path, const access_mode mode,
      function query_file_size (line 869) | inline size_t query_file_size(file_handle_type handle, std::error_co...
      type mmap_context (line 891) | struct mmap_context
      function mmap_context (line 901) | inline mmap_context memory_map(const file_handle_type file_handle, c...
    type access_mode (line 1301) | enum class access_mode
    function page_size (line 1314) | inline size_t page_size()
    function make_offset_page_aligned (line 1334) | inline size_t make_offset_page_aligned(size_t offset) noexcept
    class basic_shared_mmap (line 1385) | class basic_shared_mmap
      method basic_shared_mmap (line 1406) | basic_shared_mmap() = default;
      method basic_shared_mmap (line 1407) | basic_shared_mmap(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1408) | basic_shared_mmap& operator=(const basic_shared_mmap&) = default;
      method basic_shared_mmap (line 1409) | basic_shared_mmap(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1410) | basic_shared_mmap& operator=(basic_shared_mmap&&) = default;
      method basic_shared_mmap (line 1413) | basic_shared_mmap(mmap_type&& mmap)
      method basic_shared_mmap (line 1418) | basic_shared_mmap& operator=(mmap_type&& mmap)
      method basic_shared_mmap (line 1425) | basic_shared_mmap(std::shared_ptr<mmap_type> mmap) : pimpl_(std::mov...
      method basic_shared_mmap (line 1428) | basic_shared_mmap& operator=(std::shared_ptr<mmap_type> mmap)
      method basic_shared_mmap (line 1441) | basic_shared_mmap(const String& path, const size_type offset = 0, co...
      method basic_shared_mmap (line 1453) | basic_shared_mmap(const handle_type handle, const size_type offset =...
      method get_shared_ptr (line 1469) | std::shared_ptr<mmap_type> get_shared_ptr() { return pimpl_; }
      method handle_type (line 1476) | handle_type file_handle() const noexcept
      method handle_type (line 1481) | handle_type mapping_handle() const noexcept
      method is_open (line 1487) | bool is_open() const noexcept { return pimpl_ && pimpl_->is_open(); }
      method empty (line 1494) | bool empty() const noexcept { return !pimpl_ || pimpl_->empty(); }
      method size_type (line 1502) | size_type size() const noexcept { return pimpl_ ? pimpl_->length() :...
      method size_type (line 1503) | size_type length() const noexcept { return pimpl_ ? pimpl_->length()...
      method size_type (line 1504) | size_type mapped_length() const noexcept
      method pointer (line 1516) | pointer data() noexcept { return pimpl_->data(); }
      method const_pointer (line 1517) | const_pointer data() const noexcept { return pimpl_ ? pimpl_->data()...
      method iterator (line 1523) | iterator begin() noexcept { return pimpl_->begin(); }
      method const_iterator (line 1524) | const_iterator begin() const noexcept { return pimpl_->begin(); }
      method const_iterator (line 1525) | const_iterator cbegin() const noexcept { return pimpl_->cbegin(); }
      method iterator (line 1534) | iterator end() noexcept { return pimpl_->end(); }
      method const_iterator (line 1535) | const_iterator end() const noexcept { return pimpl_->end(); }
      method const_iterator (line 1536) | const_iterator cend() const noexcept { return pimpl_->cend(); }
      method reverse_iterator (line 1546) | reverse_iterator rbegin() noexcept { return pimpl_->rbegin(); }
      method const_reverse_iterator (line 1547) | const_reverse_iterator rbegin() const noexcept { return pimpl_->rbeg...
      method const_reverse_iterator (line 1548) | const_reverse_iterator crbegin() const noexcept { return pimpl_->crb...
      method reverse_iterator (line 1557) | reverse_iterator rend() noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1558) | const_reverse_iterator rend() const noexcept { return pimpl_->rend(); }
      method const_reverse_iterator (line 1559) | const_reverse_iterator crend() const noexcept { return pimpl_->crend...
      method reference (line 1566) | reference operator[](const size_type i) noexcept { return (*pimpl_)[...
      method const_reference (line 1567) | const_reference operator[](const size_type i) const noexcept { retur...
      method map (line 1590) | void map(const String& path, const size_type offset,
      method map (line 1609) | void map(const String& path, std::error_code& error)
      method map (line 1633) | void map(const handle_type handle, const size_type offset,
      method map (line 1650) | void map(const handle_type handle, std::error_code& error)
      method unmap (line 1664) | void unmap() { if(pimpl_) pimpl_->unmap(); }
      method swap (line 1666) | void swap(basic_shared_mmap& other) { pimpl_.swap(other.pimpl_); }
      method sync (line 1672) | void sync(std::error_code& error) { if(pimpl_) pimpl_->sync(error); }
      method map_impl (line 1708) | void map_impl(const MappingToken& token, const size_type offset,

FILE: lib/nlohmann/json.hpp
  type nlohmann (line 84) | namespace nlohmann
    type detail (line 86) | namespace detail
      type position_t (line 89) | struct position_t
      class exception (line 1774) | class exception : public std::exception
        method JSON_HEDLEY_RETURNS_NON_NULL (line 1778) | JSON_HEDLEY_RETURNS_NON_NULL
        method JSON_HEDLEY_NON_NULL (line 1788) | JSON_HEDLEY_NON_NULL(3)
        method name (line 1791) | static std::string name(const std::string& ename, int id_)
      class parse_error (line 1845) | class parse_error : public exception
        method parse_error (line 1857) | static parse_error create(int id_, const position_t& pos, const st...
        method parse_error (line 1864) | static parse_error create(int id_, std::size_t byte_, const std::s...
        method parse_error (line 1884) | parse_error(int id_, std::size_t byte_, const char* what_arg)
        method position_string (line 1887) | static std::string position_string(const position_t& pos)
      class invalid_iterator (line 1931) | class invalid_iterator : public exception
        method invalid_iterator (line 1934) | static invalid_iterator create(int id_, const std::string& what_arg)
        method JSON_HEDLEY_NON_NULL (line 1941) | JSON_HEDLEY_NON_NULL(3)
      class type_error (line 1985) | class type_error : public exception
        method type_error (line 1988) | static type_error create(int id_, const std::string& what_arg)
        method JSON_HEDLEY_NON_NULL (line 1995) | JSON_HEDLEY_NON_NULL(3)
      class out_of_range (line 2032) | class out_of_range : public exception
        method out_of_range (line 2035) | static out_of_range create(int id_, const std::string& what_arg)
        method JSON_HEDLEY_NON_NULL (line 2042) | JSON_HEDLEY_NON_NULL(3)
      class other_error (line 2070) | class other_error : public exception
        method other_error (line 2073) | static other_error create(int id_, const std::string& what_arg)
        method JSON_HEDLEY_NON_NULL (line 2080) | JSON_HEDLEY_NON_NULL(3)
      type index_sequence (line 2109) | struct index_sequence
        method size (line 2113) | static constexpr std::size_t size() noexcept
      type merge_and_renumber (line 2120) | struct merge_and_renumber
      type make_index_sequence (line 2127) | struct make_index_sequence
      type make_index_sequence<0> (line 2131) | struct make_index_sequence<0> : index_sequence<> {}
      type make_index_sequence<1> (line 2132) | struct make_index_sequence<1> : index_sequence<0> {}
      type priority_tag (line 2138) | struct priority_tag : priority_tag < N - 1 > {}
      type priority_tag<0> (line 2139) | struct priority_tag<0> {}
      type static_const (line 2143) | struct static_const
      type make_void (line 2173) | struct make_void
      type iterator_types (line 2189) | struct iterator_types {}
      type iterator_types <
    It,
    void_t<typename It::difference_type, typename It::value_type, typename It::pointer,
    typename It::reference, typename It::iterator_category >> (line 2192) | struct iterator_types <
      type iterator_traits (line 2207) | struct iterator_traits
      type iterator_traits < T, enable_if_t < !std::is_pointer<T>::value >> (line 2212) | struct iterator_traits < T, enable_if_t < !std::is_pointer<T>::value >>
      type iterator_traits<T*, enable_if_t<std::is_object<T>::value>> (line 2218) | struct iterator_traits<T*, enable_if_t<std::is_object<T>::value>>
      type nonesuch (line 2246) | struct nonesuch
        method nonesuch (line 2248) | nonesuch() = delete;
        method nonesuch (line 2250) | nonesuch(nonesuch const&) = delete;
        method nonesuch (line 2251) | nonesuch(nonesuch const&&) = delete;
      type detector (line 2260) | struct detector
      type is_basic_json (line 2386) | struct is_basic_json : std::false_type {}
      type has_from_json (line 2430) | struct has_from_json : std::false_type {}
      type has_from_json<BasicJsonType, T,
           enable_if_t<not is_basic_json<T>::value>> (line 2433) | struct has_from_json<BasicJsonType, T,
      type has_non_default_from_json (line 2446) | struct has_non_default_from_json : std::false_type {}
      type has_non_default_from_json<BasicJsonType, T, enable_if_t<not is_basic_json<T>::value>> (line 2449) | struct has_non_default_from_json<BasicJsonType, T, enable_if_t<not i...
      type has_to_json (line 2461) | struct has_to_json : std::false_type {}
      type has_to_json<BasicJsonType, T, enable_if_t<not is_basic_json<T>::value>> (line 2464) | struct has_to_json<BasicJsonType, T, enable_if_t<not is_basic_json<T...
      type is_iterator_traits (line 2479) | struct is_iterator_traits : std::false_type {}
      type is_iterator_traits<iterator_traits<T>> (line 2482) | struct is_iterator_traits<iterator_traits<T>>
      type is_complete_type (line 2499) | struct is_complete_type : std::false_type {}
      type is_complete_type<T, decltype(void(sizeof(T)))> (line 2502) | struct is_complete_type<T, decltype(void(sizeof(T)))> : std::true_ty...
      type is_compatible_object_type_impl (line 2506) | struct is_compatible_object_type_impl : std::false_type {}
      type is_compatible_object_type_impl <
    BasicJsonType, CompatibleObjectType,
    enable_if_t<is_detected<mapped_type_t, CompatibleObjectType>::value and
    is_detected<key_type_t, CompatibleObjectType>::value >> (line 2509) | struct is_compatible_object_type_impl <
      type is_compatible_object_type (line 2526) | struct is_compatible_object_type
      type is_constructible_object_type_impl (line 2531) | struct is_constructible_object_type_impl : std::false_type {}
      type is_constructible_object_type_impl <
    BasicJsonType, ConstructibleObjectType,
    enable_if_t<is_detected<mapped_type_t, ConstructibleObjectType>::value and
    is_detected<key_type_t, ConstructibleObjectType>::value >> (line 2534) | struct is_constructible_object_type_impl <
      type is_constructible_object_type (line 2558) | struct is_constructible_object_type
      type is_compatible_string_type_impl (line 2564) | struct is_compatible_string_type_impl : std::false_type {}
      type is_compatible_string_type_impl <
    BasicJsonType, CompatibleStringType,
    enable_if_t<is_detected_exact<typename BasicJsonType::string_t::value_type,
    value_type_t, CompatibleStringType>::value >> (line 2567) | struct is_compatible_string_type_impl <
      type is_compatible_string_type (line 2577) | struct is_compatible_string_type
      type is_constructible_string_type_impl (line 2582) | struct is_constructible_string_type_impl : std::false_type {}
      type is_constructible_string_type_impl <
    BasicJsonType, ConstructibleStringType,
    enable_if_t<is_detected_exact<typename BasicJsonType::string_t::value_type,
    value_type_t, ConstructibleStringType>::value >> (line 2585) | struct is_constructible_string_type_impl <
      type is_constructible_string_type (line 2596) | struct is_constructible_string_type
      type is_compatible_array_type_impl (line 2600) | struct is_compatible_array_type_impl : std::false_type {}
      type is_compatible_array_type (line 2619) | struct is_compatible_array_type
      type is_constructible_array_type_impl (line 2623) | struct is_constructible_array_type_impl : std::false_type {}
      type is_constructible_array_type_impl <
    BasicJsonType, ConstructibleArrayType,
    enable_if_t<std::is_same<ConstructibleArrayType,
    typename BasicJsonType::value_type>::value >> (line 2626) | struct is_constructible_array_type_impl <
      type is_constructible_array_type_impl <
    BasicJsonType, ConstructibleArrayType,
    enable_if_t<not std::is_same<ConstructibleArrayType,
    typename BasicJsonType::value_type>::value and
    std::is_default_constructible<ConstructibleArrayType>::value and
(std::is_move_assignable<ConstructibleArrayType>::value or
 std::is_copy_assignable<ConstructibleArrayType>::value) and
is_detected<value_type_t, ConstructibleArrayType>::value and
is_detected<iterator_t, ConstructibleArrayType>::value and
is_complete_type<
detected_t<value_type_t, ConstructibleArrayType>>::value >> (line 2633) | struct is_constructible_array_type_impl <
      type is_constructible_array_type (line 2662) | struct is_constructible_array_type
      type is_compatible_integer_type_impl (line 2667) | struct is_compatible_integer_type_impl : std::false_type {}
      type is_compatible_integer_type_impl <
    RealIntegerType, CompatibleNumberIntegerType,
    enable_if_t<std::is_integral<RealIntegerType>::value and
    std::is_integral<CompatibleNumberIntegerType>::value and
    not std::is_same<bool, CompatibleNumberIntegerType>::value >> (line 2670) | struct is_compatible_integer_type_impl <
      type is_compatible_integer_type (line 2688) | struct is_compatible_integer_type
      type is_compatible_type_impl (line 2693) | struct is_compatible_type_impl: std::false_type {}
      type is_compatible_type_impl <
    BasicJsonType, CompatibleType,
    enable_if_t<is_complete_type<CompatibleType>::value >> (line 2696) | struct is_compatible_type_impl <
      type is_compatible_type (line 2705) | struct is_compatible_type
      type value_t (line 2751) | enum class value_t : std::uint8_t
      function from_json (line 2795) | void from_json(const BasicJsonType& j, typename std::nullptr_t& n)
      function get_arithmetic_value (line 2809) | void get_arithmetic_value(const BasicJsonType& j, ArithmeticType& val)
      function from_json (line 2835) | void from_json(const BasicJsonType& j, typename BasicJsonType::boole...
      function from_json (line 2845) | void from_json(const BasicJsonType& j, typename BasicJsonType::strin...
      function from_json (line 2861) | void from_json(const BasicJsonType& j, ConstructibleStringType& s)
      function from_json (line 2872) | void from_json(const BasicJsonType& j, typename BasicJsonType::numbe...
      function from_json (line 2878) | void from_json(const BasicJsonType& j, typename BasicJsonType::numbe...
      function from_json (line 2884) | void from_json(const BasicJsonType& j, typename BasicJsonType::numbe...
      function from_json (line 2891) | void from_json(const BasicJsonType& j, EnumType& e)
      function from_json (line 2901) | void from_json(const BasicJsonType& j, std::forward_list<T, Allocato...
      function from_json (line 2918) | void from_json(const BasicJsonType& j, std::valarray<T>& l)
      function from_json (line 2929) | auto from_json(const BasicJsonType& j, T (&arr)[N])
      function from_json_array_impl (line 2939) | void from_json_array_impl(const BasicJsonType& j, typename BasicJson...
      function from_json_array_impl (line 2945) | auto from_json_array_impl(const BasicJsonType& j, std::array<T, N>& ...
      function from_json_array_impl (line 2956) | auto from_json_array_impl(const BasicJsonType& j, ConstructibleArray...
      function from_json_array_impl (line 2977) | void from_json_array_impl(const BasicJsonType& j, ConstructibleArray...
      function from_json (line 3002) | auto from_json(const BasicJsonType& j, ConstructibleArrayType& arr)
      function from_json (line 3018) | void from_json(const BasicJsonType& j, ConstructibleObjectType& obj)
      function from_json (line 3050) | void from_json(const BasicJsonType& j, ArithmeticType& val)
      function from_json (line 3081) | void from_json(const BasicJsonType& j, std::pair<A1, A2>& p)
      function from_json_tuple_impl (line 3087) | void from_json_tuple_impl(const BasicJsonType& j, Tuple& t, index_se...
      function from_json (line 3093) | void from_json(const BasicJsonType& j, std::tuple<Args...>& t)
      function from_json (line 3101) | void from_json(const BasicJsonType& j, std::map<Key, Value, Compare,...
      function from_json (line 3121) | void from_json(const BasicJsonType& j, std::unordered_map<Key, Value...
      type from_json_fn (line 3138) | struct from_json_fn
      class iteration_proxy_value (line 3189) | class iteration_proxy_value
        method iteration_proxy_value (line 3211) | explicit iteration_proxy_value(IteratorType it) noexcept : anchor(...
        method iteration_proxy_value (line 3214) | iteration_proxy_value& operator*()
        method iteration_proxy_value (line 3220) | iteration_proxy_value& operator++()
        method value (line 3269) | typename IteratorType::reference value() const
      class iteration_proxy (line 3276) | class iteration_proxy
        method iteration_proxy (line 3284) | explicit iteration_proxy(typename IteratorType::reference cont) no...
        method begin (line 3288) | iteration_proxy_value<IteratorType> begin() noexcept
        method end (line 3294) | iteration_proxy_value<IteratorType> end() noexcept
      function get (line 3303) | auto get(const nlohmann::detail::iteration_proxy_value<IteratorType>...
      function get (line 3311) | auto get(const nlohmann::detail::iteration_proxy_value<IteratorType>...
      type external_constructor (line 3361) | struct external_constructor
      type external_constructor<value_t::boolean> (line 3364) | struct external_constructor<value_t::boolean>
        method construct (line 3367) | static void construct(BasicJsonType& j, typename BasicJsonType::bo...
      type external_constructor<value_t::string> (line 3376) | struct external_constructor<value_t::string>
        method construct (line 3379) | static void construct(BasicJsonType& j, const typename BasicJsonTy...
        method construct (line 3387) | static void construct(BasicJsonType& j, typename BasicJsonType::st...
        method construct (line 3397) | static void construct(BasicJsonType& j, const CompatibleStringType...
      type external_constructor<value_t::number_float> (line 3406) | struct external_constructor<value_t::number_float>
        method construct (line 3409) | static void construct(BasicJsonType& j, typename BasicJsonType::nu...
      type external_constructor<value_t::number_unsigned> (line 3418) | struct external_constructor<value_t::number_unsigned>
        method construct (line 3421) | static void construct(BasicJsonType& j, typename BasicJsonType::nu...
      type external_constructor<value_t::number_integer> (line 3430) | struct external_constructor<value_t::number_integer>
        method construct (line 3433) | static void construct(BasicJsonType& j, typename BasicJsonType::nu...
      type external_constructor<value_t::array> (line 3442) | struct external_constructor<value_t::array>
        method construct (line 3445) | static void construct(BasicJsonType& j, const typename BasicJsonTy...
        method construct (line 3453) | static void construct(BasicJsonType& j, typename BasicJsonType::ar...
        method construct (line 3463) | static void construct(BasicJsonType& j, const CompatibleArrayType&...
        method construct (line 3473) | static void construct(BasicJsonType& j, const std::vector<bool>& arr)
        method construct (line 3487) | static void construct(BasicJsonType& j, const std::valarray<T>& arr)
      type external_constructor<value_t::object> (line 3498) | struct external_constructor<value_t::object>
        method construct (line 3501) | static void construct(BasicJsonType& j, const typename BasicJsonTy...
        method construct (line 3509) | static void construct(BasicJsonType& j, typename BasicJsonType::ob...
        method construct (line 3518) | static void construct(BasicJsonType& j, const CompatibleObjectType...
      function to_json (line 3535) | void to_json(BasicJsonType& j, T b) noexcept
      function to_json (line 3542) | void to_json(BasicJsonType& j, const CompatibleString& s)
      function to_json (line 3548) | void to_json(BasicJsonType& j, typename BasicJsonType::string_t&& s)
      function to_json (line 3555) | void to_json(BasicJsonType& j, FloatType val) noexcept
      function to_json (line 3562) | void to_json(BasicJsonType& j, CompatibleNumberUnsignedType val) noe...
      function to_json (line 3569) | void to_json(BasicJsonType& j, CompatibleNumberIntegerType val) noex...
      function to_json (line 3576) | void to_json(BasicJsonType& j, EnumType e) noexcept
      function to_json (line 3583) | void to_json(BasicJsonType& j, const std::vector<bool>& e)
      function to_json (line 3596) | void to_json(BasicJsonType& j, const CompatibleArrayType& arr)
      function to_json (line 3603) | void to_json(BasicJsonType& j, const std::valarray<T>& arr)
      function to_json (line 3609) | void to_json(BasicJsonType& j, typename BasicJsonType::array_t&& arr)
      function to_json (line 3616) | void to_json(BasicJsonType& j, const CompatibleObjectType& obj)
      function to_json (line 3622) | void to_json(BasicJsonType& j, typename BasicJsonType::object_t&& obj)
      function to_json (line 3632) | void to_json(BasicJsonType& j, const T(&arr)[N])
      function to_json (line 3638) | void to_json(BasicJsonType& j, const std::pair<Args...>& p)
      function to_json (line 3646) | void to_json(BasicJsonType& j, const T& b)
      function to_json_tuple_impl (line 3652) | void to_json_tuple_impl(BasicJsonType& j, const Tuple& t, index_sequ...
      function to_json (line 3658) | void to_json(BasicJsonType& j, const std::tuple<Args...>& t)
      type to_json_fn (line 3663) | struct to_json_fn
      type input_format_t (line 3775) | enum class input_format_t { json, cbor, msgpack, ubjson, bson }
      type input_adapter_protocol (line 3792) | struct input_adapter_protocol
      class file_input_adapter (line 3806) | class file_input_adapter : public input_adapter_protocol
        method file_input_adapter (line 3810) | explicit file_input_adapter(std::FILE* f)  noexcept
        method file_input_adapter (line 3815) | file_input_adapter(const file_input_adapter&) = delete;
        method file_input_adapter (line 3816) | file_input_adapter(file_input_adapter&&) = default;
        method file_input_adapter (line 3817) | file_input_adapter& operator=(const file_input_adapter&) = delete;
        method file_input_adapter (line 3818) | file_input_adapter& operator=(file_input_adapter&&) = default;
        method get_character (line 3821) | std::char_traits<char>::int_type get_character() noexcept override
      class input_stream_adapter (line 3841) | class input_stream_adapter : public input_adapter_protocol
        method input_stream_adapter (line 3851) | explicit input_stream_adapter(std::istream& i)
        method input_stream_adapter (line 3856) | input_stream_adapter(const input_stream_adapter&) = delete;
        method input_stream_adapter (line 3857) | input_stream_adapter& operator=(input_stream_adapter&) = delete;
        method input_stream_adapter (line 3858) | input_stream_adapter(input_stream_adapter&&) = delete;
        method input_stream_adapter (line 3859) | input_stream_adapter& operator=(input_stream_adapter&&) = delete;
        method get_character (line 3864) | std::char_traits<char>::int_type get_character() override
      class input_buffer_adapter (line 3882) | class input_buffer_adapter : public input_adapter_protocol
        method JSON_HEDLEY_NON_NULL (line 3885) | JSON_HEDLEY_NON_NULL(2)
        method input_buffer_adapter (line 3891) | input_buffer_adapter(const input_buffer_adapter&) = delete;
        method input_buffer_adapter (line 3892) | input_buffer_adapter& operator=(input_buffer_adapter&) = delete;
        method input_buffer_adapter (line 3893) | input_buffer_adapter(input_buffer_adapter&&) = delete;
        method input_buffer_adapter (line 3894) | input_buffer_adapter& operator=(input_buffer_adapter&&) = delete;
        method get_character (line 3897) | std::char_traits<char>::int_type get_character() noexcept override
      type wide_string_input_helper (line 3915) | struct wide_string_input_helper
        method fill_buffer (line 3918) | static void fill_buffer(const WideStringType& str,
      type wide_string_input_helper<WideStringType, 2> (line 3974) | struct wide_string_input_helper<WideStringType, 2>
        method fill_buffer (line 3977) | static void fill_buffer(const WideStringType& str,
      class wide_string_input_adapter (line 4039) | class wide_string_input_adapter : public input_adapter_protocol
        method wide_string_input_adapter (line 4042) | explicit wide_string_input_adapter(const WideStringType& w) noexcept
        method get_character (line 4046) | std::char_traits<char>::int_type get_character() noexcept override
        method fill_buffer (line 4065) | void fill_buffer()
      class input_adapter (line 4085) | class input_adapter
        method JSON_HEDLEY_NON_NULL (line 4089) | JSON_HEDLEY_NON_NULL(2)
        method input_adapter (line 4093) | input_adapter(std::istream& i)
        method input_adapter (line 4097) | input_adapter(std::istream&& i)
        method input_adapter (line 4100) | input_adapter(const std::wstring& ws)
        method input_adapter (line 4103) | input_adapter(const std::u16string& ws)
        method input_adapter (line 4106) | input_adapter(const std::u32string& ws)
        method input_adapter (line 4116) | input_adapter(CharT b, std::size_t l)
        method input_adapter (line 4128) | input_adapter(CharT b)
        method input_adapter (line 4137) | input_adapter(IteratorType first, IteratorType last)
        method input_adapter (line 4172) | input_adapter(T (&array)[N])
        method input_adapter (line 4180) | input_adapter(const ContiguousContainer& c)
      class json_sax_dom_parser (line 4342) | class json_sax_dom_parser
        method json_sax_dom_parser (line 4355) | explicit json_sax_dom_parser(BasicJsonType& r, const bool allow_ex...
        method json_sax_dom_parser (line 4360) | json_sax_dom_parser(const json_sax_dom_parser&) = delete;
        method json_sax_dom_parser (line 4361) | json_sax_dom_parser(json_sax_dom_parser&&) = default;
        method json_sax_dom_parser (line 4362) | json_sax_dom_parser& operator=(const json_sax_dom_parser&) = delete;
        method json_sax_dom_parser (line 4363) | json_sax_dom_parser& operator=(json_sax_dom_parser&&) = default;
        method null (line 4366) | bool null()
        method boolean (line 4372) | bool boolean(bool val)
        method number_integer (line 4378) | bool number_integer(number_integer_t val)
        method number_unsigned (line 4384) | bool number_unsigned(number_unsigned_t val)
        method number_float (line 4390) | bool number_float(number_float_t val, const string_t& /*unused*/)
        method string (line 4396) | bool string(string_t& val)
        method start_object (line 4402) | bool start_object(std::size_t len)
        method key (line 4415) | bool key(string_t& val)
        method end_object (line 4422) | bool end_object()
        method start_array (line 4428) | bool start_array(std::size_t len)
        method end_array (line 4441) | bool end_array()
        method parse_error (line 4447) | bool parse_error(std::size_t /*unused*/, const std::string& /*unus...
        method is_errored (line 4475) | constexpr bool is_errored() const
        method JSON_HEDLEY_RETURNS_NON_NULL (line 4488) | JSON_HEDLEY_RETURNS_NON_NULL
      class json_sax_dom_callback_parser (line 4524) | class json_sax_dom_callback_parser
        method json_sax_dom_callback_parser (line 4534) | json_sax_dom_callback_parser(BasicJsonType& r,
        method json_sax_dom_callback_parser (line 4543) | json_sax_dom_callback_parser(const json_sax_dom_callback_parser&) ...
        method json_sax_dom_callback_parser (line 4544) | json_sax_dom_callback_parser(json_sax_dom_callback_parser&&) = def...
        method json_sax_dom_callback_parser (line 4545) | json_sax_dom_callback_parser& operator=(const json_sax_dom_callbac...
        method json_sax_dom_callback_parser (line 4546) | json_sax_dom_callback_parser& operator=(json_sax_dom_callback_pars...
        method null (line 4549) | bool null()
        method boolean (line 4555) | bool boolean(bool val)
        method number_integer (line 4561) | bool number_integer(number_integer_t val)
        method number_unsigned (line 4567) | bool number_unsigned(number_unsigned_t val)
        method number_float (line 4573) | bool number_float(number_float_t val, const string_t& /*unused*/)
        method string (line 4579) | bool string(string_t& val)
        method start_object (line 4585) | bool start_object(std::size_t len)
        method key (line 4603) | bool key(string_t& val)
        method end_object (line 4620) | bool end_object()
        method start_array (line 4649) | bool start_array(std::size_t len)
        method end_array (line 4666) | bool end_array()
        method parse_error (line 4694) | bool parse_error(std::size_t /*unused*/, const std::string& /*unus...
        method is_errored (line 4722) | constexpr bool is_errored() const
        method handle_value (line 4744) | std::pair<bool, BasicJsonType*> handle_value(Value&& v, const bool...
      class json_sax_acceptor (line 4828) | class json_sax_acceptor
        method null (line 4836) | bool null()
        method boolean (line 4841) | bool boolean(bool /*unused*/)
        method number_integer (line 4846) | bool number_integer(number_integer_t /*unused*/)
        method number_unsigned (line 4851) | bool number_unsigned(number_unsigned_t /*unused*/)
        method number_float (line 4856) | bool number_float(number_float_t /*unused*/, const string_t& /*unu...
        method string (line 4861) | bool string(string_t& /*unused*/)
        method start_object (line 4866) | bool start_object(std::size_t  /*unused*/ = std::size_t(-1))
        method key (line 4871) | bool key(string_t& /*unused*/)
        method end_object (line 4876) | bool end_object()
        method start_array (line 4881) | bool start_array(std::size_t  /*unused*/ = std::size_t(-1))
        method end_array (line 4886) | bool end_array()
        method parse_error (line 4891) | bool parse_error(std::size_t /*unused*/, const std::string& /*unus...
      type is_sax (line 4965) | struct is_sax
      type is_sax_static_asserts (line 4997) | struct is_sax_static_asserts
      class binary_reader (line 5063) | class binary_reader
        method binary_reader (line 5077) | explicit binary_reader(input_adapter_t adapter) : ia(std::move(ada...
        method binary_reader (line 5084) | binary_reader(const binary_reader&) = delete;
        method binary_reader (line 5085) | binary_reader(binary_reader&&) = default;
        method binary_reader (line 5086) | binary_reader& operator=(const binary_reader&) = delete;
        method binary_reader (line 5087) | binary_reader& operator=(binary_reader&&) = default;
        method JSON_HEDLEY_NON_NULL (line 5097) | JSON_HEDLEY_NON_NULL(3)
        method little_endianess (line 5156) | static constexpr bool little_endianess(int num = 1) noexcept
        method parse_bson_internal (line 5170) | bool parse_bson_internal()
        method get_bson_cstr (line 5195) | bool get_bson_cstr(string_t& result)
        method get_bson_string (line 5227) | bool get_bson_string(const NumberType len, string_t& result)
        method parse_bson_element_internal (line 5248) | bool parse_bson_element_internal(const int element_type,
        method parse_bson_element_list (line 5319) | bool parse_bson_element_list(const bool is_array)
        method parse_bson_array (line 5356) | bool parse_bson_array()
        method parse_cbor_internal (line 5385) | bool parse_cbor_internal(const bool get_char = true)
        method get_cbor_string (line 5727) | bool get_cbor_string(string_t& result)
        method get_cbor_array (line 5816) | bool get_cbor_array(const std::size_t len)
        method get_cbor_object (line 5852) | bool get_cbor_object(const std::size_t len)
        method parse_msgpack_internal (line 5904) | bool parse_msgpack_internal()
        method get_msgpack_string (line 6268) | bool get_msgpack_string(string_t& result)
        method get_msgpack_array (line 6344) | bool get_msgpack_array(const std::size_t len)
        method get_msgpack_object (line 6366) | bool get_msgpack_object(const std::size_t len)
        method parse_ubjson_internal (line 6403) | bool parse_ubjson_internal(const bool get_char = true)
        method get_ubjson_string (line 6422) | bool get_ubjson_string(string_t& result, const bool get_char = true)
        method get_ubjson_size_value (line 6476) | bool get_ubjson_size_value(std::size_t& result)
        method get_ubjson_size_type (line 6553) | bool get_ubjson_size_type(std::pair<std::size_t, int>& result)
        method get_ubjson_value (line 6594) | bool get_ubjson_value(const int prefix)
        method get_ubjson_array (line 6690) | bool get_ubjson_array()
        method get_ubjson_object (line 6752) | bool get_ubjson_object()
        method get (line 6837) | int get()
        method get_ignore_noop (line 6846) | int get_ignore_noop()
        method get_number (line 6871) | bool get_number(const input_format_t format, NumberType& result)
        method get_string (line 6914) | bool get_string(const input_format_t format,
        method JSON_HEDLEY_NON_NULL (line 6936) | JSON_HEDLEY_NON_NULL(3)
        method get_token_string (line 6950) | std::string get_token_string() const
        method exception_message (line 6963) | std::string exception_message(const input_format_t format,
      class lexer (line 7049) | class lexer
        type token_type (line 7058) | enum class token_type
        method lexer (line 7125) | explicit lexer(detail::input_adapter_t&& adapter)
        method lexer (line 7129) | lexer(const lexer&) = delete;
        method lexer (line 7130) | lexer(lexer&&) = delete;
        method lexer (line 7131) | lexer& operator=(lexer&) = delete;
        method lexer (line 7132) | lexer& operator=(lexer&&) = delete;
        method JSON_HEDLEY_PURE (line 7141) | JSON_HEDLEY_PURE
        method get_codepoint (line 7168) | int get_codepoint()
        method next_byte_in_range (line 7216) | bool next_byte_in_range(std::initializer_list<int> ranges)
        method token_type (line 7253) | token_type scan_string()
        method strtof (line 7840) | static void strtof(float& f, const char* str, char** endptr) noexcept
        method strtof (line 7846) | static void strtof(double& f, const char* str, char** endptr) noex...
        method strtof (line 7852) | static void strtof(long double& f, const char* str, char** endptr)...
        method token_type (line 7897) | token_type scan_number()  // lgtm [cpp/use-of-goto]
        method JSON_HEDLEY_NON_NULL (line 8227) | JSON_HEDLEY_NON_NULL(2)
        method reset (line 8248) | void reset() noexcept
        method get (line 8265) | std::char_traits<char>::int_type get()
        method unget (line 8302) | void unget()
        method add (line 8329) | void add(int c)
        method number_integer_t (line 8340) | constexpr number_integer_t get_number_integer() const noexcept
        method number_unsigned_t (line 8346) | constexpr number_unsigned_t get_number_unsigned() const noexcept
        method number_float_t (line 8352) | constexpr number_float_t get_number_float() const noexcept
        method string_t (line 8358) | string_t& get_string()
        method position_t (line 8368) | constexpr position_t get_position() const noexcept
        method get_token_string (line 8376) | std::string get_token_string() const
        method JSON_HEDLEY_RETURNS_NON_NULL (line 8400) | JSON_HEDLEY_RETURNS_NON_NULL
        method skip_bom (line 8414) | bool skip_bom()
        method token_type (line 8428) | token_type scan()
      class parser (line 8572) | class parser
        type parse_event_t (line 8582) | enum class parse_event_t : uint8_t
        method parser (line 8602) | explicit parser(detail::input_adapter_t&& adapter,
        method parse (line 8621) | void parse(const bool strict, BasicJsonType& result)
        method accept (line 8682) | bool accept(const bool strict = true)
        method sax_parse (line 8690) | bool sax_parse(SAX* sax, const bool strict = true)
        method sax_parse_internal (line 8710) | bool sax_parse_internal(SAX* sax)
        method token_type (line 8992) | token_type get_token()
        method exception_message (line 8997) | std::string exception_message(const token_type expected, const std...
      class primitive_iterator_t (line 9061) | class primitive_iterator_t
        method difference_type (line 9072) | constexpr difference_type get_value() const noexcept
        method set_begin (line 9078) | void set_begin() noexcept
        method set_end (line 9084) | void set_end() noexcept
        method is_begin (line 9090) | constexpr bool is_begin() const noexcept
        method is_end (line 9096) | constexpr bool is_end() const noexcept
        method primitive_iterator_t (line 9111) | primitive_iterator_t operator+(difference_type n) noexcept
        method difference_type (line 9118) | constexpr difference_type operator-(primitive_iterator_t lhs, prim...
        method primitive_iterator_t (line 9123) | primitive_iterator_t& operator++() noexcept
        method primitive_iterator_t (line 9129) | primitive_iterator_t const operator++(int) noexcept
        method primitive_iterator_t (line 9136) | primitive_iterator_t& operator--() noexcept
        method primitive_iterator_t (line 9142) | primitive_iterator_t const operator--(int) noexcept
        method primitive_iterator_t (line 9149) | primitive_iterator_t& operator+=(difference_type n) noexcept
        method primitive_iterator_t (line 9155) | primitive_iterator_t& operator-=(difference_type n) noexcept
      type internal_iterator (line 9175) | struct internal_iterator
      class iteration_proxy (line 9214) | class iteration_proxy
        method iteration_proxy (line 3284) | explicit iteration_proxy(typename IteratorType::reference cont) no...
        method begin (line 3288) | iteration_proxy_value<IteratorType> begin() noexcept
        method end (line 3294) | iteration_proxy_value<IteratorType> end() noexcept
      class iteration_proxy_value (line 9215) | class iteration_proxy_value
        method iteration_proxy_value (line 3211) | explicit iteration_proxy_value(IteratorType it) noexcept : anchor(...
        method iteration_proxy_value (line 3214) | iteration_proxy_value& operator*()
        method iteration_proxy_value (line 3220) | iteration_proxy_value& operator++()
        method value (line 3269) | typename IteratorType::reference value() const
      class iter_impl (line 9234) | class iter_impl
        method iter_impl (line 9272) | iter_impl() = default;
        method iter_impl (line 9280) | explicit iter_impl(pointer object) noexcept : m_object(object)
        method iter_impl (line 9322) | iter_impl(const iter_impl<const BasicJsonType>& other) noexcept
        method iter_impl (line 9332) | iter_impl& operator=(const iter_impl<const BasicJsonType>& other) ...
        method iter_impl (line 9344) | iter_impl(const iter_impl<typename std::remove_const<BasicJsonType...
        method iter_impl (line 9354) | iter_impl& operator=(const iter_impl<typename std::remove_const<Ba...
        method set_begin (line 9366) | void set_begin() noexcept
        method set_end (line 9403) | void set_end() noexcept
        method reference (line 9434) | reference operator*() const
        method pointer (line 9471) | pointer operator->() const
        method iter_impl (line 9505) | iter_impl const operator++(int)
        method iter_impl (line 9516) | iter_impl& operator++()
        method iter_impl (line 9548) | iter_impl const operator--(int)
        method iter_impl (line 9559) | iter_impl& operator--()
        method iter_impl (line 9681) | iter_impl& operator+=(difference_type i)
        method iter_impl (line 9710) | iter_impl& operator-=(difference_type i)
        method iter_impl (line 9719) | iter_impl operator+(difference_type i) const
        method iter_impl (line 9730) | iter_impl operator+(difference_type i, const iter_impl& it)
        method iter_impl (line 9741) | iter_impl operator-(difference_type i) const
        method difference_type (line 9752) | difference_type operator-(const iter_impl& other) const
        method reference (line 9773) | reference operator[](difference_type n) const
        method reference (line 9820) | reference value() const
      class json_reverse_iterator (line 9870) | class json_reverse_iterator : public std::reverse_iterator<Base>
        method json_reverse_iterator (line 9880) | explicit json_reverse_iterator(const typename base_iterator::itera...
        method json_reverse_iterator (line 9884) | explicit json_reverse_iterator(const base_iterator& it) noexcept :...
        method json_reverse_iterator (line 9887) | json_reverse_iterator const operator++(int)
        method json_reverse_iterator (line 9893) | json_reverse_iterator& operator++()
        method json_reverse_iterator (line 9899) | json_reverse_iterator const operator--(int)
        method json_reverse_iterator (line 9905) | json_reverse_iterator& operator--()
        method json_reverse_iterator (line 9911) | json_reverse_iterator& operator+=(difference_type i)
        method json_reverse_iterator (line 9917) | json_reverse_iterator operator+(difference_type i) const
        method json_reverse_iterator (line 9923) | json_reverse_iterator operator-(difference_type i) const
        method difference_type (line 9929) | difference_type operator-(const json_reverse_iterator& other) const
        method reference (line 9935) | reference operator[](difference_type n) const
        method key (line 9941) | auto key() const -> decltype(std::declval<Base>().key())
        method reference (line 9948) | reference value() const
      class json_ref (line 10989) | class json_ref
        method json_ref (line 10994) | json_ref(value_type&& value)
        method json_ref (line 10998) | json_ref(const value_type& value)
        method json_ref (line 11002) | json_ref(std::initializer_list<json_ref> init)
        method json_ref (line 11009) | json_ref(Args && ... args)
        method json_ref (line 11014) | json_ref(json_ref&&) = default;
        method json_ref (line 11015) | json_ref(const json_ref&) = delete;
        method json_ref (line 11016) | json_ref& operator=(const json_ref&) = delete;
        method json_ref (line 11017) | json_ref& operator=(json_ref&&) = delete;
        method value_type (line 11020) | value_type moved_or_copied() const
        method value_type (line 11029) | value_type const& operator*() const
        method value_type (line 11034) | value_type const* operator->() const
      type output_adapter_protocol (line 11086) | struct output_adapter_protocol
      class output_vector_adapter (line 11099) | class output_vector_adapter : public output_adapter_protocol<CharType>
        method output_vector_adapter (line 11102) | explicit output_vector_adapter(std::vector<CharType>& vec) noexcept
        method write_character (line 11106) | void write_character(CharType c) override
        method JSON_HEDLEY_NON_NULL (line 11111) | JSON_HEDLEY_NON_NULL(2)
      class output_stream_adapter (line 11123) | class output_stream_adapter : public output_adapter_protocol<CharType>
        method output_stream_adapter (line 11126) | explicit output_stream_adapter(std::basic_ostream<CharType>& s) no...
        method write_character (line 11130) | void write_character(CharType c) override
        method JSON_HEDLEY_NON_NULL (line 11135) | JSON_HEDLEY_NON_NULL(2)
      class output_string_adapter (line 11147) | class output_string_adapter : public output_adapter_protocol<CharType>
        method output_string_adapter (line 11150) | explicit output_string_adapter(StringType& s) noexcept
        method write_character (line 11154) | void write_character(CharType c) override
        method JSON_HEDLEY_NON_NULL (line 11159) | JSON_HEDLEY_NON_NULL(2)
      class output_adapter (line 11170) | class output_adapter
        method output_adapter (line 11173) | output_adapter(std::vector<CharType>& vec)
        method output_adapter (line 11176) | output_adapter(std::basic_ostream<CharType>& s)
        method output_adapter (line 11179) | output_adapter(StringType& s)
      class binary_writer (line 11206) | class binary_writer
        method binary_writer (line 11216) | explicit binary_writer(output_adapter_t<CharType> adapter) : oa(ad...
        method write_bson (line 11225) | void write_bson(const BasicJsonType& j)
        method write_cbor (line 11245) | void write_cbor(const BasicJsonType& j)
        method write_msgpack (line 11489) | void write_msgpack(const BasicJsonType& j)
        method write_ubjson (line 11731) | void write_ubjson(const BasicJsonType& j, const bool use_count,
        method calc_bson_entry_header_size (line 11895) | static std::size_t calc_bson_entry_header_size(const string_t& name)
        method write_bson_entry_header (line 11910) | void write_bson_entry_header(const string_t& name,
        method write_bson_boolean (line 11922) | void write_bson_boolean(const string_t& name,
        method write_bson_double (line 11932) | void write_bson_double(const string_t& name,
        method calc_bson_string_size (line 11942) | static std::size_t calc_bson_string_size(const string_t& value)
        method write_bson_string (line 11950) | void write_bson_string(const string_t& name,
        method write_bson_null (line 11964) | void write_bson_null(const string_t& name)
        method calc_bson_integer_size (line 11972) | static std::size_t calc_bson_integer_size(const std::int64_t value)
        method write_bson_integer (line 11982) | void write_bson_integer(const string_t& name,
        method calc_bson_unsigned_size (line 12000) | static constexpr std::size_t calc_bson_unsigned_size(const std::ui...
        method write_bson_unsigned (line 12010) | void write_bson_unsigned(const string_t& name,
        method write_bson_object_entry (line 12032) | void write_bson_object_entry(const string_t& name,
        method calc_bson_array_size (line 12042) | static std::size_t calc_bson_array_size(const typename BasicJsonTy...
        method write_bson_array (line 12058) | void write_bson_array(const string_t& name,
        method calc_bson_element_size (line 12078) | static std::size_t calc_bson_element_size(const string_t& name,
        method write_bson_element (line 12123) | void write_bson_element(const string_t& name,
        method calc_bson_object_size (line 12166) | static std::size_t calc_bson_object_size(const typename BasicJsonT...
        method write_bson_object (line 12181) | void write_bson_object(const typename BasicJsonType::object_t& value)
        method CharType (line 12197) | static constexpr CharType get_cbor_float_prefix(float /*unused*/)
        method CharType (line 12202) | static constexpr CharType get_cbor_float_prefix(double /*unused*/)
        method CharType (line 12211) | static constexpr CharType get_msgpack_float_prefix(float /*unused*/)
        method CharType (line 12216) | static constexpr CharType get_msgpack_float_prefix(double /*unused*/)
        method write_number_with_ubjson_prefix (line 12228) | void write_number_with_ubjson_prefix(const NumberType n,
        method write_number_with_ubjson_prefix (line 12241) | void write_number_with_ubjson_prefix(const NumberType n,
        method write_number_with_ubjson_prefix (line 12294) | void write_number_with_ubjson_prefix(const NumberType n,
        method CharType (line 12354) | CharType ubjson_prefix(const BasicJsonType& j) const noexcept
        method CharType (line 12425) | static constexpr CharType get_ubjson_float_prefix(float /*unused*/)
        method CharType (line 12430) | static constexpr CharType get_ubjson_float_prefix(double /*unused*/)
        method write_number (line 12451) | void write_number(const NumberType n)
        method CharType (line 12474) | static constexpr CharType to_char_type(std::uint8_t x) noexcept
        method CharType (line 12481) | static CharType to_char_type(std::uint8_t x) noexcept
        method CharType (line 12492) | static constexpr CharType to_char_type(std::uint8_t x) noexcept
        method CharType (line 12503) | static constexpr CharType to_char_type(InputCharType x) noexcept
      type dtoa_impl (line 12575) | namespace dtoa_impl
        function Target (line 12579) | Target reinterpret_bits(const Source source)
        type diyfp (line 12588) | struct diyfp // f * 2^e
          method diyfp (line 12595) | constexpr diyfp(std::uint64_t f_, int e_) noexcept : f(f_), e(e_...
          method diyfp (line 12601) | static diyfp sub(const diyfp& x, const diyfp& y) noexcept
          method diyfp (line 12613) | static diyfp mul(const diyfp& x, const diyfp& y) noexcept
          method diyfp (line 12678) | static diyfp normalize(diyfp x) noexcept
          method diyfp (line 12695) | static diyfp normalize_to(const diyfp& x, const int target_expon...
        type boundaries (line 12706) | struct boundaries
        function boundaries (line 12720) | boundaries compute_boundaries(FloatType value)
        type cached_power (line 12845) | struct cached_power // c = f * 2^e ~= 10^k
        function cached_power (line 12859) | inline cached_power get_cached_power_for_binary_exponent(int e)
        function find_largest_pow10 (line 13023) | inline int find_largest_pow10(const std::uint32_t n, std::uint32_t...
        function grisu2_round (line 13079) | inline void grisu2_round(char* buf, int len, std::uint64_t dist, s...
        function grisu2_digit_gen (line 13120) | inline void grisu2_digit_gen(char* buffer, int& length, int& decim...
        function grisu2 (line 13361) | inline void grisu2(char* buf, int& len, int& decimal_exponent,
        function JSON_HEDLEY_NON_NULL (line 13420) | JSON_HEDLEY_NON_NULL(1)
      type error_handler_t (line 13668) | enum class error_handler_t
      class serializer (line 13676) | class serializer
        method serializer (line 13691) | serializer(output_adapter_t<char> s, const char ichar,
        method serializer (line 13703) | serializer(const serializer&) = delete;
        method serializer (line 13704) | serializer& operator=(const serializer&) = delete;
        method serializer (line 13705) | serializer(serializer&&) = delete;
        method serializer (line 13706) | serializer& operator=(serializer&&) = delete;
        method dump (line 13726) | void dump(const BasicJsonType& val, const bool pretty_print,
        method dump_escaped (line 13936) | void dump_escaped(const string_t& s, const bool ensure_ascii)
        method count_digits (line 14192) | inline unsigned int count_digits(number_unsigned_t x) noexcept
        method dump_integer (line 14231) | void dump_integer(NumberType x)
        method dump_float (line 14317) | void dump_float(number_float_t x)
        method dump_float (line 14338) | void dump_float(number_float_t x, std::true_type /*is_ieee_single_...
        method dump_float (line 14346) | void dump_float(number_float_t x, std::false_type /*is_ieee_single...
        method decode (line 14416) | static std::uint8_t decode(std::uint8_t& state, std::uint32_t& cod...
    type detail (line 1740) | namespace detail
      type position_t (line 89) | struct position_t
      class exception (line 1774) | class exception : public std::exception
        method JSON_HEDLEY_RETURNS_NON_NULL (line 1778) | JSON_HEDLEY_RETURNS_NON_NULL
        m
Condensed preview — 130 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (4,113K chars).
[
  {
    "path": ".github/workflows/build.yml",
    "chars": 5746,
    "preview": "name: Compile\n\non: [push]\n\njobs:\n  build-mac:\n    runs-on: macos-latest\n    steps:\n      - uses: actions/checkout@v2\n   "
  },
  {
    "path": ".gitignore",
    "chars": 306,
    "preview": "# Compiled Object files\n*.slo\n*.lo\n*.o\n*.obj\n\n# Precompiled Headers\n*.gch\n*.pch\n\n# Compiled Dynamic libraries\n*.so\n*.dyl"
  },
  {
    "path": ".gitmodules",
    "chars": 287,
    "preview": "[submodule \"lib/lb_common\"]\n\tpath = lib/lb_common\n\turl = https://github.com/leecbaker/lb_common.git\n[submodule \"lib/json"
  },
  {
    "path": ".vscode/c_cpp_properties.json",
    "chars": 641,
    "preview": "{\n    \"configurations\": [\n        {\n            \"name\": \"Mac\",\n            \"includePath\": [\n                \"${workspace"
  },
  {
    "path": "CMakeLists.txt",
    "chars": 449,
    "preview": "cmake_policy(VERSION 3.15)\n\nproject(datareftool LANGUAGES C CXX VERSION 2.0.0)\n\ncmake_minimum_required(VERSION 3.15)\n\nse"
  },
  {
    "path": "CNAME",
    "chars": 15,
    "preview": "datareftool.com"
  },
  {
    "path": "INSTALL.txt",
    "chars": 1108,
    "preview": "DataRefTool Install Instructions\n\nBy Lee Baker\ndatareftool.com\n\nDOWNLOADING\n\nTo download DRT, please visit datareftool.c"
  },
  {
    "path": "LICENSE",
    "chars": 1082,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2015-2021 Lee Baker\n\nPermission is hereby granted, free of charge, to any person ob"
  },
  {
    "path": "README.md",
    "chars": 7575,
    "preview": "# DataRefTool has moved to DataRefTool.com\n\nAll future activity will be at [DataRefTool.com](https://datareftool.com).\n\n"
  },
  {
    "path": "_config.yml",
    "chars": 56,
    "preview": "theme: jekyll-theme-architect\nexclude: [\"lib/\", \"src/\"]\n"
  },
  {
    "path": "doc/API.md",
    "chars": 2842,
    "preview": "# DataRefTool API\n\nDRT has a search API for 3rd party plugins. With this, other plugins can request a list of commands o"
  },
  {
    "path": "lib/CMakeLists.txt",
    "chars": 317,
    "preview": "\nadd_subdirectory(clipboard)\nadd_subdirectory(json EXCLUDE_FROM_ALL)\nadd_subdirectory(xplane_sdk)\n\nadd_subdirectory(glew"
  },
  {
    "path": "lib/clipboard/CMakeLists.txt",
    "chars": 557,
    "preview": "if(APPLE)\n\tFILE(GLOB CLIPBOARD_SRC \"${CMAKE_CURRENT_SOURCE_DIR}/*mac.mm\")\nELSEIF(WIN32)\n\tFILE(GLOB CLIPBOARD_SRC \"${CMAK"
  },
  {
    "path": "lib/clipboard/clipboard.h",
    "chars": 103,
    "preview": "#pragma once\n\n#include <string>\n\nstd::string getClipboard();\nvoid setClipboard(const std::string & s);\n"
  },
  {
    "path": "lib/clipboard/clipboard_linux.cpp",
    "chars": 2294,
    "preview": "#include \"clipboard.h\"\n\n#include <X11/Xlib.h>\n#include <X11/Xatom.h>\n\n#include <iostream>\n\n//implementation from @jason-"
  },
  {
    "path": "lib/clipboard/clipboard_mac.mm",
    "chars": 530,
    "preview": "#include \"clipboard.h\"\n\n#import <Appkit/Appkit.h>\n\n\nstd::string getClipboard() {\n\tNSString * contents = [[NSPasteboard g"
  },
  {
    "path": "lib/clipboard/clipboard_win.cpp",
    "chars": 840,
    "preview": "#include <windows.h>\n\n#include \"clipboard.h\"\n\n\nstd::string getClipboard() {\n\tstd::string ret;\n\n\tif (TRUE == OpenClipboar"
  },
  {
    "path": "lib/glew/CMakeLists.txt",
    "chars": 362,
    "preview": "add_library(glew STATIC glew.c)\ntarget_compile_definitions(glew PUBLIC GLEW_STATIC)\ntarget_include_directories(glew INTE"
  },
  {
    "path": "lib/glew/eglew.h",
    "chars": 106209,
    "preview": "/*\r\n** The OpenGL Extension Wrangler Library\r\n** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>\r"
  },
  {
    "path": "lib/glew/glew.c",
    "chars": 1264346,
    "preview": "/*\r\n** The OpenGL Extension Wrangler Library\r\n** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>\r"
  },
  {
    "path": "lib/glew/glew.h",
    "chars": 1210287,
    "preview": "/*\r\n** The OpenGL Extension Wrangler Library\r\n** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>\r"
  },
  {
    "path": "lib/glew/glxew.h",
    "chars": 75207,
    "preview": "/*\r\n** The OpenGL Extension Wrangler Library\r\n** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>\r"
  },
  {
    "path": "lib/glew/wglew.h",
    "chars": 64761,
    "preview": "/*\r\n** The OpenGL Extension Wrangler Library\r\n** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>\r"
  },
  {
    "path": "lib/lb_xplane/CMakeLists.txt",
    "chars": 998,
    "preview": "FILE(GLOB LB_XPLANE_SRC \"${CMAKE_CURRENT_SOURCE_DIR}/*.cpp\")\nFILE(GLOB LB_XPLANE_HDR \"${CMAKE_CURRENT_SOURCE_DIR}/*.h\")\n"
  },
  {
    "path": "lib/lb_xplane/command.h",
    "chars": 1825,
    "preview": "#pragma once\n\n#include <exception>\n#include <string>\n\n#include \"XPLMUtilities.h\"\n\nclass CommandrefError : public std::ex"
  },
  {
    "path": "lib/lb_xplane/command_provider.cpp",
    "chars": 1355,
    "preview": "#include \"command_provider.h\"\n\n#include \"logging.h\"\n\nCommandProvider::CommandProvider(std::string name, std::string desc"
  },
  {
    "path": "lib/lb_xplane/command_provider.h",
    "chars": 821,
    "preview": "#pragma once\n\n#include \"XPLMUtilities.h\"\n\n#include <functional>\n#include <string>\n\nclass CommandProvider {\n    XPLMComma"
  },
  {
    "path": "lib/lb_xplane/dataref.h",
    "chars": 9375,
    "preview": "#pragma once\n\n#include <algorithm>\n#include <exception>\n#include <optional>\n#include <stdexcept>\n#include <string>\n#incl"
  },
  {
    "path": "lib/lb_xplane/dataref_provider.h",
    "chars": 6872,
    "preview": "#pragma once\n#include \"XPLMDataAccess.h\"\n\n#include <functional>\n#include <string>\n\ntemplate <class Type>\nclass DatarefPr"
  },
  {
    "path": "lib/lb_xplane/flight_loop.h",
    "chars": 1627,
    "preview": "#pragma once\n\n#include \"flight_loop.h\"\n\n#include <functional>\n\n#include \"XPLMProcessing.h\"\n\ntemplate <class T>\nclass Fli"
  },
  {
    "path": "lib/lb_xplane/logging.cpp",
    "chars": 1215,
    "preview": "#include \"logging.h\"\n\nXPLogAggregator xplog_aggregator;\nXPLogAggregator xplog_debug_aggregator;\n\nthread_local XPLogger x"
  },
  {
    "path": "lib/lb_xplane/logging.h",
    "chars": 2298,
    "preview": "#pragma once\n\n#include <ostream>\n#include <streambuf>\n\n#include \"XPLMProcessing.h\"\n#include \"XPLMUtilities.h\"\n\n#include "
  },
  {
    "path": "lib/lb_xplane/menus.cpp",
    "chars": 282,
    "preview": "#include \"menus.h\"\n\nvoid Menu::PluginMenuHandler(void * inMenuRef, void * inItemRef) {\n    intptr_t item_id = reinterpre"
  },
  {
    "path": "lib/lb_xplane/menus.h",
    "chars": 2113,
    "preview": "#pragma once\n\n#include <cassert>\n#include <functional>\n#include <string>\n#include <vector>\n\n#include \"XPLMMenus.h\"\n\nclas"
  },
  {
    "path": "lib/lb_xplane_ui/CMakeLists.txt",
    "chars": 1998,
    "preview": "FILE(GLOB LB_XPLANE_UI_SRC \"${CMAKE_CURRENT_SOURCE_DIR}/*.cpp\" \"${CMAKE_CURRENT_SOURCE_DIR}/container/*.cpp\" \"${CMAKE_CU"
  },
  {
    "path": "lib/lb_xplane_ui/container/container.cpp",
    "chars": 2056,
    "preview": "#include \"container.h\"\n\n\nbool WidgetsContainer::mouseWheel(Point point, int wheel, int clicks) {\n    for(std::shared_ptr"
  },
  {
    "path": "lib/lb_xplane_ui/container/container.h",
    "chars": 4949,
    "preview": "#pragma once\n\n#include <memory>\n#include <unordered_set>\n#include <vector>\n\n#include \"XPLMDataAccess.h\"\n#include \"XPLMDe"
  },
  {
    "path": "lib/lb_xplane_ui/container/scroll.cpp",
    "chars": 6903,
    "preview": "#include \"scroll.h\"\n\n#include <XPLMGraphics.h>\n\n#include \"../widgets/scroll_bar.h\"\n\n#include \"../draw_basic.h\"\n#include "
  },
  {
    "path": "lib/lb_xplane_ui/container/scroll.h",
    "chars": 2548,
    "preview": "#pragma once\n\n#include \"container.h\"\n\n#include <algorithm>\n\nclass VerticalScrollBar;\n\n// Simple scrollview. Has a scroll"
  },
  {
    "path": "lib/lb_xplane_ui/container/single_axis_layout.cpp",
    "chars": 4160,
    "preview": "#include \"single_axis_layout.h\"\n\n#include <iterator>\n#include <numeric>\n\n\ntemplate<int Size::* p_member>\nstruct LayoutGe"
  },
  {
    "path": "lib/lb_xplane_ui/container/single_axis_layout.h",
    "chars": 2823,
    "preview": "#pragma once\n\n#include \"container.h\"\n\n#include <memory>\n#include <vector>\n\n\n/// This is very similar to BoxLayout in Spr"
  },
  {
    "path": "lib/lb_xplane_ui/containers.h",
    "chars": 119,
    "preview": "#pragma once\n\n#include \"container/container.h\"\n#include \"container/scroll.h\"\n#include \"container/single_axis_layout.h\"\n"
  },
  {
    "path": "lib/lb_xplane_ui/draw_basic.cpp",
    "chars": 2002,
    "preview": "#include \"draw_basic.h\"\n\n#include \"gl_utils.h\"\n\n#include <XPLMGraphics.h>\n\n#define TEXT_DEFAULT_HEIGHT 12\n\nvoid drawRect"
  },
  {
    "path": "lib/lb_xplane_ui/draw_basic.h",
    "chars": 294,
    "preview": "#pragma once\n\n#include \"geometry.h\"\n\n#include <array>\n#include <string>\n\nvoid drawRect(Rectf bounds);\nvoid drawRoundRect"
  },
  {
    "path": "lib/lb_xplane_ui/geometry.h",
    "chars": 2584,
    "preview": "#pragma once\n\n#include <algorithm>\n#include <optional>\n\nstruct Point {\n    int x, y;\n\n    [[nodiscard]] Point translated"
  },
  {
    "path": "lib/lb_xplane_ui/gl_utils.cpp",
    "chars": 4721,
    "preview": "#include \"gl_utils.h\"\n#include <png.h>\n#include <cassert>\n#include <cerrno>\n#include <cstdlib>\n#include <cstring>\n#inclu"
  },
  {
    "path": "lib/lb_xplane_ui/gl_utils.h",
    "chars": 470,
    "preview": "#pragma once\n\n#include <array>\n\n#include \"glew.h\"\n\n#include <filesystem.h>\n\nbool png_texture_load(std::ostream & log, co"
  },
  {
    "path": "lib/lb_xplane_ui/layout_object.cpp",
    "chars": 506,
    "preview": "#include \"layout_object.h\"\n\n\n// Send a key press to the object that will handle it. Start first with the object\n// with "
  },
  {
    "path": "lib/lb_xplane_ui/layout_object.h",
    "chars": 2388,
    "preview": "#pragma once\n\n#include \"geometry.h\"\n\n#include <algorithm>\n\n#include \"XPLMDisplay.h\"\n\n///\nclass LayoutObject {\nprotected:"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/button.cpp",
    "chars": 4020,
    "preview": "#include \"button.h\"\n\n#include <XPLMGraphics.h>\n\n#include \"../draw_basic.h\"\n#include \"../gl_utils.h\"\n\nvoid Widget11Button"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/button.h",
    "chars": 2065,
    "preview": "#pragma once\n\n#include <cmath>\n#include <functional>\n#include <string>\n\n#include \"../geometry.h\"\n\n#include \"widget.h\"\n\n/"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/horizontal_bar.cpp",
    "chars": 383,
    "preview": "#include \"horizontal_bar.h\"\n\n#include <XPLMGraphics.h>\n\n#include \"../gl_utils.h\"\n\nvoid Widget11HorizontalBar::draw(Rect)"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/horizontal_bar.h",
    "chars": 263,
    "preview": "#pragma once\n\n#include \"widget.h\"\n\nclass Widget11HorizontalBar : public Widget11 {\npublic:\n    Widget11HorizontalBar() ="
  },
  {
    "path": "lib/lb_xplane_ui/widgets/image.cpp",
    "chars": 974,
    "preview": "#include \"image.h\"\n\n#include <XPLMGraphics.h>\n\n#include \"../gl_utils.h\"\n\nvoid Widget11Image::draw(Rect) {\n\n    float lef"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/image.h",
    "chars": 544,
    "preview": "#pragma once\n\n#include \"widget.h\"\n\n#include <filesystem.h>\n\nclass Widget11Image : public Widget11 {\n    int texture_id ="
  },
  {
    "path": "lib/lb_xplane_ui/widgets/progress.cpp",
    "chars": 1087,
    "preview": "#include \"progress.h\"\n\n#include <cmath>\n\n#include \"../gl_utils.h\"\n\n#include \"XPLMGraphics.h\"\n\nvoid Widget11Progress::dra"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/progress.h",
    "chars": 439,
    "preview": "#pragma once\n\n#include \"widget.h\"\n\nclass Widget11Progress : public Widget11 {\nprotected:\n    float fraction_ = 0.f;\npubl"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/scroll_bar.cpp",
    "chars": 1256,
    "preview": "#include \"scroll_bar.h\"\n\n#include \"../container/scroll.h\"\n\n#include \"../draw_basic.h\"\n#include \"../gl_utils.h\"\n\n#include"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/scroll_bar.h",
    "chars": 698,
    "preview": "// Vertical scroll bar for use with the scroll container\n#pragma once\n\n#include \"widget.h\"\n\nclass ScrollContainer;\n\nclas"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/spacer.h",
    "chars": 274,
    "preview": "#pragma once\n\nclass Widget11Spacer : public Widget11 {\n    Size min_size;\npublic:\n    Widget11Spacer(Size min_size = {0,"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/text.cpp",
    "chars": 1144,
    "preview": "#include \"text.h\"\n\n#include <XPLMGraphics.h>\n\n// TODO: line wrap\nvoid Widget11Text::setText(const std::string & text) {\n"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/text.h",
    "chars": 721,
    "preview": "#pragma once\n\n#include \"widget.h\"\n\n#include <array>\n#include <string>\n#include <vector>\n\nclass Widget11Text : public Wid"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/text_field.cpp",
    "chars": 12955,
    "preview": "\n#include \"text_field.h\"\n\n#include <cmath>\n\n#include \"clipboard.h\"\n\n#include \"../draw_basic.h\"\n\n#include <XPLMGraphics.h"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/text_field.h",
    "chars": 1577,
    "preview": "#pragma once\n\n#include <functional>\n#include <string>\n\n#include \"widget.h\"\n\nclass Widget11TextField : public Widget11 {\n"
  },
  {
    "path": "lib/lb_xplane_ui/widgets/widget.h",
    "chars": 1657,
    "preview": "#pragma once\n\n#include \"../geometry.h\"\n#include \"../layout_object.h\"\n\n/// Abstract interface for a widget.\nclass Widget1"
  },
  {
    "path": "lib/lb_xplane_ui/widgets.h",
    "chars": 221,
    "preview": "#pragma once\n\n#include \"widgets/button.h\"\n#include \"widgets/horizontal_bar.h\"\n#include \"widgets/image.h\"\n#include \"widge"
  },
  {
    "path": "lib/lb_xplane_ui/window11.cpp",
    "chars": 12944,
    "preview": "#include \"window11.h\"\n\n#include \"XPWidgets.h\"\n#include \"XPLMGraphics.h\"\n\n#include \"gl_utils.h\"\n#include \"logging.h\"\n\n#in"
  },
  {
    "path": "lib/lb_xplane_ui/window11.h",
    "chars": 7106,
    "preview": "#pragma once\n\n#include <memory>\n#include <string>\n#include <vector>\n\n#include \"XPLMDisplay.h\"\n#include \"XPWidgetDefs.h\"\n"
  },
  {
    "path": "lib/mio/CMakeLists.txt",
    "chars": 108,
    "preview": "\nadd_library(mio INTERFACE)\n\ntarget_include_directories(mio INTERFACE \"${CMAKE_CURRENT_SOURCE_DIR}/include\")"
  },
  {
    "path": "lib/mio/README.md",
    "chars": 446,
    "preview": "# MIO\n\nThis is the single-header version of Mio, a header-only, cross-platform library for memory mapped files.\n\nThis fi"
  },
  {
    "path": "lib/mio/include/mio.hpp",
    "chars": 59490,
    "preview": "/* Copyright 2017 https://github.com/mandreyel\n *\n * Permission is hereby granted, free of charge, to any person obtaini"
  },
  {
    "path": "lib/nlohmann/json.hpp",
    "chars": 801007,
    "preview": "/*\n    __ _____ _____ _____\n __|  |   __|     |   | |  JSON for Modern C++\n|  |  |__   |  |  | | | |  version 3.6.1\n|___"
  },
  {
    "path": "make_release_zip.sh",
    "chars": 381,
    "preview": "#!/bin/zsh\nset -e -u -x\n\nREVISION=$1\nDATE=`date +%Y_%m_%d`\nFOLDER=DataRefTool_${DATE}\n\nmkdir -p ${FOLDER}\ncd ${FOLDER}\n\n"
  },
  {
    "path": "scripts/make_keychain.sh",
    "chars": 1289,
    "preview": "#!/bin/bash\n\n# Largely based on the scripts in this:\n# https://github.com/marketplace/actions/import-code-signing-certif"
  },
  {
    "path": "src/CMakeLists.txt",
    "chars": 78,
    "preview": "add_subdirectory(drt_client)\nadd_subdirectory(libdrt)\nadd_subdirectory(plugin)"
  },
  {
    "path": "src/drt_client/CMakeLists.txt",
    "chars": 249,
    "preview": "\n\nFILE(GLOB DRT_CLIENT_SRC \"${CMAKE_CURRENT_SOURCE_DIR}/*.c\")\nFILE(GLOB DRT_CLIENT_HDR \"${CMAKE_CURRENT_SOURCE_DIR}/*.h\""
  },
  {
    "path": "src/drt_client/drt_client.c",
    "chars": 1803,
    "preview": "#include \"drt_client.h\"\n\n#include <XPLMPlugin.h>\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n/*\n * This message ID is sent "
  },
  {
    "path": "src/drt_client/drt_client.h",
    "chars": 2986,
    "preview": "#ifndef _DRT_CLIENT_H_\n#define _DRT_CLIENT_H_\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n/*\n * DRT search client API\n * Th"
  },
  {
    "path": "src/drt_client/example_queries.c",
    "chars": 5451,
    "preview": "#include \"example_queries.h\"\n\n#include \"drt_client.h\"\n\n#include <XPLMUtilities.h>\n\n#include <stdio.h>\n\n// For purposes o"
  },
  {
    "path": "src/drt_client/example_queries.h",
    "chars": 42,
    "preview": "#pragma once\n\nvoid run_example_queries();\n"
  },
  {
    "path": "src/drt_client/plugin.c",
    "chars": 1264,
    "preview": "#include <string.h>\n\n#include <XPLMPlugin.h>\n#include <XPLMProcessing.h>\n\n#include \"drt_client.h\"\n#include \"example_quer"
  },
  {
    "path": "src/libdrt/CMakeLists.txt",
    "chars": 1015,
    "preview": "SET(LIB_SCAN_SRC scan/scan_entity.cpp scan/scan_files.cpp)\nSET(LIB_SCAN_HDR scan/scan_entity.h scan/scan_files.h)\nSET(LI"
  },
  {
    "path": "src/libdrt/scan/deduplicate_vector.h",
    "chars": 253,
    "preview": "#pragma once\n\n#include <algorithm>\n#include <vector>\n\ntemplate <class T>\nvoid inline deduplicate_vector(std::vector<T> &"
  },
  {
    "path": "src/libdrt/scan/scan_entity.cpp",
    "chars": 6576,
    "preview": "#include \"scan_entity.h\"\n\n#include \"scan_files.h\"\n\n#include \"deduplicate_vector.h\"\n\n#include \"lb_string.h\"\n\n#include <al"
  },
  {
    "path": "src/libdrt/scan/scan_entity.h",
    "chars": 956,
    "preview": "#pragma once\n\n#include <algorithm>\n#include <ostream>\n#include <string>\n#include <vector>\n\n#include <filesystem.h>\n\n// S"
  },
  {
    "path": "src/libdrt/scan/scan_files.cpp",
    "chars": 2650,
    "preview": "#include \"scan_files.h\"\n\n#include \"deduplicate_vector.h\"\n\n#include <fstream>\n\n#include \"mio.hpp\"\n\nstd::vector<std::strin"
  },
  {
    "path": "src/libdrt/scan/scan_files.h",
    "chars": 471,
    "preview": "#pragma once\n\n#include <ostream>\n#include <string>\n#include <vector>\n\n#include <filesystem.h>\n\n// Load a file that lists"
  },
  {
    "path": "src/libdrt/search/allrefs.cpp",
    "chars": 5745,
    "preview": "\n#include \"allrefs.h\"\n#include \"search.h\"\n\n#include <algorithm>\n#include <functional>\n#include <fstream>\n#include <local"
  },
  {
    "path": "src/libdrt/search/allrefs.h",
    "chars": 2162,
    "preview": "#pragma once\n#include <array>\n#include <chrono>\n#include <cstddef>\n#include <cstring>\n#include <deque>\n#include <ostream"
  },
  {
    "path": "src/libdrt/search/commandref.cpp",
    "chars": 685,
    "preview": "#include \"commandref.h\"\n\n#include \"allrefs.h\"\n\nint CommandRefRecord::cr_callback(XPLMCommandRef /*inCommand*/, XPLMComma"
  },
  {
    "path": "src/libdrt/search/commandref.h",
    "chars": 1352,
    "preview": "#pragma once\n\n#include \"ref.h\"\n#include \"XPLMUtilities.h\"\n\nclass RefRecords;\n\nclass CommandRefRecord : public RefRecord "
  },
  {
    "path": "src/libdrt/search/dataref.cpp",
    "chars": 9699,
    "preview": "#include \"dataref.h\"\n\n#include \"../util/string_util.h\"\n\n#include <cassert>\n#include <cmath>\n#include <sstream>\n\n#include"
  },
  {
    "path": "src/libdrt/search/dataref.h",
    "chars": 4094,
    "preview": "#pragma once\n\n#include \"XPLMDataAccess.h\"\n\n#include <cassert>\n#include <chrono>\n#include <optional>\n#include <string>\n#i"
  },
  {
    "path": "src/libdrt/search/ref.cpp",
    "chars": 856,
    "preview": "#include \"ref.h\"\n\nstd::ostream & operator<<(std::ostream & o, const ref_src_t source) {\n    switch(source) {\n        cas"
  },
  {
    "path": "src/libdrt/search/ref.h",
    "chars": 1346,
    "preview": "#pragma once\n\n#include <chrono>\n#include <ostream>\n#include <string>\n\nenum class ref_src_t {\n    AIRCRAFT,\n    IGNORE_FI"
  },
  {
    "path": "src/libdrt/search/search.cpp",
    "chars": 7935,
    "preview": "#include \"search.h\"\n\n#include \"lb_string.h\"\n\nvoid SearchParams::setSearchTerms(const std::string & terms) {\n    search_f"
  },
  {
    "path": "src/libdrt/search/search.h",
    "chars": 5082,
    "preview": "#pragma once\n\n#include <algorithm>\n#include <chrono>\n#include <cstring>\n#include <regex>\n#include <vector>\n\n#include <lo"
  },
  {
    "path": "src/libdrt/util/string_util.cpp",
    "chars": 1469,
    "preview": "#include \"string_util.h\"\n\n#include \"lb_string.h\"\n\n\ntemplate <typename T>\ninline T parseElement(const std::string &s);\n\nt"
  },
  {
    "path": "src/libdrt/util/string_util.h",
    "chars": 744,
    "preview": "#pragma once\n\n#include <ostream>\n#include <string>\n#include <vector>\n\ntemplate <class T>\nbool parseArray(std::ostream & "
  },
  {
    "path": "src/libdrt/util/visit_backport.h",
    "chars": 981,
    "preview": "#pragma once\n\n#include <exception>\n\n// This is a backport of std::visit for OS X < 10.14. The necessary support for bad_"
  },
  {
    "path": "src/plugin/CMakeLists.txt",
    "chars": 619,
    "preview": "\n\nFILE(GLOB UI_SRC \"${CMAKE_CURRENT_SOURCE_DIR}/ui/*.cpp\")\nFILE(GLOB UI_HDR \"${CMAKE_CURRENT_SOURCE_DIR}/ui/*.h\")\nFILE(G"
  },
  {
    "path": "src/plugin/drt_datarefs.cpp",
    "chars": 2038,
    "preview": "#include \"drt_datarefs.h\"\n\n#include \"drt_plugin.h\"\n\n#include \"prefs.h\"\n\nDRTDatarefs::DRTDatarefs()\n: debug_mode(\"leecbak"
  },
  {
    "path": "src/plugin/drt_datarefs.h",
    "chars": 634,
    "preview": "#pragma once\n\n#include \"command_provider.h\"\n#include \"dataref_provider.h\"\n\nclass DRTDatarefs {\n    DatarefProvider<bool>"
  },
  {
    "path": "src/plugin/drt_plugin.cpp",
    "chars": 16794,
    "preview": "#include \"drt_plugin.h\"\n\n#include \"search_api.h\"\n#include \"logging.h\"\n#include \"prefs.h\"\n\n#include <memory>\n\n#include \"u"
  },
  {
    "path": "src/plugin/drt_plugin.h",
    "chars": 1601,
    "preview": "#pragma once\n\n#include \"plugin.h\"\n\n#include \"drt_datarefs.h\"\n\n#include \"plugin_menu.h\"\n#include \"threaded_scanner.h\"\n#in"
  },
  {
    "path": "src/plugin/internal_dataref_list.cpp",
    "chars": 50590,
    "preview": "#include \"internal_dataref_list.h\"\n\n#include \"lb_string.h\"\n\n// To generate this list: \n// cd X-Plane 11/Output/preferenc"
  },
  {
    "path": "src/plugin/internal_dataref_list.h",
    "chars": 95,
    "preview": "#pragma once\n\n#include <string>\n#include <vector>\n\nstd::vector<std::string> getInternalList();\n"
  },
  {
    "path": "src/plugin/next_flight_loop_callback.h",
    "chars": 1698,
    "preview": "#pragma once\n\n#include <functional>\n\n#include \"XPLMProcessing.h\"\n\n// The callback function returns a bool- true if the c"
  },
  {
    "path": "src/plugin/plugin.cpp",
    "chars": 2079,
    "preview": "#include \"plugin.h\"\n\n#include <ostream>\n\n#include <string.h> //memcpy\n\n#include \"drt_plugin.h\"\n\n#include \"prefs.h\"\n\n#inc"
  },
  {
    "path": "src/plugin/plugin.h",
    "chars": 641,
    "preview": "#pragma once\n\n#include <memory>\n#include <vector>\n\n#include \"nlohmann/json.hpp\"\n\n#include \"filesystem.h\"\n\nclass AboutWin"
  },
  {
    "path": "src/plugin/plugin_menu.cpp",
    "chars": 1536,
    "preview": "#include \"plugin_menu.h\"\n\n#include \"drt_plugin.h\"\n#include \"prefs.h\"\n\nusing namespace std::string_literals;\n\nPluginMenu:"
  },
  {
    "path": "src/plugin/plugin_menu.h",
    "chars": 396,
    "preview": "#pragma once\n\n#include <optional>\n\n#include \"menus.h\"\n\nclass PluginMenu {\n    std::optional<Menu> datareftool_menu;\n    "
  },
  {
    "path": "src/plugin/prefs.cpp",
    "chars": 2578,
    "preview": "#include \"prefs.h\"\n\n#include \"logging.h\"\n\n#include <fstream>\n\nbool auto_reload_plugins;\nbool impersonate_dre = false;\nbo"
  },
  {
    "path": "src/plugin/prefs.h",
    "chars": 524,
    "preview": "#pragma once\n\n#include <functional>\n\n#include \"nlohmann/json.hpp\"\n\n#include \"filesystem.h\"\n\nbool getAutoReloadPlugins();"
  },
  {
    "path": "src/plugin/search_api.cpp",
    "chars": 1718,
    "preview": "#include \"search_api.h\"\n\n#include \"../drt_client/drt_client.h\"\n\n#include \"drt_plugin.h\"\n\nvoid performSearchFromMessage(D"
  },
  {
    "path": "src/plugin/search_api.h",
    "chars": 197,
    "preview": "#pragma once\n\nextern \"C\" {\n    struct DRTSearchParameters_;\n    typedef struct DRTSearchParameters_ DRTSearchParameters;"
  },
  {
    "path": "src/plugin/threaded_scanner.cpp",
    "chars": 5445,
    "preview": "#include \"threaded_scanner.h\"\n\n#include \"scan/deduplicate_vector.h\"\n\n#include \"internal_dataref_list.h\"\n\n#include \"loggi"
  },
  {
    "path": "src/plugin/threaded_scanner.h",
    "chars": 1378,
    "preview": "#include <optional>\n#include <thread>\n#include <vector>\n\n#include <filesystem.h>\n\n#include \"search/ref.h\"\n#include \"../l"
  },
  {
    "path": "src/plugin/ui/about_window.cpp",
    "chars": 940,
    "preview": "#include \"about_window.h\"\n\n#include \"container/single_axis_layout.h\"\n#include \"widgets/text.h\"\n\n#include <memory>\n#inclu"
  },
  {
    "path": "src/plugin/ui/about_window.h",
    "chars": 118,
    "preview": "#pragma once\n\n#include \"window11.h\"\n\nclass AboutWindow : public Window11<AboutWindow> {\npublic:\n    AboutWindow();\n};\n"
  },
  {
    "path": "src/plugin/ui/commandref_window.cpp",
    "chars": 3502,
    "preview": "#include \"commandref_window.h\"\n\n#include <cstddef>\n#include <sstream>\n\n#include \"container/single_axis_layout.h\"\n#includ"
  },
  {
    "path": "src/plugin/ui/commandref_window.h",
    "chars": 666,
    "preview": "#pragma once\n\n#include \"window11.h\"\n\n#include <memory>\n#include \"geometry.h\"\n\nclass CommandRefRecord;\nclass SearchWindow"
  },
  {
    "path": "src/plugin/ui/dataref_edit_panel.cpp",
    "chars": 5943,
    "preview": "#include \"dataref_edit_panel.h\"\n\n#include \"widgets/button.h\"\n#include \"widgets/spacer.h\"\n\n#include \"search/dataref.h\"\n\n#"
  },
  {
    "path": "src/plugin/ui/dataref_edit_panel.h",
    "chars": 776,
    "preview": "#pragma once\n\n#include <chrono>\n\n#include \"containers.h\"\n#include \"widgets/text.h\"\n#include \"widgets/text_field.h\"\n\nclas"
  },
  {
    "path": "src/plugin/ui/dataref_window.cpp",
    "chars": 6955,
    "preview": "#include \"dataref_window.h\"\n\n#include <cassert>\n#include <sstream>\n\n#include \"container/single_axis_layout.h\"\n#include \""
  },
  {
    "path": "src/plugin/ui/dataref_window.h",
    "chars": 1201,
    "preview": "#pragma once\n\n#include <chrono>\n#include <memory>\n#include <vector>\n\n#include \"window11.h\"\n\nclass DataRefRecord;\nclass D"
  },
  {
    "path": "src/plugin/ui/search_window.cpp",
    "chars": 18548,
    "preview": "#include \"search_window.h\"\n\n#include \"clipboard.h\"\n\n#include \"container/scroll.h\"\n#include \"container/single_axis_layout"
  },
  {
    "path": "src/plugin/ui/search_window.h",
    "chars": 3099,
    "preview": "#pragma once\n\n#include <memory>\n\n#include \"window11.h\"\n\n#include \"search/search.h\"\n\nclass CommandRefRecord;\nclass DataRe"
  },
  {
    "path": "src/plugin/ui/selectable_list.cpp",
    "chars": 11112,
    "preview": "#include \"selectable_list.h\"\n\n#include \"XPLMGraphics.h\"\n\n#include \"draw_basic.h\"\n#include \"gl_utils.h\"\n\n#include \"search"
  },
  {
    "path": "src/plugin/ui/selectable_list.h",
    "chars": 4782,
    "preview": "#pragma once\n\n#include \"containers.h\"\n#include \"widgets/text.h\"\n\n#include <chrono>\n#include <functional>\n#include <memor"
  }
]

About this extraction

This page contains the full source code of the leecbaker/datareftool GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 130 files (3.8 MB), approximately 991.0k tokens, and a symbol index with 1790 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!