khr_maintenance4

package
v2.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 27, 2023 License: MIT Imports: 8 Imported by: 1

Documentation

Index

Constants

View Source
const (
	// ExtensionName is "VK_KHR_maintenance4"
	//
	// https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_maintenance4.html
	ExtensionName string = C.VK_KHR_MAINTENANCE_4_EXTENSION_NAME

	// ImageAspectNone specifies no image aspect, or the image aspect is not applicable
	//
	// https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkImageAspectFlagBits.html
	ImageAspectNone core1_0.ImageAspectFlags = C.VK_IMAGE_ASPECT_NONE_KHR
)

Variables

This section is empty.

Functions

This section is empty.

Types

type DeviceBufferMemoryRequirements

type DeviceBufferMemoryRequirements struct {
	CreateInfo core1_0.BufferCreateInfo

	common.NextOptions
}

DeviceBufferMemoryRequirements is used to provide BufferCreateInfo data to the DeviceBufferMemoryRequirements extension method

https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDeviceBufferMemoryRequirementsKHR.html

func (DeviceBufferMemoryRequirements) PopulateCPointer

func (o DeviceBufferMemoryRequirements) PopulateCPointer(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, next unsafe.Pointer) (unsafe.Pointer, error)

type DeviceImageMemoryRequirements

type DeviceImageMemoryRequirements struct {
	CreateInfo core1_0.ImageCreateInfo

	common.NextOptions
}

DeviceImageMemoryRequirements is used to provide ImageCreateInfo data to the DeviceImageMemoryRequirements extension method

https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDeviceImageMemoryRequirementsKHR.html

func (DeviceImageMemoryRequirements) PopulateCPointer

func (o DeviceImageMemoryRequirements) PopulateCPointer(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, next unsafe.Pointer) (unsafe.Pointer, error)

type Extension

type Extension interface {
	// DeviceBufferMemoryRequirements returns the memory requirements for a specified Vulkan
	// object.
	//
	// device - The Device which will be used to create the Buffer
	//
	// options - Contains the parameters required for the memory requirements query
	//
	// outData - A pre-allocated object in which memory requirements will be populated.
	// It should include any desired chained OutData objects
	//
	// https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkGetDeviceBufferMemoryRequirementsKHR.html
	DeviceBufferMemoryRequirements(device core1_0.Device, options DeviceBufferMemoryRequirements, outData *core1_1.MemoryRequirements2) error
	// DeviceImageMemoryRequirements returns the memory requirements for a specified Vulkan
	// object.
	//
	// device - The Device which will be used to create the Buffer
	//
	// options - Contains the parameters required for the memory requirements query
	//
	// outData - A pre-allocated object in which memory requirements will be populated.
	// It should include any desired chained OutData objects
	//
	// https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkGetDeviceImageMemoryRequirementsKHR.html
	DeviceImageMemoryRequirements(device core1_0.Device, options DeviceImageMemoryRequirements, outData *core1_1.MemoryRequirements2) error
	// DeviceImageSparseMemoryRequirements queries the memory requirements for a sparse image
	//
	// device - The Device which will be used to create the Buffer
	//
	// options - Contains the parameters required for the memory requirements query
	//
	// outDataFactory - This method can be provided to allocate each SparseImageMemoryRequirements2 object
	// that is returned, along with any chained OutData structures. It can also be left nil, in which case
	// SparseImageMemoryRequirements2 will be allocated with no chained structures.
	DeviceImageSparseMemoryRequirements(device core1_0.Device, options DeviceImageMemoryRequirements, outDataFactory func() *core1_1.SparseImageMemoryRequirements2) ([]*core1_1.SparseImageMemoryRequirements2, error)
}

type PhysicalDeviceMaintenance4Features

type PhysicalDeviceMaintenance4Features struct {
	Maintenance4 bool

	common.NextOptions
	common.NextOutData
}

PhysicalDeviceMaintenance4Features describes support for maintenance4 functionality

https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceMaintenance4Features.html

func (PhysicalDeviceMaintenance4Features) PopulateCPointer

func (o PhysicalDeviceMaintenance4Features) PopulateCPointer(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, next unsafe.Pointer) (unsafe.Pointer, error)

func (*PhysicalDeviceMaintenance4Features) PopulateHeader

func (o *PhysicalDeviceMaintenance4Features) PopulateHeader(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, next unsafe.Pointer) (unsafe.Pointer, error)

func (*PhysicalDeviceMaintenance4Features) PopulateOutData

func (o *PhysicalDeviceMaintenance4Features) PopulateOutData(cDataPointer unsafe.Pointer, helpers ...any) (next unsafe.Pointer, err error)

type PhysicalDeviceMaintenance4Properties

type PhysicalDeviceMaintenance4Properties struct {
	MaxBufferSize int

	common.NextOutData
}

PhysicalDeviceMaintenance4Properties describes properties introduced with khr_maintenance4

https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceMaintenance4Properties.html

func (*PhysicalDeviceMaintenance4Properties) PopulateHeader

func (o *PhysicalDeviceMaintenance4Properties) PopulateHeader(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, next unsafe.Pointer) (unsafe.Pointer, error)

func (*PhysicalDeviceMaintenance4Properties) PopulateOutData

func (o *PhysicalDeviceMaintenance4Properties) PopulateOutData(cDataPointer unsafe.Pointer, helpers ...any) (next unsafe.Pointer, err error)

type VulkanExtension

type VulkanExtension struct {
	// contains filtered or unexported fields
}

VulkanExtension is an implementation of the Extension interface that actually communicates with Vulkan. This is the default implementation. See the interface for more documentation.

func CreateExtensionFromDevice

func CreateExtensionFromDevice(device core1_0.Device) *VulkanExtension

CreateExtensionFromDevice produces an Extension object from a Device with khr_maintenance4 loaded

func CreateExtensionFromDriver

func CreateExtensionFromDriver(driver khr_maintenance4_driver.Driver) *VulkanExtension

CreateExtensionFromDriver generates an Extension from a driver.Driver object- this is usually used in tests to build an Extension from mock drivers

func (*VulkanExtension) DeviceBufferMemoryRequirements

func (e *VulkanExtension) DeviceBufferMemoryRequirements(device core1_0.Device, options DeviceBufferMemoryRequirements, outData *core1_1.MemoryRequirements2) error

func (*VulkanExtension) DeviceImageMemoryRequirements

func (e *VulkanExtension) DeviceImageMemoryRequirements(device core1_0.Device, options DeviceImageMemoryRequirements, outData *core1_1.MemoryRequirements2) error

func (*VulkanExtension) DeviceImageSparseMemoryRequirements

func (e *VulkanExtension) DeviceImageSparseMemoryRequirements(device core1_0.Device, options DeviceImageMemoryRequirements, outDataFactory func() *core1_1.SparseImageMemoryRequirements2) ([]*core1_1.SparseImageMemoryRequirements2, error)

Directories

Path Synopsis
Package mock_maintenance4 is a generated GoMock package.
Package mock_maintenance4 is a generated GoMock package.
Package mock_maintenance4 is a generated GoMock package.
Package mock_maintenance4 is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL