Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- newtype VkBufferViewCreateFlags = VkBufferViewCreateFlags VkFlags
- type VkBufferView = Ptr VkBufferView_T
- vkCreateBufferView :: ("device" ::: VkDevice) -> ("pCreateInfo" ::: Ptr VkBufferViewCreateInfo) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pView" ::: Ptr VkBufferView) -> IO VkResult
- vkDestroyBufferView :: ("device" ::: VkDevice) -> ("bufferView" ::: VkBufferView) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> IO ()
- data VkBufferViewCreateInfo = VkBufferViewCreateInfo {}
Documentation
newtype VkBufferViewCreateFlags Source #
VkBufferViewCreateFlags - Reserved for future use
Description
VkBufferViewCreateFlags
is a bitmask type for setting a mask, but is
currently reserved for future use.
See Also
Instances
type VkBufferView = Ptr VkBufferView_T Source #
VkBufferView - Opaque handle to a buffer view object
See Also
VkWriteDescriptorSet
,
vkCreateBufferView
, vkDestroyBufferView
vkCreateBufferView :: ("device" ::: VkDevice) -> ("pCreateInfo" ::: Ptr VkBufferViewCreateInfo) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pView" ::: Ptr VkBufferView) -> IO VkResult Source #
vkCreateBufferView - Create a new buffer view object
Parameters
device
is the logical device that creates the buffer view.
pCreateInfo
is a pointer to an instance of theVkBufferViewCreateInfo
structure containing parameters to be used to create the buffer.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.pView
points to aVkBufferView
handle in which the resulting buffer view object is returned.
Valid Usage (Implicit)
device
must be a validVkDevice
handle
pCreateInfo
must be a valid pointer to a validVkBufferViewCreateInfo
structure- If
pAllocator
is notNULL
,pAllocator
must be a valid pointer to a validVkAllocationCallbacks
structure pView
must be a valid pointer to aVkBufferView
handle
Return Codes
[Success]
- VK_SUCCESS
[Failure]
- VK_ERROR_OUT_OF_HOST_MEMORY
VK_ERROR_OUT_OF_DEVICE_MEMORY
See Also
VkAllocationCallbacks
,
VkBufferView
, VkBufferViewCreateInfo
,
VkDevice
vkDestroyBufferView :: ("device" ::: VkDevice) -> ("bufferView" ::: VkBufferView) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> IO () Source #
vkDestroyBufferView - Destroy a buffer view object
Parameters
device
is the logical device that destroys the buffer view.
bufferView
is the buffer view to destroy.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.
Valid Usage
- All submitted commands that refer to
bufferView
must have completed execution
- If
VkAllocationCallbacks
were provided whenbufferView
was created, a compatible set of callbacks must be provided here - If no
VkAllocationCallbacks
were provided whenbufferView
was created,pAllocator
must beNULL
Valid Usage (Implicit)
device
must be a validVkDevice
handle
- If
bufferView
is notVK_NULL_HANDLE
,bufferView
must be a validVkBufferView
handle - If
pAllocator
is notNULL
,pAllocator
must be a valid pointer to a validVkAllocationCallbacks
structure - If
bufferView
is a valid handle, it must have been created, allocated, or retrieved fromdevice
Host Synchronization
- Host access to
bufferView
must be externally synchronized
See Also
data VkBufferViewCreateInfo Source #
VkBufferViewCreateInfo - Structure specifying parameters of a newly created buffer view
Valid Usage
offset
must be less than the size ofbuffer
offset
must be a multiple ofVkPhysicalDeviceLimits
::minTexelBufferOffsetAlignment
- If
range
is not equal toVK_WHOLE_SIZE
,range
must be greater than0
- If
range
is not equal toVK_WHOLE_SIZE
,range
must be a multiple of the element size offormat
- If
range
is not equal toVK_WHOLE_SIZE
,range
divided by the element size offormat
must be less than or equal toVkPhysicalDeviceLimits
::maxTexelBufferElements
- If
range
is not equal toVK_WHOLE_SIZE
, the sum ofoffset
andrange
must be less than or equal to the size ofbuffer
buffer
must have been created with ausage
value containing at least one ofVK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT
orVK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT
- If
buffer
was created withusage
containingVK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT
,format
must be supported for uniform texel buffers, as specified by theVK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
flag inVkFormatProperties
::bufferFeatures
returned byvkGetPhysicalDeviceFormatProperties
- If
buffer
was created withusage
containingVK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT
,format
must be supported for storage texel buffers, as specified by theVK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
flag inVkFormatProperties
::bufferFeatures
returned byvkGetPhysicalDeviceFormatProperties
- If
buffer
is non-sparse then it must be bound completely and contiguously to a singleVkDeviceMemory
object
Valid Usage (Implicit)
sType
must beVK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO
pNext
must beNULL
flags
must be0
buffer
must be a validVkBuffer
handleformat
must be a validVkFormat
value
See Also
VkBuffer
,
VkBufferViewCreateFlags
, VkDeviceSize
,
VkFormat
,
VkStructureType
, vkCreateBufferView
VkBufferViewCreateInfo | |
|
Instances
Eq VkBufferViewCreateInfo Source # | |
Show VkBufferViewCreateInfo Source # | |
showsPrec :: Int -> VkBufferViewCreateInfo -> ShowS # show :: VkBufferViewCreateInfo -> String # showList :: [VkBufferViewCreateInfo] -> ShowS # | |
Storable VkBufferViewCreateInfo Source # | |
sizeOf :: VkBufferViewCreateInfo -> Int # alignment :: VkBufferViewCreateInfo -> Int # peekElemOff :: Ptr VkBufferViewCreateInfo -> Int -> IO VkBufferViewCreateInfo # pokeElemOff :: Ptr VkBufferViewCreateInfo -> Int -> VkBufferViewCreateInfo -> IO () # peekByteOff :: Ptr b -> Int -> IO VkBufferViewCreateInfo # pokeByteOff :: Ptr b -> Int -> VkBufferViewCreateInfo -> IO () # peek :: Ptr VkBufferViewCreateInfo -> IO VkBufferViewCreateInfo # poke :: Ptr VkBufferViewCreateInfo -> VkBufferViewCreateInfo -> IO () # |