xref: /aosp_15_r20/external/angle/src/common/PackedGLEnums_autogen.h (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker // GENERATED FILE - DO NOT EDIT.
2*8975f5c5SAndroid Build Coastguard Worker // Generated by gen_packed_gl_enums.py using data from packed_gl_enums.json.
3*8975f5c5SAndroid Build Coastguard Worker //
4*8975f5c5SAndroid Build Coastguard Worker // Copyright 2017 The ANGLE Project Authors. All rights reserved.
5*8975f5c5SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
6*8975f5c5SAndroid Build Coastguard Worker // found in the LICENSE file.
7*8975f5c5SAndroid Build Coastguard Worker //
8*8975f5c5SAndroid Build Coastguard Worker // PackedGLEnums_autogen.h:
9*8975f5c5SAndroid Build Coastguard Worker //   Declares ANGLE-specific enums classes for GLenums and functions operating
10*8975f5c5SAndroid Build Coastguard Worker //   on them.
11*8975f5c5SAndroid Build Coastguard Worker 
12*8975f5c5SAndroid Build Coastguard Worker #ifndef COMMON_PACKEDGLENUMS_AUTOGEN_H_
13*8975f5c5SAndroid Build Coastguard Worker #define COMMON_PACKEDGLENUMS_AUTOGEN_H_
14*8975f5c5SAndroid Build Coastguard Worker 
15*8975f5c5SAndroid Build Coastguard Worker #include <angle_gl.h>
16*8975f5c5SAndroid Build Coastguard Worker 
17*8975f5c5SAndroid Build Coastguard Worker #include <cstdint>
18*8975f5c5SAndroid Build Coastguard Worker #include <ostream>
19*8975f5c5SAndroid Build Coastguard Worker 
20*8975f5c5SAndroid Build Coastguard Worker namespace gl
21*8975f5c5SAndroid Build Coastguard Worker {
22*8975f5c5SAndroid Build Coastguard Worker 
23*8975f5c5SAndroid Build Coastguard Worker template <typename Enum>
24*8975f5c5SAndroid Build Coastguard Worker Enum FromGLenum(GLenum from);
25*8975f5c5SAndroid Build Coastguard Worker 
26*8975f5c5SAndroid Build Coastguard Worker enum class AlphaTestFunc : uint8_t
27*8975f5c5SAndroid Build Coastguard Worker {
28*8975f5c5SAndroid Build Coastguard Worker     AlwaysPass = 0,
29*8975f5c5SAndroid Build Coastguard Worker     Equal      = 1,
30*8975f5c5SAndroid Build Coastguard Worker     Gequal     = 2,
31*8975f5c5SAndroid Build Coastguard Worker     Greater    = 3,
32*8975f5c5SAndroid Build Coastguard Worker     Lequal     = 4,
33*8975f5c5SAndroid Build Coastguard Worker     Less       = 5,
34*8975f5c5SAndroid Build Coastguard Worker     Never      = 6,
35*8975f5c5SAndroid Build Coastguard Worker     NotEqual   = 7,
36*8975f5c5SAndroid Build Coastguard Worker 
37*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 8,
38*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 8,
39*8975f5c5SAndroid Build Coastguard Worker };
40*8975f5c5SAndroid Build Coastguard Worker 
41*8975f5c5SAndroid Build Coastguard Worker template <>
42*8975f5c5SAndroid Build Coastguard Worker AlphaTestFunc FromGLenum<AlphaTestFunc>(GLenum from);
43*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(AlphaTestFunc from);
44*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, AlphaTestFunc value);
45*8975f5c5SAndroid Build Coastguard Worker 
46*8975f5c5SAndroid Build Coastguard Worker enum class BufferBinding : uint8_t
47*8975f5c5SAndroid Build Coastguard Worker {
48*8975f5c5SAndroid Build Coastguard Worker     Array             = 0,
49*8975f5c5SAndroid Build Coastguard Worker     AtomicCounter     = 1,
50*8975f5c5SAndroid Build Coastguard Worker     CopyRead          = 2,
51*8975f5c5SAndroid Build Coastguard Worker     CopyWrite         = 3,
52*8975f5c5SAndroid Build Coastguard Worker     DispatchIndirect  = 4,
53*8975f5c5SAndroid Build Coastguard Worker     DrawIndirect      = 5,
54*8975f5c5SAndroid Build Coastguard Worker     ElementArray      = 6,
55*8975f5c5SAndroid Build Coastguard Worker     PixelPack         = 7,
56*8975f5c5SAndroid Build Coastguard Worker     PixelUnpack       = 8,
57*8975f5c5SAndroid Build Coastguard Worker     ShaderStorage     = 9,
58*8975f5c5SAndroid Build Coastguard Worker     Texture           = 10,
59*8975f5c5SAndroid Build Coastguard Worker     TransformFeedback = 11,
60*8975f5c5SAndroid Build Coastguard Worker     Uniform           = 12,
61*8975f5c5SAndroid Build Coastguard Worker 
62*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 13,
63*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 13,
64*8975f5c5SAndroid Build Coastguard Worker };
65*8975f5c5SAndroid Build Coastguard Worker 
66*8975f5c5SAndroid Build Coastguard Worker template <>
67*8975f5c5SAndroid Build Coastguard Worker BufferBinding FromGLenum<BufferBinding>(GLenum from);
68*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(BufferBinding from);
69*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, BufferBinding value);
70*8975f5c5SAndroid Build Coastguard Worker 
71*8975f5c5SAndroid Build Coastguard Worker enum class BufferUsage : uint8_t
72*8975f5c5SAndroid Build Coastguard Worker {
73*8975f5c5SAndroid Build Coastguard Worker     DynamicCopy = 0,
74*8975f5c5SAndroid Build Coastguard Worker     DynamicDraw = 1,
75*8975f5c5SAndroid Build Coastguard Worker     DynamicRead = 2,
76*8975f5c5SAndroid Build Coastguard Worker     StaticCopy  = 3,
77*8975f5c5SAndroid Build Coastguard Worker     StaticDraw  = 4,
78*8975f5c5SAndroid Build Coastguard Worker     StaticRead  = 5,
79*8975f5c5SAndroid Build Coastguard Worker     StreamCopy  = 6,
80*8975f5c5SAndroid Build Coastguard Worker     StreamDraw  = 7,
81*8975f5c5SAndroid Build Coastguard Worker     StreamRead  = 8,
82*8975f5c5SAndroid Build Coastguard Worker 
83*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 9,
84*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 9,
85*8975f5c5SAndroid Build Coastguard Worker };
86*8975f5c5SAndroid Build Coastguard Worker 
87*8975f5c5SAndroid Build Coastguard Worker template <>
88*8975f5c5SAndroid Build Coastguard Worker BufferUsage FromGLenum<BufferUsage>(GLenum from);
89*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(BufferUsage from);
90*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, BufferUsage value);
91*8975f5c5SAndroid Build Coastguard Worker 
92*8975f5c5SAndroid Build Coastguard Worker enum class ClientVertexArrayType : uint8_t
93*8975f5c5SAndroid Build Coastguard Worker {
94*8975f5c5SAndroid Build Coastguard Worker     Color        = 0,
95*8975f5c5SAndroid Build Coastguard Worker     Normal       = 1,
96*8975f5c5SAndroid Build Coastguard Worker     PointSize    = 2,
97*8975f5c5SAndroid Build Coastguard Worker     TextureCoord = 3,
98*8975f5c5SAndroid Build Coastguard Worker     Vertex       = 4,
99*8975f5c5SAndroid Build Coastguard Worker 
100*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 5,
101*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 5,
102*8975f5c5SAndroid Build Coastguard Worker };
103*8975f5c5SAndroid Build Coastguard Worker 
104*8975f5c5SAndroid Build Coastguard Worker template <>
105*8975f5c5SAndroid Build Coastguard Worker ClientVertexArrayType FromGLenum<ClientVertexArrayType>(GLenum from);
106*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ClientVertexArrayType from);
107*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ClientVertexArrayType value);
108*8975f5c5SAndroid Build Coastguard Worker 
109*8975f5c5SAndroid Build Coastguard Worker enum class ClipDepthMode : uint8_t
110*8975f5c5SAndroid Build Coastguard Worker {
111*8975f5c5SAndroid Build Coastguard Worker     NegativeOneToOne = 0,
112*8975f5c5SAndroid Build Coastguard Worker     ZeroToOne        = 1,
113*8975f5c5SAndroid Build Coastguard Worker 
114*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 2,
115*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 2,
116*8975f5c5SAndroid Build Coastguard Worker };
117*8975f5c5SAndroid Build Coastguard Worker 
118*8975f5c5SAndroid Build Coastguard Worker template <>
119*8975f5c5SAndroid Build Coastguard Worker ClipDepthMode FromGLenum<ClipDepthMode>(GLenum from);
120*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ClipDepthMode from);
121*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ClipDepthMode value);
122*8975f5c5SAndroid Build Coastguard Worker 
123*8975f5c5SAndroid Build Coastguard Worker enum class ClipOrigin : uint8_t
124*8975f5c5SAndroid Build Coastguard Worker {
125*8975f5c5SAndroid Build Coastguard Worker     LowerLeft = 0,
126*8975f5c5SAndroid Build Coastguard Worker     UpperLeft = 1,
127*8975f5c5SAndroid Build Coastguard Worker 
128*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 2,
129*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 2,
130*8975f5c5SAndroid Build Coastguard Worker };
131*8975f5c5SAndroid Build Coastguard Worker 
132*8975f5c5SAndroid Build Coastguard Worker template <>
133*8975f5c5SAndroid Build Coastguard Worker ClipOrigin FromGLenum<ClipOrigin>(GLenum from);
134*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ClipOrigin from);
135*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ClipOrigin value);
136*8975f5c5SAndroid Build Coastguard Worker 
137*8975f5c5SAndroid Build Coastguard Worker enum class CullFaceMode : uint8_t
138*8975f5c5SAndroid Build Coastguard Worker {
139*8975f5c5SAndroid Build Coastguard Worker     Back         = 0,
140*8975f5c5SAndroid Build Coastguard Worker     Front        = 1,
141*8975f5c5SAndroid Build Coastguard Worker     FrontAndBack = 2,
142*8975f5c5SAndroid Build Coastguard Worker 
143*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 3,
144*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 3,
145*8975f5c5SAndroid Build Coastguard Worker };
146*8975f5c5SAndroid Build Coastguard Worker 
147*8975f5c5SAndroid Build Coastguard Worker template <>
148*8975f5c5SAndroid Build Coastguard Worker CullFaceMode FromGLenum<CullFaceMode>(GLenum from);
149*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(CullFaceMode from);
150*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, CullFaceMode value);
151*8975f5c5SAndroid Build Coastguard Worker 
152*8975f5c5SAndroid Build Coastguard Worker enum class FilterMode : uint8_t
153*8975f5c5SAndroid Build Coastguard Worker {
154*8975f5c5SAndroid Build Coastguard Worker     Nearest              = 0,
155*8975f5c5SAndroid Build Coastguard Worker     Linear               = 1,
156*8975f5c5SAndroid Build Coastguard Worker     NearestMipmapNearest = 2,
157*8975f5c5SAndroid Build Coastguard Worker     NearestMipmapLinear  = 3,
158*8975f5c5SAndroid Build Coastguard Worker     LinearMipmapLinear   = 4,
159*8975f5c5SAndroid Build Coastguard Worker 
160*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 5,
161*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 5,
162*8975f5c5SAndroid Build Coastguard Worker };
163*8975f5c5SAndroid Build Coastguard Worker 
164*8975f5c5SAndroid Build Coastguard Worker template <>
165*8975f5c5SAndroid Build Coastguard Worker FilterMode FromGLenum<FilterMode>(GLenum from);
166*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(FilterMode from);
167*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, FilterMode value);
168*8975f5c5SAndroid Build Coastguard Worker 
169*8975f5c5SAndroid Build Coastguard Worker enum class FogMode : uint8_t
170*8975f5c5SAndroid Build Coastguard Worker {
171*8975f5c5SAndroid Build Coastguard Worker     Exp    = 0,
172*8975f5c5SAndroid Build Coastguard Worker     Exp2   = 1,
173*8975f5c5SAndroid Build Coastguard Worker     Linear = 2,
174*8975f5c5SAndroid Build Coastguard Worker 
175*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 3,
176*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 3,
177*8975f5c5SAndroid Build Coastguard Worker };
178*8975f5c5SAndroid Build Coastguard Worker 
179*8975f5c5SAndroid Build Coastguard Worker template <>
180*8975f5c5SAndroid Build Coastguard Worker FogMode FromGLenum<FogMode>(GLenum from);
181*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(FogMode from);
182*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, FogMode value);
183*8975f5c5SAndroid Build Coastguard Worker 
184*8975f5c5SAndroid Build Coastguard Worker enum class GraphicsResetStatus : uint8_t
185*8975f5c5SAndroid Build Coastguard Worker {
186*8975f5c5SAndroid Build Coastguard Worker     NoError              = 0,
187*8975f5c5SAndroid Build Coastguard Worker     GuiltyContextReset   = 1,
188*8975f5c5SAndroid Build Coastguard Worker     InnocentContextReset = 2,
189*8975f5c5SAndroid Build Coastguard Worker     UnknownContextReset  = 3,
190*8975f5c5SAndroid Build Coastguard Worker     PurgedContextResetNV = 4,
191*8975f5c5SAndroid Build Coastguard Worker 
192*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 5,
193*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 5,
194*8975f5c5SAndroid Build Coastguard Worker };
195*8975f5c5SAndroid Build Coastguard Worker 
196*8975f5c5SAndroid Build Coastguard Worker template <>
197*8975f5c5SAndroid Build Coastguard Worker GraphicsResetStatus FromGLenum<GraphicsResetStatus>(GLenum from);
198*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(GraphicsResetStatus from);
199*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, GraphicsResetStatus value);
200*8975f5c5SAndroid Build Coastguard Worker 
201*8975f5c5SAndroid Build Coastguard Worker enum class HandleType : uint8_t
202*8975f5c5SAndroid Build Coastguard Worker {
203*8975f5c5SAndroid Build Coastguard Worker     OpaqueFd    = 0,
204*8975f5c5SAndroid Build Coastguard Worker     ZirconVmo   = 1,
205*8975f5c5SAndroid Build Coastguard Worker     ZirconEvent = 2,
206*8975f5c5SAndroid Build Coastguard Worker 
207*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 3,
208*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 3,
209*8975f5c5SAndroid Build Coastguard Worker };
210*8975f5c5SAndroid Build Coastguard Worker 
211*8975f5c5SAndroid Build Coastguard Worker template <>
212*8975f5c5SAndroid Build Coastguard Worker HandleType FromGLenum<HandleType>(GLenum from);
213*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(HandleType from);
214*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, HandleType value);
215*8975f5c5SAndroid Build Coastguard Worker 
216*8975f5c5SAndroid Build Coastguard Worker enum class HintSetting : uint8_t
217*8975f5c5SAndroid Build Coastguard Worker {
218*8975f5c5SAndroid Build Coastguard Worker     DontCare = 0,
219*8975f5c5SAndroid Build Coastguard Worker     Fastest  = 1,
220*8975f5c5SAndroid Build Coastguard Worker     Nicest   = 2,
221*8975f5c5SAndroid Build Coastguard Worker 
222*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 3,
223*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 3,
224*8975f5c5SAndroid Build Coastguard Worker };
225*8975f5c5SAndroid Build Coastguard Worker 
226*8975f5c5SAndroid Build Coastguard Worker template <>
227*8975f5c5SAndroid Build Coastguard Worker HintSetting FromGLenum<HintSetting>(GLenum from);
228*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(HintSetting from);
229*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, HintSetting value);
230*8975f5c5SAndroid Build Coastguard Worker 
231*8975f5c5SAndroid Build Coastguard Worker enum class ImageLayout : uint8_t
232*8975f5c5SAndroid Build Coastguard Worker {
233*8975f5c5SAndroid Build Coastguard Worker     Undefined                      = 0,
234*8975f5c5SAndroid Build Coastguard Worker     General                        = 1,
235*8975f5c5SAndroid Build Coastguard Worker     ColorAttachment                = 2,
236*8975f5c5SAndroid Build Coastguard Worker     DepthStencilAttachment         = 3,
237*8975f5c5SAndroid Build Coastguard Worker     DepthStencilReadOnlyAttachment = 4,
238*8975f5c5SAndroid Build Coastguard Worker     ShaderReadOnly                 = 5,
239*8975f5c5SAndroid Build Coastguard Worker     TransferSrc                    = 6,
240*8975f5c5SAndroid Build Coastguard Worker     TransferDst                    = 7,
241*8975f5c5SAndroid Build Coastguard Worker     DepthReadOnlyStencilAttachment = 8,
242*8975f5c5SAndroid Build Coastguard Worker     DepthAttachmentStencilReadOnly = 9,
243*8975f5c5SAndroid Build Coastguard Worker 
244*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 10,
245*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 10,
246*8975f5c5SAndroid Build Coastguard Worker };
247*8975f5c5SAndroid Build Coastguard Worker 
248*8975f5c5SAndroid Build Coastguard Worker template <>
249*8975f5c5SAndroid Build Coastguard Worker ImageLayout FromGLenum<ImageLayout>(GLenum from);
250*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ImageLayout from);
251*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ImageLayout value);
252*8975f5c5SAndroid Build Coastguard Worker 
253*8975f5c5SAndroid Build Coastguard Worker enum class LightParameter : uint8_t
254*8975f5c5SAndroid Build Coastguard Worker {
255*8975f5c5SAndroid Build Coastguard Worker     Ambient              = 0,
256*8975f5c5SAndroid Build Coastguard Worker     AmbientAndDiffuse    = 1,
257*8975f5c5SAndroid Build Coastguard Worker     ConstantAttenuation  = 2,
258*8975f5c5SAndroid Build Coastguard Worker     Diffuse              = 3,
259*8975f5c5SAndroid Build Coastguard Worker     LinearAttenuation    = 4,
260*8975f5c5SAndroid Build Coastguard Worker     Position             = 5,
261*8975f5c5SAndroid Build Coastguard Worker     QuadraticAttenuation = 6,
262*8975f5c5SAndroid Build Coastguard Worker     Specular             = 7,
263*8975f5c5SAndroid Build Coastguard Worker     SpotCutoff           = 8,
264*8975f5c5SAndroid Build Coastguard Worker     SpotDirection        = 9,
265*8975f5c5SAndroid Build Coastguard Worker     SpotExponent         = 10,
266*8975f5c5SAndroid Build Coastguard Worker 
267*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 11,
268*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 11,
269*8975f5c5SAndroid Build Coastguard Worker };
270*8975f5c5SAndroid Build Coastguard Worker 
271*8975f5c5SAndroid Build Coastguard Worker template <>
272*8975f5c5SAndroid Build Coastguard Worker LightParameter FromGLenum<LightParameter>(GLenum from);
273*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(LightParameter from);
274*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, LightParameter value);
275*8975f5c5SAndroid Build Coastguard Worker 
276*8975f5c5SAndroid Build Coastguard Worker enum class LogicalOperation : uint8_t
277*8975f5c5SAndroid Build Coastguard Worker {
278*8975f5c5SAndroid Build Coastguard Worker     And          = 0,
279*8975f5c5SAndroid Build Coastguard Worker     AndInverted  = 1,
280*8975f5c5SAndroid Build Coastguard Worker     AndReverse   = 2,
281*8975f5c5SAndroid Build Coastguard Worker     Clear        = 3,
282*8975f5c5SAndroid Build Coastguard Worker     Copy         = 4,
283*8975f5c5SAndroid Build Coastguard Worker     CopyInverted = 5,
284*8975f5c5SAndroid Build Coastguard Worker     Equiv        = 6,
285*8975f5c5SAndroid Build Coastguard Worker     Invert       = 7,
286*8975f5c5SAndroid Build Coastguard Worker     Nand         = 8,
287*8975f5c5SAndroid Build Coastguard Worker     Noop         = 9,
288*8975f5c5SAndroid Build Coastguard Worker     Nor          = 10,
289*8975f5c5SAndroid Build Coastguard Worker     Or           = 11,
290*8975f5c5SAndroid Build Coastguard Worker     OrInverted   = 12,
291*8975f5c5SAndroid Build Coastguard Worker     OrReverse    = 13,
292*8975f5c5SAndroid Build Coastguard Worker     Set          = 14,
293*8975f5c5SAndroid Build Coastguard Worker     Xor          = 15,
294*8975f5c5SAndroid Build Coastguard Worker 
295*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 16,
296*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 16,
297*8975f5c5SAndroid Build Coastguard Worker };
298*8975f5c5SAndroid Build Coastguard Worker 
299*8975f5c5SAndroid Build Coastguard Worker template <>
300*8975f5c5SAndroid Build Coastguard Worker LogicalOperation FromGLenum<LogicalOperation>(GLenum from);
301*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(LogicalOperation from);
302*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, LogicalOperation value);
303*8975f5c5SAndroid Build Coastguard Worker 
304*8975f5c5SAndroid Build Coastguard Worker enum class MaterialParameter : uint8_t
305*8975f5c5SAndroid Build Coastguard Worker {
306*8975f5c5SAndroid Build Coastguard Worker     Ambient           = 0,
307*8975f5c5SAndroid Build Coastguard Worker     AmbientAndDiffuse = 1,
308*8975f5c5SAndroid Build Coastguard Worker     Diffuse           = 2,
309*8975f5c5SAndroid Build Coastguard Worker     Emission          = 3,
310*8975f5c5SAndroid Build Coastguard Worker     Shininess         = 4,
311*8975f5c5SAndroid Build Coastguard Worker     Specular          = 5,
312*8975f5c5SAndroid Build Coastguard Worker 
313*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 6,
314*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 6,
315*8975f5c5SAndroid Build Coastguard Worker };
316*8975f5c5SAndroid Build Coastguard Worker 
317*8975f5c5SAndroid Build Coastguard Worker template <>
318*8975f5c5SAndroid Build Coastguard Worker MaterialParameter FromGLenum<MaterialParameter>(GLenum from);
319*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(MaterialParameter from);
320*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, MaterialParameter value);
321*8975f5c5SAndroid Build Coastguard Worker 
322*8975f5c5SAndroid Build Coastguard Worker enum class MatrixType : uint8_t
323*8975f5c5SAndroid Build Coastguard Worker {
324*8975f5c5SAndroid Build Coastguard Worker     Modelview  = 0,
325*8975f5c5SAndroid Build Coastguard Worker     Projection = 1,
326*8975f5c5SAndroid Build Coastguard Worker     Texture    = 2,
327*8975f5c5SAndroid Build Coastguard Worker 
328*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 3,
329*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 3,
330*8975f5c5SAndroid Build Coastguard Worker };
331*8975f5c5SAndroid Build Coastguard Worker 
332*8975f5c5SAndroid Build Coastguard Worker template <>
333*8975f5c5SAndroid Build Coastguard Worker MatrixType FromGLenum<MatrixType>(GLenum from);
334*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(MatrixType from);
335*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, MatrixType value);
336*8975f5c5SAndroid Build Coastguard Worker 
337*8975f5c5SAndroid Build Coastguard Worker enum class PointParameter : uint8_t
338*8975f5c5SAndroid Build Coastguard Worker {
339*8975f5c5SAndroid Build Coastguard Worker     PointSizeMin             = 0,
340*8975f5c5SAndroid Build Coastguard Worker     PointSizeMax             = 1,
341*8975f5c5SAndroid Build Coastguard Worker     PointFadeThresholdSize   = 2,
342*8975f5c5SAndroid Build Coastguard Worker     PointDistanceAttenuation = 3,
343*8975f5c5SAndroid Build Coastguard Worker 
344*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 4,
345*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 4,
346*8975f5c5SAndroid Build Coastguard Worker };
347*8975f5c5SAndroid Build Coastguard Worker 
348*8975f5c5SAndroid Build Coastguard Worker template <>
349*8975f5c5SAndroid Build Coastguard Worker PointParameter FromGLenum<PointParameter>(GLenum from);
350*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(PointParameter from);
351*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, PointParameter value);
352*8975f5c5SAndroid Build Coastguard Worker 
353*8975f5c5SAndroid Build Coastguard Worker enum class PolygonMode : uint8_t
354*8975f5c5SAndroid Build Coastguard Worker {
355*8975f5c5SAndroid Build Coastguard Worker     Point = 0,
356*8975f5c5SAndroid Build Coastguard Worker     Line  = 1,
357*8975f5c5SAndroid Build Coastguard Worker     Fill  = 2,
358*8975f5c5SAndroid Build Coastguard Worker 
359*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 3,
360*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 3,
361*8975f5c5SAndroid Build Coastguard Worker };
362*8975f5c5SAndroid Build Coastguard Worker 
363*8975f5c5SAndroid Build Coastguard Worker template <>
364*8975f5c5SAndroid Build Coastguard Worker PolygonMode FromGLenum<PolygonMode>(GLenum from);
365*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(PolygonMode from);
366*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, PolygonMode value);
367*8975f5c5SAndroid Build Coastguard Worker 
368*8975f5c5SAndroid Build Coastguard Worker enum class ProvokingVertexConvention : uint8_t
369*8975f5c5SAndroid Build Coastguard Worker {
370*8975f5c5SAndroid Build Coastguard Worker     FirstVertexConvention = 0,
371*8975f5c5SAndroid Build Coastguard Worker     LastVertexConvention  = 1,
372*8975f5c5SAndroid Build Coastguard Worker 
373*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 2,
374*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 2,
375*8975f5c5SAndroid Build Coastguard Worker };
376*8975f5c5SAndroid Build Coastguard Worker 
377*8975f5c5SAndroid Build Coastguard Worker template <>
378*8975f5c5SAndroid Build Coastguard Worker ProvokingVertexConvention FromGLenum<ProvokingVertexConvention>(GLenum from);
379*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ProvokingVertexConvention from);
380*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ProvokingVertexConvention value);
381*8975f5c5SAndroid Build Coastguard Worker 
382*8975f5c5SAndroid Build Coastguard Worker enum class QueryType : uint8_t
383*8975f5c5SAndroid Build Coastguard Worker {
384*8975f5c5SAndroid Build Coastguard Worker     AnySamples                         = 0,
385*8975f5c5SAndroid Build Coastguard Worker     AnySamplesConservative             = 1,
386*8975f5c5SAndroid Build Coastguard Worker     CommandsCompleted                  = 2,
387*8975f5c5SAndroid Build Coastguard Worker     PrimitivesGenerated                = 3,
388*8975f5c5SAndroid Build Coastguard Worker     TimeElapsed                        = 4,
389*8975f5c5SAndroid Build Coastguard Worker     Timestamp                          = 5,
390*8975f5c5SAndroid Build Coastguard Worker     TransformFeedbackPrimitivesWritten = 6,
391*8975f5c5SAndroid Build Coastguard Worker 
392*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 7,
393*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 7,
394*8975f5c5SAndroid Build Coastguard Worker };
395*8975f5c5SAndroid Build Coastguard Worker 
396*8975f5c5SAndroid Build Coastguard Worker template <>
397*8975f5c5SAndroid Build Coastguard Worker QueryType FromGLenum<QueryType>(GLenum from);
398*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(QueryType from);
399*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, QueryType value);
400*8975f5c5SAndroid Build Coastguard Worker 
401*8975f5c5SAndroid Build Coastguard Worker enum class ShaderType : uint8_t
402*8975f5c5SAndroid Build Coastguard Worker {
403*8975f5c5SAndroid Build Coastguard Worker     Vertex         = 0,
404*8975f5c5SAndroid Build Coastguard Worker     TessControl    = 1,
405*8975f5c5SAndroid Build Coastguard Worker     TessEvaluation = 2,
406*8975f5c5SAndroid Build Coastguard Worker     Geometry       = 3,
407*8975f5c5SAndroid Build Coastguard Worker     Fragment       = 4,
408*8975f5c5SAndroid Build Coastguard Worker     Compute        = 5,
409*8975f5c5SAndroid Build Coastguard Worker 
410*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 6,
411*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 6,
412*8975f5c5SAndroid Build Coastguard Worker };
413*8975f5c5SAndroid Build Coastguard Worker 
414*8975f5c5SAndroid Build Coastguard Worker template <>
415*8975f5c5SAndroid Build Coastguard Worker ShaderType FromGLenum<ShaderType>(GLenum from);
416*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ShaderType from);
417*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ShaderType value);
418*8975f5c5SAndroid Build Coastguard Worker 
419*8975f5c5SAndroid Build Coastguard Worker enum class ShadingModel : uint8_t
420*8975f5c5SAndroid Build Coastguard Worker {
421*8975f5c5SAndroid Build Coastguard Worker     Flat   = 0,
422*8975f5c5SAndroid Build Coastguard Worker     Smooth = 1,
423*8975f5c5SAndroid Build Coastguard Worker 
424*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 2,
425*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 2,
426*8975f5c5SAndroid Build Coastguard Worker };
427*8975f5c5SAndroid Build Coastguard Worker 
428*8975f5c5SAndroid Build Coastguard Worker template <>
429*8975f5c5SAndroid Build Coastguard Worker ShadingModel FromGLenum<ShadingModel>(GLenum from);
430*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ShadingModel from);
431*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ShadingModel value);
432*8975f5c5SAndroid Build Coastguard Worker 
433*8975f5c5SAndroid Build Coastguard Worker enum class ShadingRate : uint8_t
434*8975f5c5SAndroid Build Coastguard Worker {
435*8975f5c5SAndroid Build Coastguard Worker     Undefined = 0,
436*8975f5c5SAndroid Build Coastguard Worker     _1x1      = 1,
437*8975f5c5SAndroid Build Coastguard Worker     _1x2      = 2,
438*8975f5c5SAndroid Build Coastguard Worker     _2x1      = 3,
439*8975f5c5SAndroid Build Coastguard Worker     _2x2      = 4,
440*8975f5c5SAndroid Build Coastguard Worker     _4x2      = 5,
441*8975f5c5SAndroid Build Coastguard Worker     _4x4      = 6,
442*8975f5c5SAndroid Build Coastguard Worker 
443*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 7,
444*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 7,
445*8975f5c5SAndroid Build Coastguard Worker };
446*8975f5c5SAndroid Build Coastguard Worker 
447*8975f5c5SAndroid Build Coastguard Worker template <>
448*8975f5c5SAndroid Build Coastguard Worker ShadingRate FromGLenum<ShadingRate>(GLenum from);
449*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(ShadingRate from);
450*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, ShadingRate value);
451*8975f5c5SAndroid Build Coastguard Worker 
452*8975f5c5SAndroid Build Coastguard Worker enum class TextureCombine : uint8_t
453*8975f5c5SAndroid Build Coastguard Worker {
454*8975f5c5SAndroid Build Coastguard Worker     Add         = 0,
455*8975f5c5SAndroid Build Coastguard Worker     AddSigned   = 1,
456*8975f5c5SAndroid Build Coastguard Worker     Dot3Rgb     = 2,
457*8975f5c5SAndroid Build Coastguard Worker     Dot3Rgba    = 3,
458*8975f5c5SAndroid Build Coastguard Worker     Interpolate = 4,
459*8975f5c5SAndroid Build Coastguard Worker     Modulate    = 5,
460*8975f5c5SAndroid Build Coastguard Worker     Replace     = 6,
461*8975f5c5SAndroid Build Coastguard Worker     Subtract    = 7,
462*8975f5c5SAndroid Build Coastguard Worker 
463*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 8,
464*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 8,
465*8975f5c5SAndroid Build Coastguard Worker };
466*8975f5c5SAndroid Build Coastguard Worker 
467*8975f5c5SAndroid Build Coastguard Worker template <>
468*8975f5c5SAndroid Build Coastguard Worker TextureCombine FromGLenum<TextureCombine>(GLenum from);
469*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureCombine from);
470*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureCombine value);
471*8975f5c5SAndroid Build Coastguard Worker 
472*8975f5c5SAndroid Build Coastguard Worker enum class TextureEnvMode : uint8_t
473*8975f5c5SAndroid Build Coastguard Worker {
474*8975f5c5SAndroid Build Coastguard Worker     Add      = 0,
475*8975f5c5SAndroid Build Coastguard Worker     Blend    = 1,
476*8975f5c5SAndroid Build Coastguard Worker     Combine  = 2,
477*8975f5c5SAndroid Build Coastguard Worker     Decal    = 3,
478*8975f5c5SAndroid Build Coastguard Worker     Modulate = 4,
479*8975f5c5SAndroid Build Coastguard Worker     Replace  = 5,
480*8975f5c5SAndroid Build Coastguard Worker 
481*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 6,
482*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 6,
483*8975f5c5SAndroid Build Coastguard Worker };
484*8975f5c5SAndroid Build Coastguard Worker 
485*8975f5c5SAndroid Build Coastguard Worker template <>
486*8975f5c5SAndroid Build Coastguard Worker TextureEnvMode FromGLenum<TextureEnvMode>(GLenum from);
487*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureEnvMode from);
488*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureEnvMode value);
489*8975f5c5SAndroid Build Coastguard Worker 
490*8975f5c5SAndroid Build Coastguard Worker enum class TextureEnvParameter : uint8_t
491*8975f5c5SAndroid Build Coastguard Worker {
492*8975f5c5SAndroid Build Coastguard Worker     Mode              = 0,
493*8975f5c5SAndroid Build Coastguard Worker     Color             = 1,
494*8975f5c5SAndroid Build Coastguard Worker     CombineRgb        = 2,
495*8975f5c5SAndroid Build Coastguard Worker     CombineAlpha      = 3,
496*8975f5c5SAndroid Build Coastguard Worker     RgbScale          = 4,
497*8975f5c5SAndroid Build Coastguard Worker     AlphaScale        = 5,
498*8975f5c5SAndroid Build Coastguard Worker     Src0Rgb           = 6,
499*8975f5c5SAndroid Build Coastguard Worker     Src1Rgb           = 7,
500*8975f5c5SAndroid Build Coastguard Worker     Src2Rgb           = 8,
501*8975f5c5SAndroid Build Coastguard Worker     Src0Alpha         = 9,
502*8975f5c5SAndroid Build Coastguard Worker     Src1Alpha         = 10,
503*8975f5c5SAndroid Build Coastguard Worker     Src2Alpha         = 11,
504*8975f5c5SAndroid Build Coastguard Worker     Op0Rgb            = 12,
505*8975f5c5SAndroid Build Coastguard Worker     Op1Rgb            = 13,
506*8975f5c5SAndroid Build Coastguard Worker     Op2Rgb            = 14,
507*8975f5c5SAndroid Build Coastguard Worker     Op0Alpha          = 15,
508*8975f5c5SAndroid Build Coastguard Worker     Op1Alpha          = 16,
509*8975f5c5SAndroid Build Coastguard Worker     Op2Alpha          = 17,
510*8975f5c5SAndroid Build Coastguard Worker     PointCoordReplace = 18,
511*8975f5c5SAndroid Build Coastguard Worker 
512*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 19,
513*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 19,
514*8975f5c5SAndroid Build Coastguard Worker };
515*8975f5c5SAndroid Build Coastguard Worker 
516*8975f5c5SAndroid Build Coastguard Worker template <>
517*8975f5c5SAndroid Build Coastguard Worker TextureEnvParameter FromGLenum<TextureEnvParameter>(GLenum from);
518*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureEnvParameter from);
519*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureEnvParameter value);
520*8975f5c5SAndroid Build Coastguard Worker 
521*8975f5c5SAndroid Build Coastguard Worker enum class TextureEnvTarget : uint8_t
522*8975f5c5SAndroid Build Coastguard Worker {
523*8975f5c5SAndroid Build Coastguard Worker     Env         = 0,
524*8975f5c5SAndroid Build Coastguard Worker     PointSprite = 1,
525*8975f5c5SAndroid Build Coastguard Worker 
526*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 2,
527*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 2,
528*8975f5c5SAndroid Build Coastguard Worker };
529*8975f5c5SAndroid Build Coastguard Worker 
530*8975f5c5SAndroid Build Coastguard Worker template <>
531*8975f5c5SAndroid Build Coastguard Worker TextureEnvTarget FromGLenum<TextureEnvTarget>(GLenum from);
532*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureEnvTarget from);
533*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureEnvTarget value);
534*8975f5c5SAndroid Build Coastguard Worker 
535*8975f5c5SAndroid Build Coastguard Worker enum class TextureOp : uint8_t
536*8975f5c5SAndroid Build Coastguard Worker {
537*8975f5c5SAndroid Build Coastguard Worker     OneMinusSrcAlpha = 0,
538*8975f5c5SAndroid Build Coastguard Worker     OneMinusSrcColor = 1,
539*8975f5c5SAndroid Build Coastguard Worker     SrcAlpha         = 2,
540*8975f5c5SAndroid Build Coastguard Worker     SrcColor         = 3,
541*8975f5c5SAndroid Build Coastguard Worker 
542*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 4,
543*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 4,
544*8975f5c5SAndroid Build Coastguard Worker };
545*8975f5c5SAndroid Build Coastguard Worker 
546*8975f5c5SAndroid Build Coastguard Worker template <>
547*8975f5c5SAndroid Build Coastguard Worker TextureOp FromGLenum<TextureOp>(GLenum from);
548*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureOp from);
549*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureOp value);
550*8975f5c5SAndroid Build Coastguard Worker 
551*8975f5c5SAndroid Build Coastguard Worker enum class TextureSrc : uint8_t
552*8975f5c5SAndroid Build Coastguard Worker {
553*8975f5c5SAndroid Build Coastguard Worker     Constant     = 0,
554*8975f5c5SAndroid Build Coastguard Worker     Previous     = 1,
555*8975f5c5SAndroid Build Coastguard Worker     PrimaryColor = 2,
556*8975f5c5SAndroid Build Coastguard Worker     Texture      = 3,
557*8975f5c5SAndroid Build Coastguard Worker 
558*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 4,
559*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 4,
560*8975f5c5SAndroid Build Coastguard Worker };
561*8975f5c5SAndroid Build Coastguard Worker 
562*8975f5c5SAndroid Build Coastguard Worker template <>
563*8975f5c5SAndroid Build Coastguard Worker TextureSrc FromGLenum<TextureSrc>(GLenum from);
564*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureSrc from);
565*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureSrc value);
566*8975f5c5SAndroid Build Coastguard Worker 
567*8975f5c5SAndroid Build Coastguard Worker enum class TextureTarget : uint8_t
568*8975f5c5SAndroid Build Coastguard Worker {
569*8975f5c5SAndroid Build Coastguard Worker     _2D                 = 0,
570*8975f5c5SAndroid Build Coastguard Worker     _2DArray            = 1,
571*8975f5c5SAndroid Build Coastguard Worker     _2DMultisample      = 2,
572*8975f5c5SAndroid Build Coastguard Worker     _2DMultisampleArray = 3,
573*8975f5c5SAndroid Build Coastguard Worker     _3D                 = 4,
574*8975f5c5SAndroid Build Coastguard Worker     External            = 5,
575*8975f5c5SAndroid Build Coastguard Worker     Rectangle           = 6,
576*8975f5c5SAndroid Build Coastguard Worker     CubeMapPositiveX    = 7,
577*8975f5c5SAndroid Build Coastguard Worker     CubeMapNegativeX    = 8,
578*8975f5c5SAndroid Build Coastguard Worker     CubeMapPositiveY    = 9,
579*8975f5c5SAndroid Build Coastguard Worker     CubeMapNegativeY    = 10,
580*8975f5c5SAndroid Build Coastguard Worker     CubeMapPositiveZ    = 11,
581*8975f5c5SAndroid Build Coastguard Worker     CubeMapNegativeZ    = 12,
582*8975f5c5SAndroid Build Coastguard Worker     CubeMapArray        = 13,
583*8975f5c5SAndroid Build Coastguard Worker     VideoImage          = 14,
584*8975f5c5SAndroid Build Coastguard Worker     Buffer              = 15,
585*8975f5c5SAndroid Build Coastguard Worker 
586*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 16,
587*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 16,
588*8975f5c5SAndroid Build Coastguard Worker };
589*8975f5c5SAndroid Build Coastguard Worker 
590*8975f5c5SAndroid Build Coastguard Worker template <>
591*8975f5c5SAndroid Build Coastguard Worker TextureTarget FromGLenum<TextureTarget>(GLenum from);
592*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureTarget from);
593*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureTarget value);
594*8975f5c5SAndroid Build Coastguard Worker 
595*8975f5c5SAndroid Build Coastguard Worker enum class TextureType : uint8_t
596*8975f5c5SAndroid Build Coastguard Worker {
597*8975f5c5SAndroid Build Coastguard Worker     _2D                 = 0,
598*8975f5c5SAndroid Build Coastguard Worker     _2DArray            = 1,
599*8975f5c5SAndroid Build Coastguard Worker     _2DMultisample      = 2,
600*8975f5c5SAndroid Build Coastguard Worker     _2DMultisampleArray = 3,
601*8975f5c5SAndroid Build Coastguard Worker     _3D                 = 4,
602*8975f5c5SAndroid Build Coastguard Worker     External            = 5,
603*8975f5c5SAndroid Build Coastguard Worker     Rectangle           = 6,
604*8975f5c5SAndroid Build Coastguard Worker     CubeMap             = 7,
605*8975f5c5SAndroid Build Coastguard Worker     CubeMapArray        = 8,
606*8975f5c5SAndroid Build Coastguard Worker     VideoImage          = 9,
607*8975f5c5SAndroid Build Coastguard Worker     Buffer              = 10,
608*8975f5c5SAndroid Build Coastguard Worker 
609*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 11,
610*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 11,
611*8975f5c5SAndroid Build Coastguard Worker };
612*8975f5c5SAndroid Build Coastguard Worker 
613*8975f5c5SAndroid Build Coastguard Worker template <>
614*8975f5c5SAndroid Build Coastguard Worker TextureType FromGLenum<TextureType>(GLenum from);
615*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TextureType from);
616*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TextureType value);
617*8975f5c5SAndroid Build Coastguard Worker 
618*8975f5c5SAndroid Build Coastguard Worker enum class TilingMode : uint8_t
619*8975f5c5SAndroid Build Coastguard Worker {
620*8975f5c5SAndroid Build Coastguard Worker     Optimal = 0,
621*8975f5c5SAndroid Build Coastguard Worker     Linear  = 1,
622*8975f5c5SAndroid Build Coastguard Worker 
623*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 2,
624*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 2,
625*8975f5c5SAndroid Build Coastguard Worker };
626*8975f5c5SAndroid Build Coastguard Worker 
627*8975f5c5SAndroid Build Coastguard Worker template <>
628*8975f5c5SAndroid Build Coastguard Worker TilingMode FromGLenum<TilingMode>(GLenum from);
629*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(TilingMode from);
630*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, TilingMode value);
631*8975f5c5SAndroid Build Coastguard Worker 
632*8975f5c5SAndroid Build Coastguard Worker enum class VertexArrayType : uint8_t
633*8975f5c5SAndroid Build Coastguard Worker {
634*8975f5c5SAndroid Build Coastguard Worker     Color        = 0,
635*8975f5c5SAndroid Build Coastguard Worker     Normal       = 1,
636*8975f5c5SAndroid Build Coastguard Worker     PointSize    = 2,
637*8975f5c5SAndroid Build Coastguard Worker     TextureCoord = 3,
638*8975f5c5SAndroid Build Coastguard Worker     Vertex       = 4,
639*8975f5c5SAndroid Build Coastguard Worker 
640*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 5,
641*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 5,
642*8975f5c5SAndroid Build Coastguard Worker };
643*8975f5c5SAndroid Build Coastguard Worker 
644*8975f5c5SAndroid Build Coastguard Worker template <>
645*8975f5c5SAndroid Build Coastguard Worker VertexArrayType FromGLenum<VertexArrayType>(GLenum from);
646*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(VertexArrayType from);
647*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, VertexArrayType value);
648*8975f5c5SAndroid Build Coastguard Worker 
649*8975f5c5SAndroid Build Coastguard Worker enum class WrapMode : uint8_t
650*8975f5c5SAndroid Build Coastguard Worker {
651*8975f5c5SAndroid Build Coastguard Worker     ClampToEdge    = 0,
652*8975f5c5SAndroid Build Coastguard Worker     ClampToBorder  = 1,
653*8975f5c5SAndroid Build Coastguard Worker     MirroredRepeat = 2,
654*8975f5c5SAndroid Build Coastguard Worker     Repeat         = 3,
655*8975f5c5SAndroid Build Coastguard Worker 
656*8975f5c5SAndroid Build Coastguard Worker     InvalidEnum = 4,
657*8975f5c5SAndroid Build Coastguard Worker     EnumCount   = 4,
658*8975f5c5SAndroid Build Coastguard Worker };
659*8975f5c5SAndroid Build Coastguard Worker 
660*8975f5c5SAndroid Build Coastguard Worker template <>
661*8975f5c5SAndroid Build Coastguard Worker WrapMode FromGLenum<WrapMode>(GLenum from);
662*8975f5c5SAndroid Build Coastguard Worker GLenum ToGLenum(WrapMode from);
663*8975f5c5SAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &os, WrapMode value);
664*8975f5c5SAndroid Build Coastguard Worker 
665*8975f5c5SAndroid Build Coastguard Worker }  // namespace gl
666*8975f5c5SAndroid Build Coastguard Worker 
667*8975f5c5SAndroid Build Coastguard Worker #endif  // COMMON_PACKEDGLENUMS_AUTOGEN_H_
668