Documentation
¶
Index ¶
- Constants
- type Extension
- type FormatProperties2
- type ImageFormatProperties2
- type PhysicalDeviceFeatures2
- func (o PhysicalDeviceFeatures2) PopulateCPointer(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, ...) (unsafe.Pointer, error)
- func (o *PhysicalDeviceFeatures2) PopulateHeader(allocator *cgoparam.Allocator, preallocatedPointer unsafe.Pointer, ...) (unsafe.Pointer, error)
- func (o *PhysicalDeviceFeatures2) PopulateOutData(cDataPointer unsafe.Pointer, helpers ...any) (next unsafe.Pointer, err error)
- type PhysicalDeviceImageFormatInfo2
- type PhysicalDeviceMemoryProperties2
- type PhysicalDeviceProperties2
- type PhysicalDeviceSparseImageFormatInfo2
- type QueueFamilyProperties2
- type SparseImageFormatProperties2
- type VulkanExtension
- func (e *VulkanExtension) PhysicalDeviceFeatures2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceFeatures2) error
- func (e *VulkanExtension) PhysicalDeviceFormatProperties2(physicalDevice core1_0.PhysicalDevice, format core1_0.Format, ...) error
- func (e *VulkanExtension) PhysicalDeviceImageFormatProperties2(physicalDevice core1_0.PhysicalDevice, options PhysicalDeviceImageFormatInfo2, ...) (common.VkResult, error)
- func (e *VulkanExtension) PhysicalDeviceMemoryProperties2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceMemoryProperties2) error
- func (e *VulkanExtension) PhysicalDeviceProperties2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceProperties2) error
- func (e *VulkanExtension) PhysicalDeviceQueueFamilyProperties2(physicalDevice core1_0.PhysicalDevice, ...) ([]*QueueFamilyProperties2, error)
- func (e *VulkanExtension) PhysicalDeviceSparseImageFormatProperties2(physicalDevice core1_0.PhysicalDevice, ...) ([]*SparseImageFormatProperties2, error)
Constants ¶
const ( // ExtensionName is "VK_KHR_get_physical_device_properties2" // // https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_get_physical_device_properties2.html ExtensionName string = C.VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Extension ¶
type Extension interface {
// PhysicalDeviceFeatures2 reports capabilities of a PhysicalDevice
//
// physicalDevice - The PhysicalDevice whose features are being queried
//
// out - A pre-allocated object in which the results will be populated. It should include any desired
// chained OutData objects.
//
// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceFeatures2.html
PhysicalDeviceFeatures2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceFeatures2) error
// PhysicalDeviceFormatProperties2 lists the PhysicalDevice object's format capabilities
//
// physicalDevice - The PhysicalDevice whose format properties are being queried
//
// format - The format whose properties are queried
//
// out - A pre-allocated object in which the results will be populated. It should include any desired
// chained OutData objects
//
// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceFormatProperties2.html
PhysicalDeviceFormatProperties2(physicalDevice core1_0.PhysicalDevice, format core1_0.Format, out *FormatProperties2) error
// PhysicalDeviceImageFormatProperties2 lists the PhysicalDevice object's format capabilities
//
// physicalDevice - The PhysicalDevice whose image format properties are being queried
//
// options - Describes the parameters that would be consumed by Device.CreateImage
//
// out - A pre-allocated object in which the results will be populated. It should include any desired
// chained OutData objects
//
// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2.html
PhysicalDeviceImageFormatProperties2(physicalDevice core1_0.PhysicalDevice, options PhysicalDeviceImageFormatInfo2, out *ImageFormatProperties2) (common.VkResult, error)
// PhysicalDeviceMemoryProperties2 reports memory information for this PhysicalDevice
//
// physicalDevice - The PhysicalDevice whose memory properties are being queried
//
// out - A pre-allocated object in which the results will be populated. It should include any desired
// chained OutData objects
//
// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2.html
PhysicalDeviceMemoryProperties2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceMemoryProperties2) error
// PhysicalDeviceProperties2 returns properties of this PhysicalDevice
//
// physicalDevice - The PhysicalDevice whose properties are being queried
//
// out - A pre-allocated object in which the results will be populated. It should include any desired
// chained OutData objects
//
// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceProperties2.html
PhysicalDeviceProperties2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceProperties2) error
// PhysicalDeviceQueueFamilyProperties2 reports properties of the queues of this PhysicalDevice
//
// physicalDevice - The PhysicalDevice whose queue family properties are being queried
//
// outDataFactory - This method can be provided to allocate each QueueFamilyProperties2 object
// that is returned, along with any chained OutData structures. It can also be left nil, in which case
// QueueFamilyProperties2 will be allocated with no chained structures.
//
// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties2.html
PhysicalDeviceQueueFamilyProperties2(physicalDevice core1_0.PhysicalDevice, outDataFactory func() *QueueFamilyProperties2) ([]*QueueFamilyProperties2, error)
// PhysicalDeviceSparseImageFormatProperties2 retrieves properties of an Image format applied to sparse Image
//
// physicalDevice - The PhysicalDevice whose sparse image format properties are being queried
//
// options - Contains input parameters
//
// outDataFactory - This method can be provided to allocate each SparseImageFormatProperties2 object
// that is returned, along with any chained OutData structures. It can also be left nil, in which case
// SparseImageFormatProperties2 will be allocated with no chained structures.
//
// https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2KHR.html
PhysicalDeviceSparseImageFormatProperties2(physicalDevice core1_0.PhysicalDevice, options PhysicalDeviceSparseImageFormatInfo2, outDataFactory func() *SparseImageFormatProperties2) ([]*SparseImageFormatProperties2, error)
}
Extension contains all commands for the khr_get_physical_device_properties2 extension
type FormatProperties2 ¶
type FormatProperties2 struct {
// FormatProperties describes features supported by the requested format
FormatProperties core1_0.FormatProperties
common.NextOutData
}
FormatProperties2 specifies the Image format properties
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkFormatProperties2KHR.html
func (*FormatProperties2) PopulateHeader ¶
func (*FormatProperties2) PopulateOutData ¶
type ImageFormatProperties2 ¶
type ImageFormatProperties2 struct {
// ImageFormatProperties is a structure in which capabilities are returned
ImageFormatProperties core1_0.ImageFormatProperties
common.NextOutData
}
ImageFormatProperties2 specifies image format properties
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkImageFormatProperties2KHR.html
func (*ImageFormatProperties2) PopulateHeader ¶
func (*ImageFormatProperties2) PopulateOutData ¶
type PhysicalDeviceFeatures2 ¶
type PhysicalDeviceFeatures2 struct {
// Features describes the fine-grained features of the Vulkan 1.0 API
Features core1_0.PhysicalDeviceFeatures
common.NextOptions
common.NextOutData
}
PhysicalDeviceFeatures2 describes the fine-grained features that can be supported by an implementation
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceFeatures2.html
func (PhysicalDeviceFeatures2) PopulateCPointer ¶
func (*PhysicalDeviceFeatures2) PopulateHeader ¶
func (*PhysicalDeviceFeatures2) PopulateOutData ¶
type PhysicalDeviceImageFormatInfo2 ¶
type PhysicalDeviceImageFormatInfo2 struct {
// Format indicates the Image format, corresponding to ImageCreateInfo.Format
Format core1_0.Format
// Type indicates the ImageType, corresponding to ImageCreateInfo.ImageType
Type core1_0.ImageType
// Tiling indicates the Image tiling, corresponding to ImageCreateInfo.Tiling
Tiling core1_0.ImageTiling
// Usage indicates the intended usage of the Image, corresponding to ImageCreateInfo.Usage
Usage core1_0.ImageUsageFlags
// Flags indicates additional parameters of the Image, corresponding to ImageCreateInfo.Flags
Flags core1_0.ImageCreateFlags
common.NextOptions
}
PhysicalDeviceImageFormatInfo2 specifies Image creation parameters
type PhysicalDeviceMemoryProperties2 ¶
type PhysicalDeviceMemoryProperties2 struct {
// MemoryProperties is a structure which is populated with the same values as in
// PhysicalDevice.MemoryProperties
MemoryProperties core1_0.PhysicalDeviceMemoryProperties
common.NextOutData
}
PhysicalDeviceMemoryProperties2 specifies PhysicalDevice memory properties
func (*PhysicalDeviceMemoryProperties2) PopulateHeader ¶
func (*PhysicalDeviceMemoryProperties2) PopulateOutData ¶
type PhysicalDeviceProperties2 ¶
type PhysicalDeviceProperties2 struct {
// Properties describes properties of the PhysicalDevice
Properties core1_0.PhysicalDeviceProperties
common.NextOutData
}
PhysicalDeviceProperties2 specifies PhysicalDevice properties
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceProperties2.html
func (*PhysicalDeviceProperties2) PopulateHeader ¶
func (*PhysicalDeviceProperties2) PopulateOutData ¶
type PhysicalDeviceSparseImageFormatInfo2 ¶
type PhysicalDeviceSparseImageFormatInfo2 struct {
// Format is the Image format
Format core1_0.Format
// Type is the dimensionality of the Image
Type core1_0.ImageType
// Samples specifies the number of samples per texel
Samples core1_0.SampleCountFlags
// Usage describes the intended usage of the Image
Usage core1_0.ImageUsageFlags
// Tiling is the tiling arrangement of the texel blocks in memory
Tiling core1_0.ImageTiling
common.NextOptions
}
PhysicalDeviceSparseImageFormatInfo2 specifies sparse Image format inputs
type QueueFamilyProperties2 ¶
type QueueFamilyProperties2 struct {
// QueueFamilyProperties is populated with the same values as in
// PhysicalDevice.QueueFamilyProperties
QueueFamilyProperties core1_0.QueueFamilyProperties
common.NextOutData
}
QueueFamilyProperties2 provides information about a Queue family
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkQueueFamilyProperties2KHR.html
func (*QueueFamilyProperties2) PopulateHeader ¶
func (*QueueFamilyProperties2) PopulateOutData ¶
type SparseImageFormatProperties2 ¶
type SparseImageFormatProperties2 struct {
// Properties is populated with the same values as in PhysicalDevice.SparseImageFormatProperties
Properties core1_0.SparseImageFormatProperties
common.NextOutData
}
SparseImageFormatProperties2 specifies sparse Image format properties
func (*SparseImageFormatProperties2) PopulateHeader ¶
func (*SparseImageFormatProperties2) PopulateOutData ¶
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 CreateExtensionFromDriver ¶
func CreateExtensionFromDriver(driver ext_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 CreateExtensionFromInstance ¶
func CreateExtensionFromInstance(instance core1_0.Instance) *VulkanExtension
CreateExtensionFromInstance produces an Extension object from an Instance with khr_get_physical_device_properties2 loaded
func (*VulkanExtension) PhysicalDeviceFeatures2 ¶
func (e *VulkanExtension) PhysicalDeviceFeatures2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceFeatures2) error
func (*VulkanExtension) PhysicalDeviceFormatProperties2 ¶
func (e *VulkanExtension) PhysicalDeviceFormatProperties2(physicalDevice core1_0.PhysicalDevice, format core1_0.Format, out *FormatProperties2) error
func (*VulkanExtension) PhysicalDeviceImageFormatProperties2 ¶
func (e *VulkanExtension) PhysicalDeviceImageFormatProperties2(physicalDevice core1_0.PhysicalDevice, options PhysicalDeviceImageFormatInfo2, out *ImageFormatProperties2) (common.VkResult, error)
func (*VulkanExtension) PhysicalDeviceMemoryProperties2 ¶
func (e *VulkanExtension) PhysicalDeviceMemoryProperties2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceMemoryProperties2) error
func (*VulkanExtension) PhysicalDeviceProperties2 ¶
func (e *VulkanExtension) PhysicalDeviceProperties2(physicalDevice core1_0.PhysicalDevice, out *PhysicalDeviceProperties2) error
func (*VulkanExtension) PhysicalDeviceQueueFamilyProperties2 ¶
func (e *VulkanExtension) PhysicalDeviceQueueFamilyProperties2(physicalDevice core1_0.PhysicalDevice, outDataFactory func() *QueueFamilyProperties2) ([]*QueueFamilyProperties2, error)
func (*VulkanExtension) PhysicalDeviceSparseImageFormatProperties2 ¶
func (e *VulkanExtension) PhysicalDeviceSparseImageFormatProperties2(physicalDevice core1_0.PhysicalDevice, options PhysicalDeviceSparseImageFormatInfo2, outDataFactory func() *SparseImageFormatProperties2) ([]*SparseImageFormatProperties2, error)