7. External types
Types defined by the raw vulkan binding and the generated vulkan_structs
view module that the documented boost surface references but does not own. The
raw layer mirrors the Vulkan C API 1:1 and is not re-documented here — see the
Vulkan specification
for the authoritative field-by-field reference. This page anchors the labels so
the generated boost pages can link without dangling references.
7.1. Core enums
7.1.1. vulkan::VkResult
Return code for almost every Vulkan command. VK_SUCCESS is 0; negative
values are errors. The boost create_* / command wrappers run it through
vk_check — left to default they panic on a non-success code, or forward it
to a caller-supplied var result : VkResult?.
7.1.2. vulkan::VkFormat
Pixel / vertex-attribute format enum (VK_FORMAT_R8G8B8A8_UNORM, …). Passed to
image, image-view, render-pass, and swapchain creation.
7.1.3. vulkan::VkImageLayout
Image memory layout (VK_IMAGE_LAYOUT_UNDEFINED,
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, …) used in render passes and
barriers.
7.1.4. vulkan::VkPipelineBindPoint
Selects which bind point a pipeline / descriptor set binds to —
GRAPHICS or COMPUTE. The trailing bind_point argument to
cmd_bind_pipeline (defaults to GRAPHICS).
7.2. Core handles and aliases
7.2.1. vulkan::VkPhysicalDevice
Raw non-owning handle for a physical GPU, returned by select_physical_device
and consumed by device creation and memory queries. Has no RAII wrapper (it is
owned by the instance, not created or destroyed).
7.2.2. vulkan::VkQueue
Raw non-owning handle for a device queue, returned by get_device_queue.
Owned by the device; no separate destroy.
7.2.3. vulkan::VkMemoryPropertyFlags
Bitfield of memory-property bits (DEVICE_LOCAL, HOST_VISIBLE,
HOST_COHERENT, …) used by find_memory_type to pick a heap.
7.2.4. vulkan::VkClearValue
Union of a clear color or depth/stencil value. clear_color builds one;
record_render_pass consumes it.
7.2.5. vulkan::VkRect2D
An offset + extent rectangle. full_area builds one covering the
whole target; used as the render-pass render area.
7.3. vulkan_structs view structs
7.3.1. vulkan_structs::*CreateInfo
The idiomatic view structs accepted by the create_* creators on the
Commands — RAII creators returning owning handle wrappers page. Each shadows the matching Vulkan
Vk*CreateInfo struct with daslang-friendly fields: array<T> instead of
count+pointer pairs, string instead of const char*, boost handle types
instead of raw ones, and sType filled automatically. Because they are
generated 1:1 from vk.xml, their fields are documented field-by-field in the
Vulkan specification;
see Overview for the view-struct mechanism.