XII Release 0.1.0
Loading...
Searching...
No Matches
xiiGALCommandListVulkan Class Referencefinal
Inheritance diagram for xiiGALCommandListVulkan:
[legend]

Classes

struct  CommandListFlags
 
struct  CommandListState
 

Public Member Functions

XII_ALWAYS_INLINE vk::CommandBuffer GetVulkanCommandBuffer () const
 
XII_ALWAYS_INLINE vk::PipelineStageFlags GetVulkanCommandBufferSupportedStageFlags () const
 
XII_ALWAYS_INLINE vk::AccessFlags GetVulkanCommandBufferSupportedAccessFlags () const
 
void TransitionImageLayout (vk::Image vkImage, vk::ImageLayout vkOldLayout, vk::ImageLayout vkNewLayout, const vk::ImageSubresourceRange &vkImageSubresourceRange, vk::PipelineStageFlags vkPipelineSourceStageFlags, vk::PipelineStageFlags vkPipelineDestinationStageFlags)
 
void MemoryBarrier (vk::AccessFlags vkSourceAccessFlags, vk::AccessFlags vkDestinationAccessFlags, vk::PipelineStageFlags vkPipelineSourceStageFlags, vk::PipelineStageFlags vkPipelineDestinationStageFlags)
 
void TransitionBufferState (xiiGALBufferVulkan *pBufferVulkan, xiiBitflags< xiiGALResourceStateFlags > oldState, xiiBitflags< xiiGALResourceStateFlags > newState, const bool bUpdateBufferState)
 
void BufferMemoryBarrier (xiiGALBufferVulkan *pBufferVulkan, vk::AccessFlags newAccessFlags)
 
void TransitionTextureState (xiiGALTextureVulkan *pTextureVulkan, xiiBitflags< xiiGALResourceStateFlags > oldState, xiiBitflags< xiiGALResourceStateFlags > newState, xiiBitflags< xiiGALStateTransitionFlags > flags, vk::ImageSubresourceRange *pSubresourceRange=nullptr)
 
void TransitionImageLayout (xiiGALTextureVulkan *pTextureVulkan, vk::ImageLayout newLayout)
 
void TransitionOrVerifyBufferState (xiiGALBufferVulkan *pBufferVulkan, xiiEnum< xiiGALStateTransitionMode > transitionMode, xiiBitflags< xiiGALResourceStateFlags > requiredState, vk::AccessFlagBits expectedAccessFlags, const char *szOperationName)
 
void TransitionOrVerifyTextureState (xiiGALTextureVulkan *pTextureVulkan, xiiEnum< xiiGALStateTransitionMode > transitionMode, xiiBitflags< xiiGALResourceStateFlags > requiredState, vk::ImageLayout expectedLayout, const char *szOperationName)
 
void FlushBarriers ()
 
void CopyBufferToTexture (vk::Buffer vkSourceBuffer, xiiUInt64 uiSourceBufferOffset, xiiUInt32 uiSourceBufferRowStrideInTexels, xiiGALTextureVulkan *pDestinationTextureVulkan, const xiiBoundingBoxU32 &destinationRegion, xiiUInt32 uiDestinationMipLevel, xiiUInt32 uiDestinationArraySlice, bool bVerifyOnly=false)
 
void CopyTextureToBuffer (xiiGALTextureVulkan *pSourceTextureVulkan, const xiiBoundingBoxU32 &sourceRegion, xiiUInt32 uiSourceMipLevel, xiiUInt32 uiSourceArraySlice, vk::Buffer vkDestinationBuffer, xiiUInt64 uiDestinationBufferOffset, xiiUInt32 uiDestinationBufferRowStrideInTexels, bool bVerifyOnly=false)
 
void UpdateBufferRegion (xiiGALBufferVulkan *pBufferVulkan, vk::Buffer vkSourceBuffer, xiiUInt64 uiSourceOffset, xiiUInt64 uiDestinationOffset, xiiUInt64 uiSizeInBytes)
 
void CopyBufferToImage (vk::Buffer vkSourceBuffer, vk::Image vkDestinationImage, vk::ImageLayout vkDestinationImageLayout, xiiArrayPtr< const vk::BufferImageCopy > pRegions)
 
void CopyImageToBuffer (vk::Image vkSourceImage, vk::ImageLayout vkSourceImageLayout, vk::Buffer vkDestinationBuffer, xiiArrayPtr< const vk::BufferImageCopy > pRegions)
 
void CopyImage (vk::Image vkSourceImage, vk::ImageLayout vkSourceImageLayout, vk::Image vkDestinationImage, vk::ImageLayout vkDestinationImageLayout, xiiArrayPtr< const vk::ImageCopy > pRegions)
 
void CopyTextureRegion (xiiGALTextureVulkan *pSourceTextureVulkan, xiiGALTextureVulkan *pDestinationTextureVulkan, const vk::ImageCopy &copyRegion)
 
void UpdateTextureRegion (const void *pSourceData, xiiUInt64 uiSourceStride, xiiUInt64 uiSourceDepthStride, xiiGALTextureVulkan *pTextureVulkan, xiiUInt32 uiMipLevel, xiiUInt32 uiSlice, const xiiBoundingBoxU32 &destinationBox)
 
void AddWaitSemaphore (vk::Semaphore semaphore, vk::PipelineStageFlags pipelineFlags, xiiUInt64 uiValue=0ULL)
 
void AddSignalSemaphore (vk::Semaphore semaphore, xiiUInt64 uiValue=0ULL)
 
XII_ALWAYS_INLINE xiiGALStagingBufferPoolVulkanGetVulkanUploadStagingBufferPool () const
 
- Public Member Functions inherited from xiiGALCommandList
XII_ALWAYS_INLINE const xiiGALCommandListCreationDescriptionGetDescription () const
 This returns the creation description for this object.
 
XII_ALWAYS_INLINE xiiGALCommandQueueGetCommandQueue () const
 This returns the command queue for this object.
 
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALPipelineStateGetPipelineState () const
 This returns the active pipeline state handle for this object.
 
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALPipelineResourceSignatureGetPipelineResourceSignature () const
 This returns the active pipeline resource signature handle for this object.
 
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALRenderPassGetRenderPass () const
 This returns the active render pass handle for this object.
 
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALFramebufferGetFramebuffer () const
 This returns the active frame buffer handle for this object.
 
XII_ALWAYS_INLINE const xiiGALCommandListStatisticsGetCommandListStatistics () const
 This returns the command list statistics.
 
xiiUInt64 Submit ()
 Submits a command list to the command queue for execution. The command list is reset after the execution on the command queue.
 
void SetPipelineState (xiiSharedPtr< xiiGALPipelineState > pPipelineState)
 Sets the pipeline state object for the command list.
 
void SetStencilRef (xiiUInt32 uiStencilRef)
 Sets the stencil reference value used in the stencil test.
 
void SetBlendFactor (const xiiColor &blendFactor)
 Sets the blend factors used in the blend state.
 
void SetViewports (xiiArrayPtr< const xiiGALViewport > pViewports)
 Sets the viewports used in the rasterizer stage. This defines the area of the render target to which the rasterizer will clip.
 
XII_ALWAYS_INLINE void SetViewport (const xiiGALViewport &viewport)
 Sets a single viewport for the rasterizer stage. This simplifies the process when only one viewport is needed.
 
void SetScissorRects (xiiArrayPtr< const xiiRectU32 > pRects)
 Sets the scissor rectangles used in the rasterizer stage. This defines the area of the render target to which the rasterizer will clip.
 
XII_ALWAYS_INLINE void SetScissorRect (const xiiRectU32 &rect)
 Sets a single scissor rectangle for the rasterizer stage. This simplifies the process when only one scissor rectangle is needed.
 
void SetIndexBuffer (xiiSharedPtr< xiiGALBuffer > pIndexBuffer, xiiUInt64 uiByteOffset=0U, xiiEnum< xiiGALStateTransitionMode > transitionMode=xiiGALStateTransitionMode::Transition)
 Sets the index buffer for the input-assembler stage of the pipeline. This contains the indices into the vertex buffers.
 
void SetVertexBuffers (xiiUInt32 uiStartSlot, xiiArrayPtr< xiiSharedPtr< xiiGALBuffer > > pVertexBuffers, xiiArrayPtr< xiiUInt64 > pByteOffsets, xiiBitflags< xiiGALSetVertexBufferFlags > flags=xiiGALSetVertexBufferFlags::None, xiiEnum< xiiGALStateTransitionMode > transitionMode=xiiGALStateTransitionMode::Transition)
 Sets the vertex buffers for the input-assembler stage of the pipeline. This contains the vertex data.
 
void SetConstantBuffer (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALBuffer > pConstantBuffer)
 This is used to set the constant (uniform) buffer for a shader resource.
 
void SetShaderResourceBufferView (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALBufferView > pBufferView)
 This is used to set the buffer view for a shader resource.
 
void SetShaderResourceTextureView (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALTextureView > pTextureView)
 This is used to set the texture view for a shader resource.
 
void SetUnorderedAccessBufferView (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALBufferView > pBufferView)
 
void SetUnorderedAccessTextureView (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALTextureView > pTextureView)
 This is used to set the texture view for an unordered access.
 
void SetSampler (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALSampler > pSampler)
 This is used to set the sampler for a sampler resource.
 
void ResolveAndSetConstantBuffer (const xiiTempHashedString &sResourceName, xiiSharedPtr< xiiGALBuffer > pConstantBuffer, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
 Resolves and sets a constant buffer for the given resource name.
 
void ResolveAndSetShaderResourceBufferView (const xiiTempHashedString &sResourceName, xiiSharedPtr< xiiGALBufferView > pBufferView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
 Resolves and sets a shader resource buffer view for the given resource name.
 
void ResolveAndSetShaderResourceTextureView (const xiiTempHashedString &sResourceName, xiiSharedPtr< xiiGALTextureView > pTextureView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
 Resolves and sets a shader resource texture view for the given resource name.
 
void ResolveAndSetUnorderedAccessBufferView (const xiiTempHashedString &sResourceName, xiiSharedPtr< xiiGALBufferView > pBufferView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
 Resolves and sets an unordered access buffer view for the given resource name.
 
void ResolveAndSetUnorderedAccessTextureView (const xiiTempHashedString &sResourceName, xiiSharedPtr< xiiGALTextureView > pTextureView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
 Resolves and sets an unordered access texture view for the given resource name.
 
void ResolveAndSetSampler (const xiiTempHashedString &sResourceName, xiiSharedPtr< xiiGALSampler > pSampler, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
 Resolves and sets a sampler for the given resource name.
 
xiiResult CommitShaderResources (xiiEnum< xiiGALStateTransitionMode > mode=xiiGALStateTransitionMode::Transition)
 This commits the pipeline shader resources to the GPU, and ensures that all necessary state transitions are performed.
 
void ClearRenderTargetView (xiiSharedPtr< xiiGALTextureView > pRenderTargetView, const xiiColor &clearColor)
 This clears the specified render target view to the specified color.
 
void ClearDepthStencilView (xiiSharedPtr< xiiGALTextureView > pDepthStencilView, bool bClearDepth, bool bClearStencil, float fDepthClear, xiiUInt8 uiStencilClear)
 This clears the specified depth stencil view to the specified depth and stencil values.
 
void BeginRenderPass (const xiiGALBeginRenderPassDescription &beginRenderPass)
 This begins a render pass, which contains a collection of attachments, subpasses, and dependencies between the subpasses, and describes how the attachments are used over the course of the subpasses.
 
void NextSubpass ()
 This transitions to the next subpass of the begun render pass.
 
void EndRenderPass ()
 This ends a render pass that has already begun.
 
void Draw (const xiiGALDrawDescription &description)
 Issues a non-indexed draw call using the specified parameters.
 
void DrawIndexed (const xiiGALDrawIndexedDescription &description)
 Issues an indexed draw call using the specified parameters.
 
void DrawIndirect (const xiiGALDrawIndirectDescription &description)
 Issues an indirect draw call based on arguments stored in a GPU buffer.
 
void DrawIndexedIndirect (const xiiGALDrawIndexedIndirectDescription &description)
 Issues an indexed indirect draw call based on arguments stored in a GPU buffer.
 
void DrawMesh (const xiiGALDrawMeshDescription &description)
 Issues a draw call that dispatches GPU mesh shaders directly.
 
void DrawMeshIndirect (const xiiGALDrawMeshIndirectDescription &description)
 Issues an indirect mesh shader draw using arguments stored in a GPU buffer.
 
void MultiDraw (const xiiGALMultiDrawDescription &description)
 Executes a batch of non-indexed draw calls using an array of parameters.
 
void MultiDrawIndexed (const xiiGALMultiDrawIndexedDescription &description)
 Executes a batch of indexed draw calls using an array of parameters.
 
void DispatchCompute (const xiiGALDispatchComputeDescription &description)
 Dispatches a compute workload using the specified thread group dimensions.
 
void DispatchComputeIndirect (const xiiGALDispatchComputeIndirectDescription &description)
 Dispatches a compute workload using arguments stored in a GPU buffer.
 
void BeginQuery (xiiSharedPtr< xiiGALQuery > pQuery)
 Begins a query.
 
void EndQuery (xiiSharedPtr< xiiGALQuery > pQuery)
 Ends a query.
 
void UpdateBuffer (xiiSharedPtr< xiiGALBuffer > pBuffer, xiiUInt32 uiDestinationOffset, xiiArrayPtr< const xiiUInt8 > pSourceData)
 Updates a buffer.
 
void CopyBuffer (xiiSharedPtr< xiiGALBuffer > pSourceBuffer, xiiSharedPtr< xiiGALBuffer > pDestinationBuffer)
 Copies the entire contents of the source buffer to the destination buffer.
 
void CopyBufferRegion (xiiSharedPtr< xiiGALBuffer > pSourceBuffer, xiiUInt64 uiSourceOffset, xiiSharedPtr< xiiGALBuffer > pDestinationBuffer, xiiUInt64 uiDestinationOffset, xiiUInt64 uiSize)
 Copies a region from the source buffer to the destination buffer.
 
xiiResult MapBuffer (xiiSharedPtr< xiiGALBuffer > pBuffer, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, void *&pMappedData)
 Maps a buffer into the CPU's address space.
 
xiiResult UnmapBuffer (xiiSharedPtr< xiiGALBuffer > pBuffer, xiiEnum< xiiGALMapType > mapType)
 Unmaps a buffer from the CPU's address space.
 
void UpdateTexture (xiiSharedPtr< xiiGALTexture > pTexture, const xiiGALTextureMipLevelData &textureMiplevelData, const xiiBoundingBoxU32 &textureBox, const xiiGALTextureSubResourceData &subresourceData)
 Updates a texture.
 
void CopyTexture (xiiSharedPtr< xiiGALTexture > pSourceTexture, xiiSharedPtr< xiiGALTexture > pDestinationTexture)
 Copies the entire contents of the source texture to the destination texture.
 
void CopyTextureRegion (xiiSharedPtr< xiiGALTexture > pSourceTexture, const xiiGALTextureMipLevelData &sourceMipLevelData, const xiiBoundingBoxU32 &box, xiiSharedPtr< xiiGALTexture > pDestinationTexture, const xiiGALTextureMipLevelData &destinationMipLevelData, const xiiVec3U32 &vDestinationPoint)
 Copies a region from the source texture to the destination texture.
 
void ResolveTextureSubResource (xiiSharedPtr< xiiGALTexture > pSourceTexture, xiiSharedPtr< xiiGALTexture > pDestinationTexture, const xiiGALResolveTextureSubresourceDescription &description)
 Resolves a multisampled source texture into a non-multisampled destination texture.
 
void GenerateMips (xiiSharedPtr< xiiGALTextureView > pTextureView)
 Generates mipmap levels for a texture.
 
xiiResult MapTextureSubresource (xiiSharedPtr< xiiGALTexture > pTexture, xiiGALTextureMipLevelData textureMipLevelData, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, xiiBoundingBoxU32 *pTextureBox, xiiGALMappedTextureSubresource &mappedData)
 Maps a texture subresource into the address space of the command list.
 
xiiResult UnmapTextureSubresource (xiiSharedPtr< xiiGALTexture > pTexture, xiiGALTextureMipLevelData textureMipLevelData)
 Unmaps a texture subresource from the address space of the command list.
 
void TransitionResourceStates (xiiArrayPtr< xiiGALStateTransitionDescription > pResourceBarriers)
 Transitions the resource states.
 
void EnqueueSignal (xiiSharedPtr< xiiGALFence > pFence, xiiUInt64 uiValue)
 Tells the GPU to set a fence to a specified value after all previous work has completed.
 
void DeviceWaitForFence (xiiSharedPtr< xiiGALFence > pFence, xiiUInt64 uiValue)
 Waits until the specified fence reaches or exceeds the specified value, on the device.
 
void BeginDebugGroup (xiiStringView sName, const xiiColor &color=xiiColor::Black)
 Begins a new debug group with a specified name and color.
 
void EndDebugGroup ()
 Ends the current debug group.
 
void InsertDebugLabel (xiiStringView sName, const xiiColor &color=xiiColor::Black)
 Inserts a debug label into the command list.
 
void InvalidateState ()
 Invalidates the current state of the command list. It is typically called when the command list is reset or when the pipeline state is changed.
 
XII_ALWAYS_INLINE void AssertRenderingThread () const
 
XII_ALWAYS_INLINE RecordingState GetRecordingState () const
 This returns the command list recording state.
 
XII_ALWAYS_INLINE const xiiGALCommandListStatisticsGetStatistics () const
 This returns the command list statistics.
 
- Public Member Functions inherited from xiiGALDeviceObject
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALDeviceGetDevice () const
 Returns the xiiGALDevice that created this resource.
 
- Public Member Functions inherited from xiiGALObject
XII_ALWAYS_INLINE xiiStringView GetDebugName () const
 Returns the debug name of this resource.
 
void SetDebugName (xiiStringView sDebugName) const
 Sets the debug name for this resource.
 
- Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const xiiRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T>
XII_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 
- Public Member Functions inherited from xiiRefCounted
virtual ~xiiRefCounted ()=default
 Adds a virtual destructor.
 
- Public Member Functions inherited from xiiRefCountingImpl
 xiiRefCountingImpl ()=default
 Constructor.
 
 xiiRefCountingImpl (const xiiRefCountingImpl &rhs)
 
void operator= (const xiiRefCountingImpl &rhs)
 
xiiUInt32 AddRef () const
 Increments the reference counter. Returns the new reference count.
 
xiiUInt32 ReleaseRef () const
 Decrements the reference counter. Returns the new reference count.
 
bool IsReferenced () const
 Returns true if the reference count is greater than 0, false otherwise.
 
xiiUInt32 GetRefCount () const
 Returns the current reference count.
 

Protected Member Functions

 xiiGALCommandListVulkan (xiiSharedPtr< xiiGALDeviceVulkan > pDeviceVulkan, xiiGALCommandQueueVulkan *pCommandQueueVulkan, xiiGALCommandBufferPoolVulkan *pCommandBufferPool, const xiiGALCommandListCreationDescription &creationDescription)
 
virtual void BeginPlatform () override final
 
virtual void EndPlatform () override final
 
virtual void ResetPlatform () override final
 
virtual xiiUInt64 SubmitPlatform () override final
 
virtual void SetPipelineStatePlatform (xiiSharedPtr< xiiGALPipelineState > pPipelineState) override final
 
virtual void SetStencilRefPlatform (xiiUInt32 uiStencilRef) override final
 
virtual void SetBlendFactorPlatform (const xiiColor &blendFactor) override final
 
virtual void SetViewportsPlatform (xiiArrayPtr< xiiGALViewport > pViewports) override final
 
virtual void SetScissorRectsPlatform (xiiArrayPtr< xiiRectU32 > pRects) override final
 
virtual void SetIndexBufferPlatform (xiiSharedPtr< xiiGALBuffer > pIndexBuffer, xiiUInt64 uiByteOffset, xiiEnum< xiiGALStateTransitionMode > transitionMode) override final
 
virtual void SetVertexBuffersPlatform (xiiUInt32 uiStartSlot, xiiArrayPtr< VertexStreamDescription > pVertexStreams, xiiBitflags< xiiGALSetVertexBufferFlags > flags, xiiEnum< xiiGALStateTransitionMode > transitionMode) override final
 
virtual void SetConstantBufferPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALBuffer > pConstantBuffer) override final
 
virtual void SetShaderResourceBufferViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALBufferView > pBufferView) override final
 
virtual void SetShaderResourceTextureViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALTextureView > pTextureView) override final
 
virtual void SetUnorderedAccessBufferViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALBufferView > pBufferView) override final
 
virtual void SetUnorderedAccessTextureViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALTextureView > pTextureView) override final
 
virtual void SetSamplerPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiSharedPtr< xiiGALSampler > pSampler) override final
 
virtual xiiResult CommitShaderResourcesPlatform (xiiEnum< xiiGALStateTransitionMode > mode) override final
 
virtual void ClearRenderTargetViewPlatform (xiiSharedPtr< xiiGALTextureView > pRenderTargetView, const xiiColor &clearColor) override final
 
virtual void ClearDepthStencilViewPlatform (xiiSharedPtr< xiiGALTextureView > pDepthStencilView, bool bClearDepth, bool bClearStencil, float fDepthClear, xiiUInt8 uiStencilClear) override final
 
virtual void BeginRenderPassPlatform (xiiSharedPtr< xiiGALRenderPass > pRenderPass, xiiSharedPtr< xiiGALFramebuffer > pFramebuffer, xiiArrayPtr< const xiiGALOptimizedClearValue > pOptimizedClearValues) override final
 
virtual void NextSubpassPlatform () override final
 
virtual void EndRenderPassPlatform () override final
 
virtual void DrawPlatform (const xiiGALDrawDescription &description) override final
 
virtual void DrawIndexedPlatform (const xiiGALDrawIndexedDescription &description) override final
 
virtual void DrawIndirectPlatform (const xiiGALDrawIndirectDescription &description) override final
 
virtual void DrawIndexedIndirectPlatform (const xiiGALDrawIndexedIndirectDescription &description) override final
 
virtual void DrawMeshPlatform (const xiiGALDrawMeshDescription &description) override final
 
virtual void DrawMeshIndirectPlatform (const xiiGALDrawMeshIndirectDescription &description) override final
 
virtual void MultiDrawPlatform (const xiiGALMultiDrawDescription &description) override final
 
virtual void MultiDrawIndexedPlatform (const xiiGALMultiDrawIndexedDescription &description) override final
 
virtual void DispatchComputePlatform (const xiiGALDispatchComputeDescription &description) override final
 
virtual void DispatchComputeIndirectPlatform (const xiiGALDispatchComputeIndirectDescription &description) override final
 
virtual void BeginQueryPlatform (xiiSharedPtr< xiiGALQuery > pQuery) override final
 
virtual void EndQueryPlatform (xiiSharedPtr< xiiGALQuery > pQuery) override final
 
virtual void UpdateBufferPlatform (xiiSharedPtr< xiiGALBuffer > pBuffer, xiiUInt32 uiDestinationOffset, xiiArrayPtr< const xiiUInt8 > pSourceData) override final
 
virtual void CopyBufferPlatform (xiiSharedPtr< xiiGALBuffer > pSourceBuffer, xiiSharedPtr< xiiGALBuffer > pDestinationBuffer) override final
 
virtual void CopyBufferRegionPlatform (xiiSharedPtr< xiiGALBuffer > pSourceBuffer, xiiUInt64 uiSourceOffset, xiiSharedPtr< xiiGALBuffer > pDestinationBuffer, xiiUInt64 uiDestinationOffset, xiiUInt64 uiSize) override final
 
virtual xiiResult MapBufferPlatform (xiiSharedPtr< xiiGALBuffer > pBuffer, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, void *&pMappedData) override final
 
virtual xiiResult UnmapBufferPlatform (xiiSharedPtr< xiiGALBuffer > pBuffer, xiiEnum< xiiGALMapType > mapType) override final
 
virtual void UpdateTexturePlatform (xiiSharedPtr< xiiGALTexture > pTexture, const xiiGALTextureMipLevelData &textureMiplevelData, const xiiBoundingBoxU32 &textureBox, const xiiGALTextureSubResourceData &subresourceData) override final
 
virtual void CopyTexturePlatform (xiiSharedPtr< xiiGALTexture > pSourceTexture, xiiSharedPtr< xiiGALTexture > pDestinationTexture) override final
 
virtual void CopyTextureRegionPlatform (xiiSharedPtr< xiiGALTexture > pSourceTexture, const xiiGALTextureMipLevelData &sourceMipLevelData, const xiiBoundingBoxU32 &box, xiiSharedPtr< xiiGALTexture > pDestinationTexture, const xiiGALTextureMipLevelData &destinationMipLevelData, const xiiVec3U32 &vDestinationPoint) override final
 
virtual void ResolveTextureSubResourcePlatform (xiiSharedPtr< xiiGALTexture > pSourceTexture, xiiSharedPtr< xiiGALTexture > pDestinationTexture, const xiiGALResolveTextureSubresourceDescription &description) override final
 
virtual void GenerateMipsPlatform (xiiSharedPtr< xiiGALTextureView > pTextureView) override final
 
virtual xiiResult MapTextureSubresourcePlatform (xiiSharedPtr< xiiGALTexture > pTexture, xiiGALTextureMipLevelData textureMipLevelData, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, xiiBoundingBoxU32 *pTextureBox, xiiGALMappedTextureSubresource &mappedData) override final
 
virtual xiiResult UnmapTextureSubresourcePlatform (xiiSharedPtr< xiiGALTexture > pTexture, xiiGALTextureMipLevelData textureMipLevelData) override final
 
virtual void TransitionResourceStatesPlatform (xiiArrayPtr< xiiGALStateTransitionDescription > pResourceBarriers) override final
 
virtual void EnqueueSignalPlatform (xiiSharedPtr< xiiGALFence > pFence, xiiUInt64 uiValue) override final
 
virtual void DeviceWaitForFencePlatform (xiiSharedPtr< xiiGALFence > pFence, xiiUInt64 uiValue) override final
 
virtual void BeginDebugGroupPlatform (xiiStringView sName, const xiiColor &color) override final
 
virtual void EndDebugGroupPlatform () override final
 
virtual void InsertDebugLabelPlatform (xiiStringView sName, const xiiColor &color) override final
 
virtual void InvalidateStatePlatform () override final
 
virtual void SetDebugNamePlatform (xiiStringView sName) const override final
 
- Protected Member Functions inherited from xiiGALCommandList
 xiiGALCommandList (xiiSharedPtr< xiiGALDevice > pDevice, xiiGALCommandQueue *pCommandQueue, const xiiGALCommandListCreationDescription &creationDescription)
 
void Begin ()
 Begins the command list for recording commands. This method should be called before any command is issued.
 
void End ()
 Ends the command list. This method should be called after all commands are issued.
 
void Reset ()
 Resets the command list. This method is used to clear all commands that have been recorded in the command list.
 
void ValidateTextureRegion (const xiiGALTextureCreationDescription &textureDescription, xiiUInt32 uiMipLevel, xiiUInt32 uiSlice, const xiiBoundingBoxU32 &box)
 
void ValidateTextureUpdateRegion (const xiiGALTextureCreationDescription &textureDescription, xiiUInt32 uiMipLevel, xiiUInt32 uiSlice, const xiiBoundingBoxU32 &destinationBox, const xiiGALTextureSubResourceData &subresourceData)
 
bool VerifyResourceState (xiiBitflags< xiiGALResourceStateFlags > stateFlags, xiiBitflags< xiiGALCommandQueueType > queueType, const char *szParameterName) const
 
bool VerifyResourceStates (xiiBitflags< xiiGALResourceStateFlags > stateFlags, bool bIsTexture) const
 
void VerifyBufferState (xiiGALBuffer *pBuffer, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName)
 
void VerifyTextureState (xiiGALTexture *pTexture, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName)
 
void VerifyBottomLevelASState (xiiGALBottomLevelAS *pBottomLevelAS, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName)
 
void VerifyTopLevelASState (xiiGALTopLevelAS *pTopLevelAS, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName)
 
- Protected Member Functions inherited from xiiGALDeviceObject
 xiiGALDeviceObject (xiiSharedPtr< xiiGALDevice > pDevice)
 

Friends

class xiiGALCommandQueueVulkan
 
class xiiGALDeviceVulkan
 
class xiiMemoryUtils
 

Additional Inherited Members

- Public Types inherited from xiiGALCommandList
enum class  RecordingState { Recording , Ended , Reset , Submitted }
 Enum class representing the state of a command list recording. More...
 
- Static Public Member Functions inherited from xiiNoBase
static const xiiRTTIGetStaticRTTI ()
 
- Protected Attributes inherited from xiiGALCommandList
xiiGALCommandListCreationDescription m_Description
 
xiiGALCommandQueuem_pCommandQueue
 
RecordingState m_RecordingState = RecordingState::Reset
 
const bool m_bNativeMultiDrawSupported
 
xiiSharedPtr< xiiGALPipelineStatem_pPipelineState
 
xiiSharedPtr< xiiGALPipelineResourceSignaturem_pPipelineResourceSignature
 
xiiHybridArray< VertexStreamDescription, 2U > m_VertexStreams
 
xiiSharedPtr< xiiGALBufferm_pIndexBuffer
 
xiiUInt64 m_uiIndexDataOffset = 0ULL
 
xiiSharedPtr< xiiGALRenderPassm_pRenderPass
 
xiiSharedPtr< xiiGALFramebufferm_pFramebuffer
 
xiiColor m_BlendFactors = xiiColor::Black
 
xiiUInt32 m_uiStencilRef = 0U
 
xiiHybridArray< xiiGALViewport, 2U > m_Viewports
 
xiiHybridArray< xiiRectU32, 2U > m_ScissorRects
 
- Protected Attributes inherited from xiiGALDeviceObject
xiiSharedPtr< xiiGALDevicem_pDevice
 
- Static Protected Attributes inherited from xiiGALCommandList
static constexpr xiiUInt32 s_uiDrawMeshIndirectCommandStride = sizeof(xiiUInt32) * 3
 

Member Function Documentation

◆ SetDebugNamePlatform()

void xiiGALCommandListVulkan::SetDebugNamePlatform ( xiiStringView sName) const
finaloverrideprotectedvirtual

Reimplemented from xiiGALObject.


The documentation for this class was generated from the following files: