2023-03-12 05:36:47 +00:00
|
|
|
search = (
|
|
|
|
VkAttachmentDescription,
|
|
|
|
VkDebugUtilsMessageSeverityFlagBitsEXT,
|
|
|
|
VkPresentModeKHR,
|
|
|
|
VkSubpassDescription,
|
|
|
|
VkSubpassDependency,
|
|
|
|
VkSpecializationInfo,
|
|
|
|
VkPipelineShaderStageCreateInfo,
|
|
|
|
VkPipelineVertexInputStateCreateInfo,
|
|
|
|
VkPipelineInputAssemblyStateCreateInfo,
|
|
|
|
VkPipelineViewportStateCreateInfo,
|
|
|
|
VkPipelineRasterizationStateCreateInfo,
|
|
|
|
VkPipelineMultisampleStateCreateInfo,
|
|
|
|
VkPipelineDepthStencilStateCreateInfo,
|
|
|
|
VkPipelineColorBlendStateCreateInfo,
|
|
|
|
VkPipelineDynamicStateCreateInfo,
|
|
|
|
VkDescriptorSetLayoutBinding,
|
|
|
|
VkDescriptorSetLayoutCreateInfo,
|
|
|
|
VkPushConstantRange,
|
|
|
|
VkPipelineLayoutCreateInfo,
|
|
|
|
VkGraphicsPipelineCreateInfo,
|
|
|
|
VkComputePipelineCreateInfo,
|
|
|
|
VkDescriptorPoolCreateInfo,
|
|
|
|
VkSamplerCreateInfo,
|
|
|
|
VkImageCreateInfo,
|
|
|
|
VkImageViewCreateInfo,
|
|
|
|
VkFramebufferCreateInfo,
|
|
|
|
VkClearValue,
|
|
|
|
VkPhysicalDeviceLimits,
|
|
|
|
VkRenderPassCreateInfo,
|
|
|
|
VkRenderPassMultiviewCreateInfo,
|
2022-05-30 06:58:22 +00:00
|
|
|
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_output_t,
|
2023-02-09 05:52:43 +00:00
|
|
|
|
2023-03-29 00:45:17 +00:00
|
|
|
qfv_descriptorsetlayoutinfo_t,
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_imageinfo_t,
|
|
|
|
qfv_imageviewinfo_t,
|
2023-03-27 15:12:13 +00:00
|
|
|
qfv_bufferinfo_t,
|
|
|
|
qfv_bufferviewinfo_t,
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_dependencyinfo_t,
|
|
|
|
qfv_attachmentinfo_t,
|
|
|
|
qfv_attachmentrefinfo_t,
|
|
|
|
qfv_attachmentsetinfo_t,
|
|
|
|
qfv_taskinfo_t,
|
2023-06-16 10:05:53 +00:00
|
|
|
qfv_pushconstantinfo_t,
|
|
|
|
qfv_pushconstantrangeinfo_t,
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_layoutinfo_t,
|
|
|
|
qfv_pipelineinfo_t,
|
|
|
|
qfv_subpassinfo_t,
|
|
|
|
qfv_framebufferinfo_t,
|
|
|
|
qfv_renderpassinfo_t,
|
|
|
|
qfv_renderinfo_t,
|
|
|
|
qfv_computeinfo_t,
|
|
|
|
qfv_processinfo_t,
|
|
|
|
qfv_stepinfo_t,
|
|
|
|
qfv_jobinfo_t,
|
|
|
|
);
|
|
|
|
parse = {
|
|
|
|
VkSubpassDescription = {
|
|
|
|
flags = auto;
|
|
|
|
pipelineBindPoint = auto;
|
|
|
|
inputAttachments = {
|
|
|
|
type = (array, VkAttachmentReference);
|
|
|
|
size = inputAttachmentCount;
|
|
|
|
values = pInputAttachments;
|
|
|
|
};
|
|
|
|
colorAttachments = {
|
|
|
|
type = (array, VkAttachmentReference);
|
|
|
|
size = colorAttachmentCount;
|
|
|
|
values = pColorAttachments;
|
|
|
|
};
|
|
|
|
resolveAttachments = {
|
|
|
|
type = (array, VkAttachmentReference);
|
|
|
|
values = pResolveAttachments;
|
|
|
|
matchSize = colorAttachments;
|
|
|
|
};
|
|
|
|
depthStencilAttachment = {
|
|
|
|
type = (single, VkAttachmentReference);
|
|
|
|
value = pDepthStencilAttachment;
|
|
|
|
};
|
|
|
|
preserveAttachments = {
|
|
|
|
type = (array, uint32_t);
|
|
|
|
size = preserveAttachmentCount;
|
|
|
|
values = pPreserveAttachments;
|
2022-05-30 06:58:22 +00:00
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
};
|
|
|
|
VkPhysicalDeviceLimits = readonly;
|
|
|
|
VkRenderPassCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
attachments = {
|
|
|
|
type = (array, VkAttachmentDescription);
|
|
|
|
size = attachmentCount;
|
|
|
|
values = pAttachments;
|
|
|
|
};
|
|
|
|
subpasses = {
|
|
|
|
type = (array, VkSubpassDescription);
|
|
|
|
size = subpassCount;
|
|
|
|
values = pSubpasses;
|
|
|
|
};
|
|
|
|
dependencies = {
|
|
|
|
type = (array, VkSubpassDependency);
|
|
|
|
size = dependencyCount;
|
|
|
|
values = pDependencies;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkSpecializationInfo = {
|
|
|
|
mapEntries = {
|
|
|
|
type = (array, VkSpecializationMapEntry);
|
|
|
|
size = mapEntryCount;
|
|
|
|
values = pMapEntries;
|
|
|
|
};
|
|
|
|
data = {
|
|
|
|
type = (custom, (QFBinary, QFString),
|
|
|
|
parse_specialization_data);
|
|
|
|
fields = (dataSize, pData);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineShaderStageCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
stage = auto;
|
|
|
|
name = {
|
|
|
|
type = string;
|
|
|
|
string = pName;
|
|
|
|
};
|
|
|
|
module = {
|
|
|
|
type = (custom, QFString, parse_VkShaderModule);
|
|
|
|
fields = (module);
|
|
|
|
};
|
|
|
|
specializationInfo = {
|
|
|
|
type = (single, VkSpecializationInfo);
|
|
|
|
value = pSpecializationInfo;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkShaderModuleCreateInfo = skip;
|
|
|
|
VkDescriptorSetLayoutBinding = {
|
|
|
|
binding = auto;
|
|
|
|
descriptorType = auto;
|
|
|
|
descriptorCount = auto;
|
|
|
|
stageFlags = auto;
|
|
|
|
// skip pImmutableSamplers (default to 0) until I know how it works
|
|
|
|
};
|
|
|
|
VkDescriptorSetLayoutCreateInfo = {
|
|
|
|
flags = auto;
|
|
|
|
bindings = {
|
|
|
|
type = (array, VkDescriptorSetLayoutBinding);
|
|
|
|
size = bindingCount;
|
|
|
|
values = pBindings;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkDescriptorPoolCreateInfo = {
|
|
|
|
flags = auto;
|
|
|
|
maxSets = auto;
|
|
|
|
bindings = {
|
|
|
|
type = (array, VkDescriptorPoolSize);
|
|
|
|
size = poolSizeCount;
|
|
|
|
values = pPoolSizes;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineVertexInputStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
bindings = {
|
|
|
|
type = (array, VkVertexInputBindingDescription);
|
|
|
|
size = vertexBindingDescriptionCount;
|
|
|
|
values = pVertexBindingDescriptions;
|
|
|
|
};
|
|
|
|
attributes = {
|
|
|
|
type = (array, VkVertexInputAttributeDescription);
|
|
|
|
size = vertexAttributeDescriptionCount;
|
|
|
|
values = pVertexAttributeDescriptions;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineInputAssemblyStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
topology = auto;
|
|
|
|
primitiveRestartEnable = auto;
|
|
|
|
};
|
|
|
|
VkPipelineViewportStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
//FIXME redo as one array
|
|
|
|
viewports = {
|
|
|
|
type = (array, VkViewport);
|
|
|
|
size = viewportCount;
|
|
|
|
values = pViewports;
|
|
|
|
};
|
|
|
|
scissors = {
|
|
|
|
type = (array, VkRect2D);
|
|
|
|
size = scissorCount;
|
|
|
|
values = pScissors;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineRasterizationStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
depthClampEnable = auto;
|
|
|
|
rasterizerDiscardEnable = auto;
|
|
|
|
polygonMode = auto;
|
|
|
|
cullMode = auto;
|
|
|
|
frontFace = auto;
|
|
|
|
depthBiasEnable = auto;
|
|
|
|
depthBiasConstantFactor = auto;
|
|
|
|
depthBiasClamp = auto;
|
|
|
|
depthBiasSlopeFactor = auto;
|
|
|
|
lineWidth = auto;
|
|
|
|
};
|
|
|
|
VkPipelineMultisampleStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
rasterizationSamples = auto;
|
|
|
|
sampleShadingEnable = auto;
|
|
|
|
minSampleShading = auto;
|
|
|
|
//pSampleMask = auto; FIXME disabled until correct size is known
|
|
|
|
alphaToCoverageEnable = auto;
|
|
|
|
alphaToOneEnable = auto;
|
|
|
|
};
|
|
|
|
VkPipelineDepthStencilStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
depthTestEnable = auto;
|
|
|
|
depthWriteEnable = auto;
|
|
|
|
depthCompareOp = auto;
|
|
|
|
depthBoundsTestEnable = auto;
|
|
|
|
stencilTestEnable = auto;
|
|
|
|
front = auto;
|
|
|
|
back = auto;
|
|
|
|
minDepthBounds = auto;
|
|
|
|
maxDepthBounds = auto;
|
|
|
|
};
|
|
|
|
VkPipelineColorBlendStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
logicOpEnable = auto;
|
|
|
|
logicOp = auto;
|
|
|
|
attachments = {
|
|
|
|
type = (array, VkPipelineColorBlendAttachmentState);
|
|
|
|
size = attachmentCount;
|
|
|
|
values = pAttachments;
|
|
|
|
};
|
|
|
|
blendConstants = {
|
|
|
|
type = (custom, QFString, parse_RGBA);
|
|
|
|
fields = (blendConstants);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineDynamicStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
dynamicState = {
|
|
|
|
type = (array, VkDynamicState);
|
|
|
|
size = dynamicStateCount;
|
|
|
|
values = pDynamicStates;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineLayoutCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
setLayouts = {
|
|
|
|
type = (array, {
|
|
|
|
parse_type = (QFDictionary, QFString);
|
|
|
|
type = VkDescriptorSetLayout;
|
|
|
|
parser = parse_VkDescriptorSetLayout;
|
|
|
|
});
|
|
|
|
size = setLayoutCount;
|
|
|
|
values = pSetLayouts;
|
|
|
|
};
|
|
|
|
pushConstantRanges = {
|
|
|
|
type = (array, VkPushConstantRange);
|
|
|
|
size = pushConstantRangeCount;
|
|
|
|
values = pPushConstantRanges;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
VkPipelineTessellationStateCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
patchControlPoints = auto;
|
|
|
|
};
|
|
|
|
VkGraphicsPipelineCreateInfo = {
|
|
|
|
flags = auto;
|
|
|
|
stages = {
|
|
|
|
type = (array, VkPipelineShaderStageCreateInfo);
|
|
|
|
size = stageCount;
|
|
|
|
values = pStages;
|
|
|
|
};
|
|
|
|
vertexInput = {
|
|
|
|
type = (single, VkPipelineVertexInputStateCreateInfo);
|
|
|
|
value = pVertexInputState;
|
|
|
|
};
|
|
|
|
inputAssembly = {
|
|
|
|
type = (single, VkPipelineInputAssemblyStateCreateInfo);
|
|
|
|
value = pInputAssemblyState;
|
|
|
|
};
|
|
|
|
tessellation = {
|
|
|
|
type = (single, VkPipelineTessellationStateCreateInfo);
|
|
|
|
value = pTessellationState;
|
|
|
|
};
|
|
|
|
viewport = {
|
|
|
|
type = (single, VkPipelineViewportStateCreateInfo);
|
|
|
|
value = pViewportState;
|
|
|
|
};
|
|
|
|
rasterization = {
|
|
|
|
type = (single, VkPipelineRasterizationStateCreateInfo);
|
|
|
|
value = pRasterizationState;
|
|
|
|
};
|
|
|
|
multisample = {
|
|
|
|
type = (single, VkPipelineMultisampleStateCreateInfo);
|
|
|
|
value = pMultisampleState;
|
|
|
|
};
|
|
|
|
depthStencil = {
|
|
|
|
type = (single, VkPipelineDepthStencilStateCreateInfo);
|
|
|
|
value = pDepthStencilState;
|
|
|
|
};
|
|
|
|
colorBlend = {
|
|
|
|
type = (single, VkPipelineColorBlendStateCreateInfo);
|
|
|
|
value = pColorBlendState;
|
|
|
|
};
|
|
|
|
dynamic = {
|
|
|
|
type = (single, VkPipelineDynamicStateCreateInfo);
|
|
|
|
value = pDynamicState;
|
|
|
|
};
|
|
|
|
layout = {
|
|
|
|
type = (custom, QFString, parse_VkPipelineLayout);
|
|
|
|
fields = (layout);
|
|
|
|
};
|
|
|
|
renderPass = {
|
|
|
|
type = (custom, QFString, parse_VkRenderPass);
|
|
|
|
fields = (renderPass);
|
|
|
|
};
|
|
|
|
subpass = auto;
|
|
|
|
basePipelineHandle = {
|
|
|
|
type = (custom, QFString, parse_BasePipeline);
|
|
|
|
fields = (basePipelineHandle);
|
|
|
|
};
|
|
|
|
basePipelineIndex = auto;
|
|
|
|
};
|
|
|
|
VkComputePipelineCreateInfo = {
|
|
|
|
flags = auto;
|
|
|
|
stage = auto;
|
|
|
|
layout = {
|
|
|
|
type = (custom, QFString, parse_VkPipelineLayout);
|
|
|
|
fields = (layout);
|
|
|
|
};
|
|
|
|
basePipelineHandle = {
|
|
|
|
type = (custom, QFString, parse_BasePipeline);
|
|
|
|
fields = (basePipelineHandle);
|
|
|
|
};
|
|
|
|
basePipelineIndex = auto;
|
|
|
|
};
|
|
|
|
VkImageCreateInfo = {
|
|
|
|
flags = auto;
|
|
|
|
imageType = auto;
|
|
|
|
format = auto;
|
|
|
|
extent = auto;
|
|
|
|
mipLevels = auto;
|
|
|
|
arrayLayers = auto;
|
|
|
|
samples = auto;
|
|
|
|
tiling = auto;
|
|
|
|
usage = auto;
|
|
|
|
sharingMode = skip; // FIXME for now
|
|
|
|
queueFamilyIndexCount = skip; // FIXME for now
|
|
|
|
pQueueFamilyIndices = skip; // FIXME for now
|
|
|
|
initialLayout = auto;
|
|
|
|
};
|
|
|
|
VkImageViewCreateInfo = {
|
|
|
|
flags = auto;
|
|
|
|
image = {
|
|
|
|
type = (custom, (QFDictionary, QFString),
|
|
|
|
parse_VkImage);
|
|
|
|
fields = (image);
|
|
|
|
};
|
|
|
|
viewType = auto;
|
|
|
|
format = auto;
|
|
|
|
components = auto;
|
|
|
|
subresourceRange = auto;
|
|
|
|
};
|
|
|
|
VkFramebufferCreateInfo = {
|
|
|
|
//flags = auto; reserved for future use (Bits enum does not exist)
|
|
|
|
renderPass = {
|
|
|
|
type = (custom, QFString, parse_VkRenderPass);
|
|
|
|
fields = (renderPass);
|
|
|
|
};
|
|
|
|
attachments = {
|
|
|
|
type = (array, VkImageView);
|
|
|
|
size = attachmentCount;
|
|
|
|
values = pAttachments;
|
|
|
|
};
|
|
|
|
width = auto;
|
|
|
|
height = auto;
|
|
|
|
layers = auto;
|
|
|
|
};
|
|
|
|
VkClearColorValue = skip;
|
|
|
|
VkClearValue = {
|
|
|
|
color = {
|
|
|
|
type = (custom, QFString, parse_RGBA);
|
|
|
|
fields = (color);
|
|
|
|
};
|
|
|
|
depthStencil = auto;
|
|
|
|
};
|
|
|
|
VkRenderPassMultiviewCreateInfo = {
|
|
|
|
viewMasks = {
|
|
|
|
type = (array, uint32_t);
|
|
|
|
size = subpassCount;
|
|
|
|
values = pViewMasks;
|
|
|
|
};
|
|
|
|
viewOffsets = {
|
|
|
|
type = (array, int32_t);
|
|
|
|
size = dependencyCount;
|
|
|
|
values = pViewOffsets;
|
|
|
|
};
|
|
|
|
correlationMasks = {
|
|
|
|
type = (array, uint32_t);
|
|
|
|
size = correlationMaskCount;
|
|
|
|
values = pCorrelationMasks;
|
|
|
|
};
|
|
|
|
};
|
2022-05-30 06:58:22 +00:00
|
|
|
|
2023-06-15 04:13:52 +00:00
|
|
|
qfv_osubpass_s = {
|
|
|
|
.name = qfv_osubpass_t;
|
2023-03-12 05:36:47 +00:00
|
|
|
color = {
|
|
|
|
type = (custom, QFString, parse_RGBA);
|
|
|
|
fields = (color);
|
2022-11-26 13:22:22 +00:00
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
name = {
|
|
|
|
type = string;
|
|
|
|
string = name;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_output_s = {
|
|
|
|
.name = qfv_output_t;
|
|
|
|
extent = auto;
|
|
|
|
image = {
|
|
|
|
type = (readonly, VkImage);
|
|
|
|
value = image;
|
|
|
|
};
|
|
|
|
view = {
|
|
|
|
type = (readonly, VkImageView);
|
|
|
|
value = view;
|
|
|
|
};
|
|
|
|
format = auto;
|
|
|
|
frames = auto;
|
|
|
|
finalLayout = auto;
|
|
|
|
};
|
2023-02-09 05:52:43 +00:00
|
|
|
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_taskinfo_s = {
|
|
|
|
.name = qfv_taskinfo_t;
|
|
|
|
func = {
|
|
|
|
type = (custom, QFString, parse_task_function);
|
|
|
|
fields = (func, params, param_data);
|
|
|
|
};
|
|
|
|
params = {
|
|
|
|
type = (custom, QFArray, parse_task_params);
|
|
|
|
fields = (func, params, param_data);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_attachmentrefinfo_s = {
|
|
|
|
.name = qfv_attachmentrefinfo_t;
|
|
|
|
.type = (QFString, QFDictionary);
|
|
|
|
.string = {
|
|
|
|
name = $name;
|
|
|
|
line = $item.line;
|
|
|
|
layout = $auto;
|
|
|
|
blend = "(VkPipelineColorBlendAttachmentState) { .colorWriteMask = VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_B_BIT | VK_COLOR_COMPONENT_A_BIT }"
|
|
|
|
};
|
|
|
|
.dictionary = {
|
|
|
|
.parse = auto;
|
|
|
|
name = $name;
|
|
|
|
line = $item.line;
|
|
|
|
};
|
|
|
|
layout = auto;
|
|
|
|
blend = auto;
|
|
|
|
};
|
|
|
|
qfv_attachmentsetinfo_s = {
|
|
|
|
.name = qfv_attachmentsetinfo_t;
|
|
|
|
input = {
|
|
|
|
type = (labeledarray, qfv_attachmentrefinfo_t, name);
|
|
|
|
size = num_input;
|
|
|
|
values = input;
|
|
|
|
};
|
|
|
|
color = {
|
|
|
|
type = (labeledarray, qfv_attachmentrefinfo_t, name);
|
|
|
|
size = num_color;
|
|
|
|
values = color;
|
|
|
|
};
|
|
|
|
resolve = {
|
|
|
|
type = (labeledarray, qfv_attachmentrefinfo_t, name);
|
|
|
|
values = resolve;
|
|
|
|
matchSize = color;
|
|
|
|
};
|
|
|
|
depth = {
|
|
|
|
type = (labeledsingle, qfv_attachmentrefinfo_t, name);
|
|
|
|
value = depth;
|
|
|
|
};
|
|
|
|
preserve = {
|
|
|
|
type = (array, qfv_reference_t);
|
|
|
|
size = num_preserve;
|
|
|
|
values = preserve;
|
|
|
|
};
|
|
|
|
};
|
2023-06-16 10:05:53 +00:00
|
|
|
qfv_pushconstantinfo_s = {
|
|
|
|
.name = qfv_pushconstantinfo_t;
|
|
|
|
.type = (QFString, QFDictionary);
|
|
|
|
.dictionary = {
|
|
|
|
offset = -1;
|
|
|
|
size = -1;
|
|
|
|
.parse = auto;
|
|
|
|
name = $name;
|
|
|
|
line = $item.line;
|
|
|
|
};
|
|
|
|
.string = {
|
|
|
|
offset = -1;
|
|
|
|
size = -1;
|
|
|
|
name = $name;
|
|
|
|
line = $item.line;
|
|
|
|
type = $auto;
|
|
|
|
};
|
|
|
|
type = auto;
|
|
|
|
//stageFlags = auto;
|
|
|
|
offset = auto;
|
|
|
|
size = auto;
|
|
|
|
};
|
|
|
|
qfv_pushconstantrangeinfo_s = {
|
|
|
|
.name = qfv_pushconstantrangeinfo_t;
|
|
|
|
.type = (QFDictionary);
|
|
|
|
.dictionary = {
|
|
|
|
.parse = {
|
|
|
|
type = (labeledarray, qfv_pushconstantinfo_t, name);
|
|
|
|
size = num_pushconstants;
|
|
|
|
values = pushconstants;
|
|
|
|
};
|
|
|
|
stageFlags = $name.auto;
|
|
|
|
};
|
|
|
|
stageFlags = auto;
|
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_layoutinfo_s = {
|
|
|
|
.name = qfv_layoutinfo_t;
|
|
|
|
descriptorSets = {
|
|
|
|
type = (array, qfv_reference_t);
|
|
|
|
size = num_sets;
|
|
|
|
values = sets;
|
|
|
|
};
|
2023-06-16 10:05:53 +00:00
|
|
|
pushConstants = {
|
|
|
|
type = (labeledarray, qfv_pushconstantrangeinfo_t, stageFlags);
|
|
|
|
size = num_pushconstantranges;
|
|
|
|
values = pushconstantranges;
|
2023-03-12 05:36:47 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_pipelineinfo_s = {
|
|
|
|
.name = qfv_pipelineinfo_t;
|
|
|
|
color = auto;
|
|
|
|
name = {
|
|
|
|
type = string;
|
|
|
|
string = name;
|
|
|
|
};
|
|
|
|
tasks = {
|
|
|
|
type = (array, qfv_taskinfo_t);
|
|
|
|
size = num_tasks;
|
|
|
|
values = tasks;
|
|
|
|
};
|
2023-02-18 08:00:52 +00:00
|
|
|
|
2023-03-12 05:36:47 +00:00
|
|
|
flags = auto;
|
|
|
|
stages = {
|
|
|
|
type = (array, VkPipelineShaderStageCreateInfo);
|
|
|
|
size = num_graph_stages;
|
|
|
|
values = graph_stages;
|
|
|
|
};
|
|
|
|
stage = {
|
|
|
|
type = (single, VkPipelineShaderStageCreateInfo);
|
|
|
|
value = compute_stage;
|
|
|
|
};
|
|
|
|
dispatch = auto;
|
|
|
|
vertexInput = {
|
|
|
|
type = (single, VkPipelineVertexInputStateCreateInfo);
|
|
|
|
value = vertexInput;
|
|
|
|
};
|
|
|
|
inputAssembly = {
|
|
|
|
type = (single, VkPipelineInputAssemblyStateCreateInfo);
|
|
|
|
value = inputAssembly;
|
|
|
|
};
|
|
|
|
tessellation = {
|
|
|
|
type = (single, VkPipelineTessellationStateCreateInfo);
|
|
|
|
value = tessellation;
|
|
|
|
};
|
|
|
|
viewport = {
|
|
|
|
type = (single, VkPipelineViewportStateCreateInfo);
|
|
|
|
value = viewport;
|
|
|
|
};
|
|
|
|
rasterization = {
|
|
|
|
type = (single, VkPipelineRasterizationStateCreateInfo);
|
|
|
|
value = rasterization;
|
|
|
|
};
|
|
|
|
multisample = {
|
|
|
|
type = (single, VkPipelineMultisampleStateCreateInfo);
|
|
|
|
value = multisample;
|
|
|
|
};
|
|
|
|
depthStencil = {
|
|
|
|
type = (single, VkPipelineDepthStencilStateCreateInfo);
|
|
|
|
value = depthStencil;
|
|
|
|
};
|
|
|
|
colorBlend = {
|
|
|
|
type = (single, VkPipelineColorBlendStateCreateInfo);
|
|
|
|
value = colorBlend;
|
|
|
|
};
|
|
|
|
dynamic = {
|
|
|
|
type = (single, VkPipelineDynamicStateCreateInfo);
|
|
|
|
value = dynamic;
|
|
|
|
};
|
|
|
|
layout = auto;
|
|
|
|
};
|
|
|
|
qfv_subpassinfo_s = {
|
|
|
|
.name = qfv_subpassinfo_t;
|
|
|
|
name = {
|
|
|
|
type = string;
|
|
|
|
string = name;
|
|
|
|
};
|
|
|
|
color = auto;
|
|
|
|
dependencies = {
|
|
|
|
type = (labeledarray, qfv_dependencyinfo_t, name);
|
|
|
|
size = num_dependencies;
|
|
|
|
values = dependencies;
|
|
|
|
};
|
|
|
|
attachments = {
|
|
|
|
type = (single, qfv_attachmentsetinfo_t);
|
|
|
|
value = attachments;
|
|
|
|
};
|
|
|
|
pipelines = {
|
|
|
|
type = (labeledarray, qfv_pipelineinfo_t, name);
|
|
|
|
size = num_pipelines;
|
|
|
|
values = pipelines;
|
|
|
|
};
|
|
|
|
base_pipeline = {
|
|
|
|
//type = (labeledsingle, qfv_pipelineinfo_t, name);
|
|
|
|
type = (single, qfv_pipelineinfo_t, name);
|
|
|
|
value = base_pipeline;
|
|
|
|
};
|
|
|
|
};
|
2023-06-20 06:18:58 +00:00
|
|
|
qfv_attachmentinfo_s = {
|
|
|
|
.name = qfv_attachmentinfo_t;
|
|
|
|
.type = (QFString, QFDictionary);
|
|
|
|
.string = {
|
|
|
|
name = $name;
|
|
|
|
line = $item.line;
|
|
|
|
external = $item.string;
|
|
|
|
};
|
|
|
|
.dictionary = {
|
|
|
|
.parse = auto;
|
|
|
|
name = $name;
|
|
|
|
line = $item.line;
|
|
|
|
};
|
|
|
|
flags = auto;
|
|
|
|
format = auto;
|
|
|
|
samples = auto;
|
|
|
|
loadOp = auto;
|
|
|
|
storeOp = auto;
|
|
|
|
stencilLoadOp = auto;
|
|
|
|
stencilStoreOp = auto;
|
|
|
|
initialLayout = auto;
|
|
|
|
finalLayout = auto;
|
|
|
|
clearValue = auto;
|
|
|
|
view = auto;
|
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_framebufferinfo_s = {
|
|
|
|
.name = qfv_framebufferinfo_t;
|
|
|
|
width = auto;
|
|
|
|
height = auto;
|
|
|
|
layers = auto;
|
2023-06-17 03:13:38 +00:00
|
|
|
attachments = {
|
|
|
|
type = (labeledarray, qfv_attachmentinfo_t, name);
|
|
|
|
size = num_attachments;
|
|
|
|
values = attachments;
|
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
};
|
|
|
|
qfv_reference_s = {
|
|
|
|
.name = qfv_reference_t;
|
|
|
|
.type = QFString;
|
|
|
|
.string = {
|
|
|
|
name = $item.string;
|
|
|
|
line = $item.line;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_renderpassinfo_s = {
|
|
|
|
.name = qfv_renderpassinfo_t;
|
|
|
|
color = auto;
|
|
|
|
framebuffer = auto;
|
|
|
|
subpasses = {
|
|
|
|
type = (labeledarray, qfv_subpassinfo_t, name);
|
|
|
|
size = num_subpasses;
|
|
|
|
values = subpasses;
|
|
|
|
};
|
2023-06-22 15:43:34 +00:00
|
|
|
output = auto;
|
2023-03-12 05:36:47 +00:00
|
|
|
};
|
2023-03-29 00:45:17 +00:00
|
|
|
qfv_descriptorsetlayoutinfo_s = {
|
|
|
|
.name = qfv_descriptorsetlayoutinfo_t;
|
2023-03-12 05:36:47 +00:00
|
|
|
flags = auto;
|
|
|
|
bindings = {
|
|
|
|
type = (array, VkDescriptorSetLayoutBinding);
|
|
|
|
size = num_bindings;
|
|
|
|
values = bindings;
|
|
|
|
};
|
|
|
|
};
|
2023-03-27 15:12:13 +00:00
|
|
|
qfv_bufferviewinfo_s = {
|
|
|
|
.name = qfv_bufferviewinfo_t;
|
|
|
|
buffer = auto;
|
|
|
|
format = auto;
|
|
|
|
offset = auto;
|
|
|
|
range = auto;
|
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
qfv_computeinfo_s = {
|
|
|
|
.name = qfv_computeinfo_t;
|
|
|
|
color = auto;
|
|
|
|
pipelines = {
|
|
|
|
type = (labeledarray, qfv_pipelineinfo_t, name);
|
|
|
|
size = num_pipelines;
|
|
|
|
values = pipelines;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_renderinfo_s = {
|
|
|
|
.name = qfv_renderinfo_t;
|
|
|
|
color = auto;
|
|
|
|
renderpasses = {
|
|
|
|
type = (labeledarray, qfv_renderpassinfo_t, name);
|
|
|
|
size = num_renderpasses;
|
|
|
|
values = renderpasses;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_processinfo_s = {
|
|
|
|
.name = qfv_processinfo_t;
|
|
|
|
color = auto;
|
|
|
|
tasks = {
|
|
|
|
type = (array, qfv_taskinfo_t);
|
|
|
|
size = num_tasks;
|
|
|
|
values = tasks;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_stepinfo_s = {
|
|
|
|
.name = qfv_stepinfo_t;
|
|
|
|
color = auto;
|
|
|
|
dependencies = {
|
|
|
|
type = (array, qfv_reference_t);
|
|
|
|
size = num_dependencies;
|
|
|
|
values = dependencies;
|
|
|
|
};
|
|
|
|
render = {
|
2023-03-22 10:32:49 +00:00
|
|
|
type = (single, qfv_renderinfo_t, name);
|
2023-03-12 05:36:47 +00:00
|
|
|
value = render;
|
|
|
|
};
|
|
|
|
compute = {
|
2023-03-22 10:32:49 +00:00
|
|
|
type = (single, qfv_computeinfo_t, name);
|
2023-03-12 05:36:47 +00:00
|
|
|
value = compute;
|
|
|
|
};
|
|
|
|
process = {
|
2023-03-22 10:32:49 +00:00
|
|
|
type = (single, qfv_processinfo_t, name);
|
2023-03-12 05:36:47 +00:00
|
|
|
value = process;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
qfv_jobinfo_s = {
|
|
|
|
.name = qfv_jobinfo_t;
|
2023-03-22 10:32:49 +00:00
|
|
|
properties = ignore;
|
|
|
|
output = ignore;
|
|
|
|
images = ignore;
|
|
|
|
views = ignore;
|
|
|
|
renderpasses = ignore;
|
|
|
|
images = {
|
|
|
|
type = (labeledarray, qfv_imageinfo_t, name);
|
|
|
|
size = num_images;
|
|
|
|
values = images;
|
|
|
|
};
|
2023-03-27 15:12:13 +00:00
|
|
|
imageviews = {
|
2023-03-22 10:32:49 +00:00
|
|
|
type = (labeledarray, qfv_imageviewinfo_t, name);
|
2023-03-27 15:12:13 +00:00
|
|
|
size = num_imageviews;
|
|
|
|
values = imageviews;
|
|
|
|
};
|
|
|
|
buffers = {
|
|
|
|
type = (labeledarray, qfv_bufferinfo_t, name);
|
|
|
|
size = num_buffers;
|
|
|
|
values = buffers;
|
|
|
|
};
|
|
|
|
bufferviews = {
|
|
|
|
type = (labeledarray, qfv_bufferviewinfo_t, name);
|
|
|
|
size = num_bufferviews;
|
|
|
|
values = bufferviews;
|
2023-03-22 10:32:49 +00:00
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
steps = {
|
2023-03-22 10:32:49 +00:00
|
|
|
type = (labeledarray, qfv_stepinfo_t, name);
|
2023-03-12 05:36:47 +00:00
|
|
|
size = num_steps;
|
|
|
|
values = steps;
|
|
|
|
};
|
2023-03-22 10:32:49 +00:00
|
|
|
descriptorSetLayouts = {
|
2023-03-29 00:45:17 +00:00
|
|
|
type = (labeledarray, qfv_descriptorsetlayoutinfo_t, name);
|
|
|
|
size = num_descriptorsetlayouts;
|
|
|
|
values = descriptorsetlayouts;
|
2023-03-22 10:32:49 +00:00
|
|
|
};
|
2023-03-12 05:36:47 +00:00
|
|
|
};
|
|
|
|
};
|