webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
formatutilsgl.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 // formatutilsgl.h: Queries for GL image formats and their translations to native
8 // GL formats.
9 
10 #ifndef LIBANGLE_RENDERER_GL_FORMATUTILSGL_H_
11 #define LIBANGLE_RENDERER_GL_FORMATUTILSGL_H_
12 
13 #include <map>
14 #include <string>
15 #include <vector>
16 
17 #include "angle_gl.h"
18 #include "libANGLE/Version.h"
21 
22 namespace rx
23 {
24 
25 namespace nativegl
26 {
27 
29 {
31 
32  // Version that this format became supported without extensions
34 
35  // Extensions that are required if the minimum version is not met
36  std::vector<std::string> versionExtensions;
37 
38  // Extensions that are always required to support this format
39  std::vector<std::string> requiredExtensions;
40 };
41 
43 {
45 
50 };
52 
54 {
58 };
60  const WorkaroundsGL &workarounds,
62  GLenum format,
63  GLenum type);
64 
66 {
69 };
71  const WorkaroundsGL &workarounds,
72  GLenum format,
73  GLenum type);
74 
76 {
78 };
80  const WorkaroundsGL &workarounds,
82 
84 {
86 };
88  const WorkaroundsGL &workarounds,
89  GLenum format);
90 
92 {
94 };
96  const WorkaroundsGL &workarounds,
98  GLenum framebufferType);
99 
101 {
103 };
105  const WorkaroundsGL &workarounds,
107 
109 {
111 };
113  const WorkaroundsGL &workarounds,
115 
117 {
120 };
122  const WorkaroundsGL &workarounds,
123  GLenum format,
124  GLenum type);
125 }
126 
127 }
128 
129 #endif // LIBANGLE_RENDERER_GL_FORMATUTILSGL_H_
GLenum type
Definition: formatutilsgl.h:119
Definition: formatutilsgl.h:28
CompressedTexSubImageFormat GetCompressedSubTexImageFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum format)
Definition: formatutilsgl.cpp:507
GLenum internalFormat
Definition: formatutilsgl.h:102
std::vector< std::string > requiredExtensions
Definition: formatutilsgl.h:39
GLint GLint GLint GLsizei GLsizei GLenum format
Definition: gl2.h:403
GLenum internalFormat
Definition: formatutilsgl.h:93
Definition: WorkaroundsGL.h:15
Definition: formatutilsgl.h:65
Definition: formatutilsgl.h:75
GLuint GLint internalFormat
Definition: gl2ext.h:1280
Definition: formatutilsgl.h:53
TexSubImageFormat GetTexSubImageFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum format, GLenum type)
Definition: formatutilsgl.cpp:487
Definition: Version.h:17
GLenum format
Definition: formatutilsgl.h:118
StandardGL
Definition: FunctionsGL.h:20
unsigned int GLenum
Definition: gl2.h:69
RenderbufferFormat GetRenderbufferFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum internalFormat)
Definition: formatutilsgl.cpp:538
GLenum type
Definition: formatutilsgl.h:57
SupportRequirement filter
Definition: formatutilsgl.h:47
SupportRequirement framebufferAttachment
Definition: formatutilsgl.h:49
ReadPixelsFormat GetReadPixelsFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum format, GLenum type)
Definition: formatutilsgl.cpp:547
GLenum type
Definition: formatutilsgl.h:68
GLenum format
Definition: formatutilsgl.h:67
Definition: formatutilsgl.h:100
SupportRequirement renderbuffer
Definition: formatutilsgl.h:48
Definition: mathutil.h:804
Definition: FunctionsGL.h:26
GLenum internalFormat
Definition: formatutilsgl.h:55
Definition: formatutilsgl.h:116
GLenum internalFormat
Definition: formatutilsgl.h:110
SupportRequirement texture
Definition: formatutilsgl.h:46
gl::Version version
Definition: formatutilsgl.h:33
GLenum format
Definition: formatutilsgl.h:85
SupportRequirement()
Definition: formatutilsgl.cpp:23
TexImageFormat GetTexImageFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum internalFormat, GLenum format, GLenum type)
Definition: formatutilsgl.cpp:473
EGLenum type
Definition: eglext.h:63
Definition: formatutilsgl.h:108
const InternalFormat & GetInternalFormatInfo(GLenum internalFormat, StandardGL standard)
Definition: formatutilsgl.cpp:267
CopyTexImageImageFormat GetCopyTexImageImageFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum internalFormat, GLenum framebufferType)
Definition: formatutilsgl.cpp:516
GLenum format
Definition: formatutilsgl.h:56
Definition: formatutilsgl.h:91
CompressedTexImageFormat GetCompressedTexImageFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum internalFormat)
Definition: formatutilsgl.cpp:498
Definition: formatutilsgl.h:83
Definition: formatutilsgl.h:42
TexStorageFormat GetTexStorageFormat(const FunctionsGL *functions, const WorkaroundsGL &workarounds, GLenum internalFormat)
Definition: formatutilsgl.cpp:528
GLenum internalFormat
Definition: formatutilsgl.h:77
std::vector< std::string > versionExtensions
Definition: formatutilsgl.h:36