Overte C++ Documentation
FrameIOKeys.h
1 //
2 // Created by Bradley Austin Davis on 2018/10/14
3 // Copyright 2013-2018 High Fidelity, Inc.
4 // Copyright 2024 Overte e.V.
5 //
6 // Distributed under the Apache License, Version 2.0.
7 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
8 //
9 #pragma once
10 #ifndef hifi_gpu_FrameIOKeys_h
11 #define hifi_gpu_FrameIOKeys_h
12 
13 namespace gpu { namespace keys {
14 
15 
16 constexpr const char* binary = "binary";
17 constexpr const char* L00 = "L00";
18 constexpr const char* L1m1 = "L1m1";
19 constexpr const char* L10 = "L10";
20 constexpr const char* L11 = "L11";
21 constexpr const char* L2m2 = "L2m2";
22 constexpr const char* L2m1 = "L2m1";
23 constexpr const char* L20 = "L20";
24 constexpr const char* L21 = "L21";
25 constexpr const char* L22 = "L22";
26 
27 constexpr const char* eyeProjections = "eyeProjections";
28 constexpr const char* eyeViews = "eyeViews";
29 constexpr const char* alphaToCoverageEnable = "alphaToCoverageEnable";
30 constexpr const char* antialisedLineEnable = "antialisedLineEnable";
31 constexpr const char* attributes = "attributes";
32 constexpr const char* batches = "batches";
33 constexpr const char* blendFunction = "blendFunction";
34 constexpr const char* borderColor = "borderColor";
35 constexpr const char* bufferMask = "bufferMask";
36 constexpr const char* buffers = "buffers";
37 constexpr const char* capturedTextures = "capturedTextures";
38 constexpr const char* channel = "channel";
39 constexpr const char* chunk = "chunk";
40 constexpr const char* colorAttachments = "colorAttachments";
41 constexpr const char* colorWriteMask = "colorWriteMask";
42 constexpr const char* commands = "commands";
43 constexpr const char* comparisonFunction = "comparisonFunction";
44 constexpr const char* cullMode = "cullMode";
45 constexpr const char* data = "data";
46 constexpr const char* depth = "depth";
47 constexpr const char* depthBias = "depthBias";
48 constexpr const char* depthBiasSlopeScale = "depthBiasSlopeScale";
49 constexpr const char* depthClampEnable = "depthClampEnable";
50 constexpr const char* depthStencilAttachment = "depthStencilAttachment";
51 constexpr const char* depthTest = "depthTest";
52 constexpr const char* drawCallInfos = "drawCallInfos";
53 constexpr const char* drawcallUniform = "drawcallUniform";
54 constexpr const char* drawcallUniformReset = "drawcallUniformReset";
55 constexpr const char* element = "element";
56 constexpr const char* fillMode = "fillMode";
57 constexpr const char* filter = "filter";
58 constexpr const char* formats = "formats";
59 constexpr const char* frameIndex = "frameIndex";
60 constexpr const char* framebuffer = "framebuffer";
61 constexpr const char* framebuffers = "framebuffers";
62 constexpr const char* frequency = "frequency";
63 constexpr const char* frontFaceClockwise = "frontFaceClockwise";
64 constexpr const char* height = "height";
65 constexpr const char* id = "id";
66 constexpr const char* ktxFile = "ktxFile";
67 constexpr const char* layers = "layers";
68 constexpr const char* maxAnisotropy = "maxAnisotropy";
69 constexpr const char* maxMip = "maxMip";
70 constexpr const char* minMip = "minMip";
71 constexpr const char* mipOffset = "mipOffset";
72 constexpr const char* mips = "mips";
73 constexpr const char* multisampleEnable = "multisampleEnable";
74 constexpr const char* name = "name";
75 constexpr const char* namedData = "namedData";
76 constexpr const char* names = "names";
77 constexpr const char* objects = "objects";
78 constexpr const char* offset = "offset";
79 constexpr const char* pipelines = "pipelines";
80 constexpr const char* pose = "pose";
81 constexpr const char* profileRanges = "profileRanges";
82 constexpr const char* program = "program";
83 constexpr const char* programs = "programs";
84 constexpr const char* isJitterOnProjectionEnabled = "isJitterOnProjectionEnabled";
85 constexpr const char* queries = "queries";
86 constexpr const char* sampleCount = "sampleCount";
87 constexpr const char* sampleMask = "sampleMask";
88 constexpr const char* sampler = "sampler";
89 constexpr const char* samples = "samples";
90 constexpr const char* scissorEnable = "scissorEnable";
91 constexpr const char* shaders = "shaders";
92 constexpr const char* size = "size";
93 constexpr const char* skybox = "skybox";
94 constexpr const char* slot = "slot";
95 constexpr const char* source = "source";
96 constexpr const char* state = "state";
97 constexpr const char* stencilActivation = "stencilActivation";
98 constexpr const char* stencilTestBack = "stencilTestBack";
99 constexpr const char* stencilTestFront = "stencilTestFront";
100 constexpr const char* stereo = "stereo";
101 constexpr const char* subresource = "subresource";
102 constexpr const char* swapchains = "swapchains";
103 constexpr const char* texelFormat = "texelFormat";
104 constexpr const char* texture = "texture";
105 constexpr const char* textureTables = "textureTables";
106 constexpr const char* textures = "textures";
107 constexpr const char* samplers = "samplers";
108 constexpr const char* transforms = "transforms";
109 constexpr const char* type = "type";
110 constexpr const char* usageType = "usageType";
111 constexpr const char* view = "view";
112 constexpr const char* width = "width";
113 constexpr const char* wrapModeU = "wrapModeU";
114 constexpr const char* wrapModeV = "wrapModeV";
115 constexpr const char* wrapModeW = "wrapModeW";
116 
117 
118 constexpr const char* backWriteMask = "backWriteMask";
119 constexpr const char* frontWriteMask = "frontWriteMask";
120 constexpr const char* reference = "reference";
121 constexpr const char* readMask = "readMask";
122 constexpr const char* failOp = "failOp";
123 constexpr const char* depthFailOp = "depthFailOp";
124 constexpr const char* passOp = "passOp";
125 constexpr const char* enabled = "enabled";
126 constexpr const char* blend = "blend";
127 constexpr const char* flags = "flags";
128 constexpr const char* writeMask = "writeMask";
129 constexpr const char* function = "function";
130 constexpr const char* sourceColor = "sourceColor";
131 constexpr const char* sourceAlpha = "sourceAlpha";
132 constexpr const char* destColor = "destColor";
133 constexpr const char* destAlpha = "destAlpha";
134 constexpr const char* opColor = "opColor";
135 constexpr const char* opAlpha = "opAlpha";
136 constexpr const char* enable = "enable";
137 constexpr const char* contextDisable = "contextDisable";
138 
139 constexpr const char* COMMAND_NAMES[] = {
140  "draw",
141  "drawIndexed",
142  "drawInstanced",
143  "drawIndexedInstanced",
144  "multiDrawIndirect",
145  "multiDrawIndexedIndirect",
146 
147  "setInputFormat",
148  "setInputBuffer",
149  "setIndexBuffer",
150  "setIndirectBuffer",
151 
152  "setModelTransform",
153  "setViewTransform",
154  "setProjectionTransform",
155  "setProjectionJitterEnabled",
156  "setProjectionJitterSequence",
157  "setProjectionJitterScale",
158  "setViewportTransform",
159  "setDepthRangeTransform",
160 
161  "saveViewProjectionTransform",
162  "setSavedViewProjectionTransform",
163  "copySavedViewProjectionTransformToBuffer",
164 
165  "setPipeline",
166  "setStateBlendFactor",
167  "setStateScissorRect",
168 
169  "setUniformBuffer",
170  "setResourceBuffer",
171  "setResourceTexture",
172  "setResourceTextureTable",
173  "setResourceFramebufferSwapChainTexture",
174 
175  "setFramebuffer",
176  "setFramebufferSwapChain",
177  "clearFramebuffer",
178  "blit",
179  "generateTextureMips",
180  "generateTextureMipsWithPipeline",
181 
182  "advance",
183 
184  "beginQuery",
185  "endQuery",
186  "getQuery",
187 
188  "resetStages",
189 
190  "disableContextViewCorrection",
191  "restoreContextViewCorrection",
192  "setContextMirrorViewCorrection",
193 
194  "disableContextStereo",
195  "restoreContextStereo",
196 
197  "runLambda",
198 
199  "startNamedCall",
200  "stopNamedCall",
201 
202  "glUniform1i",
203  "glUniform1f",
204  "glUniform2f",
205  "glUniform3f",
206  "glUniform4f",
207  "glUniform3fv",
208  "glUniform4fv",
209  "glUniform4iv",
210  "glUniformMatrix3fv",
211  "glUniformMatrix4fv",
212 
213  "pushProfileRange",
214  "popProfileRange",
215 };
216 
217 template<class T, size_t N>
218 constexpr size_t array_size(T (&)[N]) { return N; }
219 
220 static_assert(array_size(COMMAND_NAMES) == Batch::Command::NUM_COMMANDS, "Command array sizes must match");
221 }} // namespace gpu::keys
222 
223 #endif