tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

GLDefs.h (4349B)


      1 /* This Source Code Form is subject to the terms of the Mozilla Public
      2 * License, v. 2.0. If a copy of the MPL was not distributed with this
      3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      4 
      5 #if !defined(LOCALGL_H_)
      6 #  define LOCALGL_H_
      7 
      8 #  include "GLTypes.h"
      9 #  include "GLConsts.h"
     10 
     11 namespace mozilla {
     12 namespace gl {
     13 class GLContext;
     14 bool CheckContextLost(const GLContext* gl);
     15 }  // namespace gl
     16 }  // namespace mozilla
     17 
     18 #  define MOZ_GL_ASSERT(glContext, expr) \
     19    MOZ_ASSERT((expr) || mozilla::gl::CheckContextLost(glContext))
     20 
     21 // -
     22 
     23 // clang-format off
     24 
     25 // TODO: use official constant names instead of followed ones.
     26 
     27 // IMG_texture_compression_pvrtc
     28 #define LOCAL_GL_COMPRESSED_RGB_PVRTC_4BPPV1            0x8C00
     29 #define LOCAL_GL_COMPRESSED_RGB_PVRTC_2BPPV1            0x8C01
     30 #define LOCAL_GL_COMPRESSED_RGBA_PVRTC_4BPPV1           0x8C02
     31 #define LOCAL_GL_COMPRESSED_RGBA_PVRTC_2BPPV1           0x8C03
     32 
     33 // OES_EGL_image_external
     34 #define LOCAL_GL_TEXTURE_EXTERNAL                       0x8D65
     35 #define LOCAL_GL_TEXTURE_BINDING_EXTERNAL               0x8D67
     36 
     37 // AMD_compressed_ATC_texture
     38 #define LOCAL_GL_ATC_RGB                                0x8C92
     39 #define LOCAL_GL_ATC_RGBA_EXPLICIT_ALPHA                0x8C93
     40 #define LOCAL_GL_ATC_RGBA_INTERPOLATED_ALPHA            0x87EE
     41 
     42 // EGL_ANDROID_image_crop
     43 #define LOCAL_EGL_IMAGE_CROP_LEFT_ANDROID               0x3148
     44 #define LOCAL_EGL_IMAGE_CROP_TOP_ANDROID                0x3149
     45 #define LOCAL_EGL_IMAGE_CROP_RIGHT_ANDROID              0x314A
     46 #define LOCAL_EGL_IMAGE_CROP_BOTTOM_ANDROID             0x314B
     47 
     48 // EGL_ANGLE_platform_angle
     49 #define LOCAL_EGL_PLATFORM_ANGLE_ANGLE                      0x3202
     50 #define LOCAL_EGL_PLATFORM_ANGLE_TYPE_ANGLE                 0x3203
     51 #define LOCAL_EGL_PLATFORM_ANGLE_MAX_VERSION_MAJOR_ANGLE    0x3204
     52 #define LOCAL_EGL_PLATFORM_ANGLE_MAX_VERSION_MINOR_ANGLE    0x3205
     53 #define LOCAL_EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE         0x3206
     54 #define LOCAL_EGL_PLATFORM_ANGLE_DEBUG_LAYERS_ENABLED_ANGLE 0x3451
     55 
     56 // EGL_ANGLE_keyed_mutex
     57 #define LOCAL_EGL_DXGI_KEYED_MUTEX_ANGLE                     0x33A2
     58 
     59 // EGL_ANGLE_stream_producer_d3d_texture
     60 #define LOCAL_EGL_D3D_TEXTURE_SUBRESOURCE_ID_ANGLE           0x33AB
     61 
     62 // EGL_ANGLE_platform_angle_d3d
     63 #define LOCAL_EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE              0x3207
     64 #define LOCAL_EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE             0x3208
     65 #define LOCAL_EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE            0x3209
     66 #define LOCAL_EGL_PLATFORM_ANGLE_DEVICE_TYPE_HARDWARE_ANGLE   0x320A
     67 #define LOCAL_EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE       0x320B
     68 #define LOCAL_EGL_PLATFORM_ANGLE_DEVICE_TYPE_REFERENCE_ANGLE  0x320C
     69 #define LOCAL_EGL_PLATFORM_ANGLE_ENABLE_AUTOMATIC_TRIM_ANGLE  0x320F
     70 
     71 // EGL_ANGLE_d3d_texture_client_buffer
     72 #define LOCAL_EGL_D3D_TEXTURE_ANGLE                          0x33A3
     73 
     74 // EGL_ANGLE_flexible_surface_compatibility
     75 #define LOCAL_EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE 0x33A6
     76 
     77 // EGL_ANGLE_experimental_present_path
     78 #define LOCAL_EGL_EXPERIMENTAL_PRESENT_PATH_ANGLE             0x33A4
     79 #define LOCAL_EGL_EXPERIMENTAL_PRESENT_PATH_FAST_ANGLE        0x33A9
     80 #define LOCAL_EGL_EXPERIMENTAL_PRESENT_PATH_COPY_ANGLE        0x33AA
     81 
     82 // EGL_ANGLE_direct3d_display
     83 #define LOCAL_EGL_D3D11_ELSE_D3D9_DISPLAY_ANGLE         ((EGLNativeDisplayType)-2)
     84 #define LOCAL_EGL_D3D11_ONLY_DISPLAY_ANGLE              ((EGLNativeDisplayType)-3)
     85 
     86 // EGL_ANGLE_feature_control
     87 #define LOCAL_EGL_FEATURE_OVERRIDES_ENABLED_ANGLE       0x3466
     88 
     89 // WGL_NV_DX_interop
     90 #define LOCAL_WGL_ACCESS_READ_ONLY                      0x0000
     91 #define LOCAL_WGL_ACCESS_READ_WRITE                     0x0001
     92 #define LOCAL_WGL_ACCESS_WRITE_DISCARD                  0x0002
     93 
     94 // Others
     95 #define LOCAL_EGL_PRESERVED_RESOURCES                   0x3030
     96 #define LOCAL_EGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
     97 #define LOCAL_GL_CONTEXT_FLAGS_ARB                      0x2094
     98 #define LOCAL_GL_CONTEXT_CORE_PROFILE_BIT_ARB           0x00000001
     99 #define LOCAL_GL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB  0x00000002
    100 #define LOCAL_GL_CONTEXT_ROBUST_ACCESS_BIT_ARB          0x00000004
    101 
    102 // EGL_ANGLE_create_context_backwards_compatible
    103 #define LOCAL_EGL_CONTEXT_OPENGL_BACKWARDS_COMPATIBLE_ANGLE 0x3483
    104 
    105 // EGL_ANGLE_image_d3d11_texture
    106 #define LOCAL_EGL_D3D11_TEXTURE_ANGLE                   0x3484
    107 
    108 // clang-format on
    109 
    110 #endif