1 #ifndef _GLCEXTTOKENS_HPP
2 #define _GLCEXTTOKENS_HPP
3 /*-------------------------------------------------------------------------
4  * OpenGL Conformance Test Suite
5  * -----------------------------
6  *
7  * Copyright (c) 2015-2016 The Khronos Group Inc.
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  */ /*!
22  * \file
23  * \brief
24  */ /*-------------------------------------------------------------------*/
25 
26 #include "gluRenderContext.hpp"
27 #include "glwDefs.hpp"
28 
29 namespace deqp
30 {
31 
32 struct GLExtTokens
33 {
34 	void init(const glu::ContextType& contextType);
35 
36 	glw::GLenum GEOMETRY_SHADER;
37 	glw::GLenum GEOMETRY_SHADER_BIT;
38 	glw::GLenum GEOMETRY_LINKED_VERTICES_OUT;
39 	glw::GLenum GEOMETRY_LINKED_INPUT_TYPE;
40 	glw::GLenum GEOMETRY_LINKED_OUTPUT_TYPE;
41 	glw::GLenum GEOMETRY_SHADER_INVOCATIONS;
42 	glw::GLenum MAX_GEOMETRY_TEXTURE_IMAGE_UNITS;
43 	glw::GLenum MAX_GEOMETRY_IMAGE_UNIFORMS;
44 	glw::GLenum MAX_GEOMETRY_SHADER_STORAGE_BLOCKS;
45 	glw::GLenum MAX_GEOMETRY_ATOMIC_COUNTERS;
46 	glw::GLenum LINE_STRIP_ADJACENCY;
47 	glw::GLenum LINES_ADJACENCY;
48 	glw::GLenum TRIANGLES_ADJACENCY;
49 	glw::GLenum TRIANGLE_STRIP_ADJACENCY;
50 	glw::GLenum FRAMEBUFFER_ATTACHMENT_LAYERED;
51 	glw::GLenum FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS;
52 	glw::GLenum LAYER_PROVOKING_VERTEX;
53 	glw::GLenum FIRST_VERTEX_CONVENTION;
54 	glw::GLenum LAST_VERTEX_CONVENTION;
55 	glw::GLenum UNDEFINED_VERTEX;
56 	glw::GLenum FRAMEBUFFER_DEFAULT_LAYERS;
57 	glw::GLenum MAX_FRAMEBUFFER_LAYERS;
58 	glw::GLenum MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS;
59 	glw::GLenum MAX_GEOMETRY_UNIFORM_COMPONENTS;
60 	glw::GLenum MAX_GEOMETRY_UNIFORM_BLOCKS;
61 	glw::GLenum MAX_GEOMETRY_INPUT_COMPONENTS;
62 	glw::GLenum MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS;
63 	glw::GLenum MAX_GEOMETRY_OUTPUT_COMPONENTS;
64 	glw::GLenum MAX_GEOMETRY_OUTPUT_VERTICES;
65 	glw::GLenum MAX_GEOMETRY_SHADER_INVOCATIONS;
66 	glw::GLenum MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS;
67 	glw::GLenum PRIMITIVES_GENERATED;
68 	glw::GLenum TEXTURE_BORDER_COLOR;
69 	glw::GLenum CLAMP_TO_BORDER;
70 	glw::GLenum PATCH_VERTICES;
71 	glw::GLenum TESS_CONTROL_SHADER;
72 	glw::GLenum TESS_EVALUATION_SHADER;
73 	glw::GLenum PATCHES;
74 	glw::GLenum MAX_PATCH_VERTICES;
75 	glw::GLenum MAX_TESS_GEN_LEVEL;
76 	glw::GLenum MAX_TESS_CONTROL_INPUT_COMPONENTS;
77 	glw::GLenum MAX_TESS_CONTROL_OUTPUT_COMPONENTS;
78 	glw::GLenum MAX_TESS_PATCH_COMPONENTS;
79 	glw::GLenum MAX_TESS_EVALUATION_INPUT_COMPONENTS;
80 	glw::GLenum MAX_TESS_EVALUATION_OUTPUT_COMPONENTS;
81 	glw::GLenum MAX_TESS_EVALUATION_ATOMIC_COUNTERS;
82 	glw::GLenum MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS;
83 	glw::GLenum MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS;
84 	glw::GLenum MAX_TESS_CONTROL_ATOMIC_COUNTERS;
85 	glw::GLenum MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS;
86 	glw::GLenum MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS;
87 	glw::GLenum MAX_TEXTURE_BUFFER_SIZE;
88 	glw::GLenum REFERENCED_BY_GEOMETRY_SHADER;
89 	glw::GLenum REFERENCED_BY_TESS_CONTROL_SHADER;
90 	glw::GLenum REFERENCED_BY_TESS_EVALUATION_SHADER;
91 	glw::GLenum TESS_CONTROL_OUTPUT_VERTICES;
92 	glw::GLenum TESS_GEN_MODE;
93 	glw::GLenum TESS_GEN_SPACING;
94 	glw::GLenum TESS_GEN_POINT_MODE;
95 	glw::GLenum TESS_GEN_VERTEX_ORDER;
96 	glw::GLenum TESS_CONTROL_SHADER_BIT;
97 	glw::GLenum TESS_EVALUATION_SHADER_BIT;
98 	glw::GLenum TEXTURE_BUFFER;
99 	glw::GLenum TEXTURE_BUFFER_SIZE;
100 	glw::GLenum TEXTURE_BINDING_BUFFER;
101 	glw::GLenum TEXTURE_BUFFER_BINDING;
102 	glw::GLenum TEXTURE_BUFFER_OFFSET;
103 	glw::GLenum TEXTURE_BUFFER_DATA_STORE_BINDING;
104 	glw::GLenum SAMPLER_BUFFER;
105 	glw::GLenum INT_SAMPLER_BUFFER;
106 	glw::GLenum UNSIGNED_INT_SAMPLER_BUFFER;
107 	glw::GLenum IMAGE_BUFFER;
108 	glw::GLenum INT_IMAGE_BUFFER;
109 	glw::GLenum UNSIGNED_INT_IMAGE_BUFFER;
110 	glw::GLenum TEXTURE_BUFFER_OFFSET_ALIGNMENT;
111 	glw::GLenum QUADS;
112 	glw::GLenum ISOLINES;
113 	glw::GLenum FRACTIONAL_EVEN;
114 	glw::GLenum FRACTIONAL_ODD;
115 	glw::GLenum COMPRESSED_RGBA_ASTC_4x4;
116 	glw::GLenum COMPRESSED_RGBA_ASTC_5x4;
117 	glw::GLenum COMPRESSED_RGBA_ASTC_5x5;
118 	glw::GLenum COMPRESSED_RGBA_ASTC_6x5;
119 	glw::GLenum COMPRESSED_RGBA_ASTC_6x6;
120 	glw::GLenum COMPRESSED_RGBA_ASTC_8x5;
121 	glw::GLenum COMPRESSED_RGBA_ASTC_8x6;
122 	glw::GLenum COMPRESSED_RGBA_ASTC_8x8;
123 	glw::GLenum COMPRESSED_RGBA_ASTC_10x5;
124 	glw::GLenum COMPRESSED_RGBA_ASTC_10x6;
125 	glw::GLenum COMPRESSED_RGBA_ASTC_10x8;
126 	glw::GLenum COMPRESSED_RGBA_ASTC_10x10;
127 	glw::GLenum COMPRESSED_RGBA_ASTC_12x10;
128 	glw::GLenum COMPRESSED_RGBA_ASTC_12x12;
129 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_4x4;
130 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_5x4;
131 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_5x5;
132 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_6x5;
133 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_6x6;
134 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_8x5;
135 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_8x6;
136 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_8x8;
137 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_10x5;
138 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_10x6;
139 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_10x8;
140 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_10x10;
141 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_12x10;
142 	glw::GLenum COMPRESSED_SRGB8_ALPHA8_ASTC_12x12;
143 	glw::GLenum MULTIPLY;
144 	glw::GLenum SCREEN;
145 	glw::GLenum OVERLAY;
146 	glw::GLenum DARKEN;
147 	glw::GLenum LIGHTEN;
148 	glw::GLenum COLORDODGE;
149 	glw::GLenum COLORBURN;
150 	glw::GLenum HARDLIGHT;
151 	glw::GLenum SOFTLIGHT;
152 	glw::GLenum DIFFERENCE;
153 	glw::GLenum EXCLUSION;
154 	glw::GLenum HSL_HUE;
155 	glw::GLenum HSL_SATURATION;
156 	glw::GLenum HSL_COLOR;
157 	glw::GLenum HSL_LUMINOSITY;
158 	glw::GLenum PRIMITIVE_BOUNDING_BOX;
159 };
160 
161 } //deqp
162 
163 #endif // _GLCEXTTOKENS_HPP
164