| /* |
| * MVKCommandTypePools.def |
| * |
| * Copyright (c) 2015-2020 The Brenwill Workshop Ltd. (http://www.brenwill.com) |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| |
| // To use this file, define a macro MVK_CMD_TYPE_POOL(cmdType), then #include this file. |
| // If the last entry needs to be different (for example to avoid a dangling ',' at the |
| // end of an initializer list, also define a macro MVK_CMD_TYPE_POOL_LAST(cmdType). |
| |
| // MVK_TMPLT_DECL is used to support adding a "template<>" prefix when this file is used |
| // to define function implementations for a concrete implementation of a class template |
| |
| // To add a new command type, simply add an MVK_CMD_TYPE_POOL() line below. |
| // The last line in the list must be MVK_CMD_TYPE_POOL_LAST(). |
| // If the command is a concrete implementation of a template class, include the |
| // MVK_TMPLT_DECL prefix. |
| |
| #ifndef MVK_TMPLT_DECL |
| # define MVK_TMPLT_DECL |
| #endif |
| |
| #ifndef MVK_CMD_TYPE_POOL |
| # error MVK_CMD_TYPE_POOL must be defined before including this file |
| #endif |
| |
| #ifndef MVK_CMD_TYPE_POOL_LAST |
| # define MVK_CMD_TYPE_POOL_LAST(cmdType) MVK_CMD_TYPE_POOL(cmdType) |
| #endif |
| |
| MVK_CMD_TYPE_POOL(PipelineBarrier) |
| MVK_CMD_TYPE_POOL(BindPipeline) |
| MVK_CMD_TYPE_POOL(BeginRenderPass) |
| MVK_CMD_TYPE_POOL(NextSubpass) |
| MVK_CMD_TYPE_POOL(EndRenderPass) |
| MVK_CMD_TYPE_POOL(ExecuteCommands) |
| MVK_CMD_TYPE_POOL(BindDescriptorSets) |
| MVK_TMPLT_DECL MVK_CMD_TYPE_POOL(SetViewport1) |
| MVK_TMPLT_DECL MVK_CMD_TYPE_POOL(SetViewportMulti) |
| MVK_TMPLT_DECL MVK_CMD_TYPE_POOL(SetScissor1) |
| MVK_TMPLT_DECL MVK_CMD_TYPE_POOL(SetScissorMulti) |
| MVK_CMD_TYPE_POOL(SetLineWidth) |
| MVK_CMD_TYPE_POOL(SetDepthBias) |
| MVK_CMD_TYPE_POOL(SetBlendConstants) |
| MVK_CMD_TYPE_POOL(SetDepthBounds) |
| MVK_CMD_TYPE_POOL(SetStencilCompareMask) |
| MVK_CMD_TYPE_POOL(SetStencilWriteMask) |
| MVK_CMD_TYPE_POOL(SetStencilReference) |
| MVK_CMD_TYPE_POOL(BindVertexBuffers) |
| MVK_CMD_TYPE_POOL(BindIndexBuffer) |
| MVK_CMD_TYPE_POOL(Draw) |
| MVK_CMD_TYPE_POOL(DrawIndexed) |
| MVK_CMD_TYPE_POOL(DrawIndirect) |
| MVK_CMD_TYPE_POOL(DrawIndexedIndirect) |
| MVK_CMD_TYPE_POOL(CopyImage) |
| MVK_CMD_TYPE_POOL(BlitImage) |
| MVK_CMD_TYPE_POOL(ResolveImage) |
| MVK_CMD_TYPE_POOL(FillBuffer) |
| MVK_CMD_TYPE_POOL(UpdateBuffer) |
| MVK_CMD_TYPE_POOL(CopyBuffer) |
| MVK_CMD_TYPE_POOL(BufferImageCopy) |
| MVK_CMD_TYPE_POOL(ClearAttachments) |
| MVK_CMD_TYPE_POOL(ClearImage) |
| MVK_CMD_TYPE_POOL(BeginQuery) |
| MVK_CMD_TYPE_POOL(EndQuery) |
| MVK_CMD_TYPE_POOL(WriteTimestamp) |
| MVK_CMD_TYPE_POOL(ResetQueryPool) |
| MVK_CMD_TYPE_POOL(CopyQueryPoolResults) |
| MVK_CMD_TYPE_POOL(PushConstants) |
| MVK_CMD_TYPE_POOL(Dispatch) |
| MVK_CMD_TYPE_POOL(DispatchIndirect) |
| MVK_CMD_TYPE_POOL(PushDescriptorSet) |
| MVK_CMD_TYPE_POOL(PushDescriptorSetWithTemplate) |
| MVK_CMD_TYPE_POOL(DebugMarkerBegin) |
| MVK_CMD_TYPE_POOL(DebugMarkerEnd) |
| MVK_CMD_TYPE_POOL(DebugMarkerInsert) |
| MVK_CMD_TYPE_POOL(SetResetEvent) |
| MVK_CMD_TYPE_POOL_LAST(WaitEvents) |
| |
| #undef MVK_CMD_TYPE_POOL |
| #undef MVK_CMD_TYPE_POOL_LAST |
| #undef MVK_TMPLT_DECL |