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

Classes

struct  CommandListState
struct  CommandListFlags

Public Member Functions

XII_ALWAYS_INLINE vk::CommandBuffer GetVulkanCommandBuffer () const
XII_ALWAYS_INLINE vk::PipelineStageFlags GetVulkanCommandBufferSupportedStageFlags () const
XII_ALWAYS_INLINE vk::AccessFlags GetVulkanCommandBufferSupportedAccessFlags () const
xiiResult RecordQueryReset (xiiGALQueryPoolVulkan *pPool, xiiGALQueryType::Enum type, xiiUInt32 uiIndex)
 Resets a newly allocated slot outside every render pass, including slots used by secondary command lists.
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 TransitionOrVerifyAccelerationStructureState (xiiGALResource *pAccelerationStructure, xiiEnum< xiiGALStateTransitionMode > transitionMode, xiiBitflags< xiiGALResourceStateFlags > requiredState, 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 vkSemaphore, vk::PipelineStageFlags pipelineFlags, xiiUInt64 uiValue=0ULL)
void AddSignalSemaphore (vk::Semaphore vkSemaphore, xiiUInt64 uiValue=0ULL)
XII_ALWAYS_INLINE xiiGALStagingBufferPoolVulkan * GetVulkanUploadStagingBufferPool () const
Public Member Functions inherited from xiiGALCommandList
XII_ALWAYS_INLINE const xiiGALCommandListCreationDescription & GetDescription () const
 This returns the creation description for this object.
XII_ALWAYS_INLINE const xiiGALCommandListStatistics & GetCommandListStatistics () const
 This returns the command list statistics.
void Begin ()
void End ()
void Reset ()
void Submit (xiiGALCommandList *pSecondaryCommandList)
 Submits a secondary command list to a primary command list for execution.
void SetPipelineState (xiiGALPipelineState *pPipelineState)
void PushConstants (xiiUInt32 uiOffset, xiiArrayPtr< xiiUInt8 > pData)
void SetStencilRef (xiiUInt32 uiStencilRef)
void SetBlendFactor (const xiiColor &blendFactor)
void SetViewports (xiiArrayPtr< const xiiGALViewport > pViewports)
XII_ALWAYS_INLINE void SetViewport (const xiiGALViewport &viewport)
void SetScissorRects (xiiArrayPtr< const xiiRectU32 > pRects)
XII_ALWAYS_INLINE void SetScissorRect (const xiiRectU32 &rect)
void SetIndexBuffer (xiiGALBuffer *pIndexBuffer, xiiUInt64 uiByteOffset=0U, xiiEnum< xiiGALStateTransitionMode > transitionMode=xiiGALStateTransitionMode::Transition)
void SetVertexBuffers (xiiUInt32 uiStartSlot, xiiArrayPtr< xiiGALBuffer * > pVertexBuffers, xiiArrayPtr< xiiUInt64 > pByteOffsets={}, xiiBitflags< xiiGALSetVertexBufferFlags > flags=xiiGALSetVertexBufferFlags::None, xiiEnum< xiiGALStateTransitionMode > transitionMode=xiiGALStateTransitionMode::Transition)
void SetConstantBuffer (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALBuffer *pConstantBuffer)
void SetShaderResourceBufferView (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALBufferView *pBufferView)
void SetShaderResourceBufferViews (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALBufferView * > pBufferViews)
 Updates a range in a fixed or runtime-sized buffer SRV descriptor array.
void SetShaderResourceTextureView (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALTextureView *pTextureView)
void SetShaderResourceTextureViews (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALTextureView * > pTextureViews)
 Updates a range in a fixed or runtime-sized texture SRV descriptor array.
void SetUnorderedAccessBufferView (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALBufferView *pBufferView)
void SetUnorderedAccessBufferViews (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALBufferView * > pBufferViews)
 Updates a range in a fixed or runtime-sized buffer UAV descriptor array.
void SetUnorderedAccessTextureView (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALTextureView *pTextureView)
void SetUnorderedAccessTextureViews (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALTextureView * > pTextureViews)
 Updates a range in a fixed or runtime-sized texture UAV descriptor array.
void SetSampler (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALSampler *pSampler)
void SetSamplers (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALSampler * > pSamplers)
 Updates a range in a fixed or runtime-sized sampler descriptor array.
void SetAccelerationStructure (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALTopLevelAS *pTopLevelAS)
void ResolveAndSetConstantBuffer (const xiiTempHashedString &sResourceName, xiiGALBuffer *pConstantBuffer, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetShaderResourceBufferView (const xiiTempHashedString &sResourceName, xiiGALBufferView *pBufferView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetShaderResourceBufferViews (const xiiTempHashedString &sResourceName, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALBufferView * > pBufferViews, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetShaderResourceTextureView (const xiiTempHashedString &sResourceName, xiiGALTextureView *pTextureView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetShaderResourceTextureViews (const xiiTempHashedString &sResourceName, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALTextureView * > pTextureViews, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetUnorderedAccessBufferView (const xiiTempHashedString &sResourceName, xiiGALBufferView *pBufferView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetUnorderedAccessBufferViews (const xiiTempHashedString &sResourceName, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALBufferView * > pBufferViews, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetUnorderedAccessTextureView (const xiiTempHashedString &sResourceName, xiiGALTextureView *pTextureView, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetUnorderedAccessTextureViews (const xiiTempHashedString &sResourceName, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALTextureView * > pTextureViews, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetSampler (const xiiTempHashedString &sResourceName, xiiGALSampler *pSampler, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetSamplers (const xiiTempHashedString &sResourceName, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALSampler * > pSamplers, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
void ResolveAndSetAccelerationStructure (const xiiTempHashedString &sResourceName, xiiGALTopLevelAS *pTopLevelAS, xiiBitflags< xiiGALShaderType > shaderStages=xiiGALShaderType::Unknown)
xiiResult CommitShaderResources (xiiEnum< xiiGALStateTransitionMode > mode=xiiGALStateTransitionMode::Transition)
void ClearRenderTargetView (xiiGALTextureView *pRenderTargetView, const xiiColor &clearColor)
void ClearDepthStencilView (xiiGALTextureView *pDepthStencilView, bool bClearDepth, bool bClearStencil, float fDepthClear, xiiUInt8 uiStencilClear)
void BeginRenderPass (const xiiGALBeginRenderPassDescription &beginRenderPass)
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)
void DrawIndexed (const xiiGALDrawIndexedDescription &description)
void DrawIndirect (const xiiGALDrawIndirectDescription &description)
void DrawIndexedIndirect (const xiiGALDrawIndexedIndirectDescription &description)
void DrawMesh (const xiiGALDrawMeshDescription &description)
void DrawMeshIndirect (const xiiGALDrawMeshIndirectDescription &description)
void MultiDraw (const xiiGALMultiDrawDescription &description)
void MultiDrawIndexed (const xiiGALMultiDrawIndexedDescription &description)
void DispatchCompute (const xiiGALDispatchComputeDescription &description)
void DispatchComputeIndirect (const xiiGALDispatchComputeIndirectDescription &description)
void TraceRays (const xiiGALTraceRaysDescription &description)
 Dispatches rays using the currently bound ray tracing pipeline.
void TraceRaysIndirect (const xiiGALTraceRaysIndirectDescription &description)
 Dispatches rays indirectly using dimensions sourced from a GPU buffer.
void UpdateSBT (const xiiGALUpdateSBTDescription &description)
 Updates SBT records from ray tracing shader group handles.
void BuildBLAS (const xiiGALBuildBLASDescription &description)
 Builds or updates a BLAS.
void BuildTLAS (const xiiGALBuildTLASDescription &description)
 Builds or updates a TLAS.
void CopyBLAS (const xiiGALCopyBLASDescription &description)
 Copies a BLAS (clone or compact).
void CopyTLAS (const xiiGALCopyTLASDescription &description)
 Copies a TLAS (clone or compact).
void WriteBLASCompactedSize (const xiiGALWriteBLASCompactedSizeDescription &description)
 Writes BLAS compacted size into a destination buffer.
void WriteTLASCompactedSize (const xiiGALWriteTLASCompactedSizeDescription &description)
 Writes TLAS compacted size into a destination buffer.
void BeginQuery (xiiGALQuery *pQuery)
void EndQuery (xiiGALQuery *pQuery)
void UpdateBuffer (xiiGALBuffer *pBuffer, xiiUInt32 uiDestinationOffset, xiiArrayPtr< const xiiUInt8 > pSourceData)
void UpdateTLASInstanceBuffer (xiiGALBuffer *pBuffer, xiiUInt32 uiDestinationOffset, xiiArrayPtr< const xiiGALTLASInstanceData > pInstances)
void CopyBuffer (xiiGALBuffer *pSourceBuffer, xiiGALBuffer *pDestinationBuffer)
void CopyBufferRegion (xiiGALBuffer *pSourceBuffer, xiiUInt64 uiSourceOffset, xiiGALBuffer *pDestinationBuffer, xiiUInt64 uiDestinationOffset, xiiUInt64 uiSize)
xiiResult MapBuffer (xiiGALBuffer *pBuffer, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, void *&pMappedData)
xiiResult UnmapBuffer (xiiGALBuffer *pBuffer, xiiEnum< xiiGALMapType > mapType)
void UpdateTexture (xiiGALTexture *pTexture, const xiiGALTextureMipLevelData &textureMiplevelData, const xiiBoundingBoxU32 &textureBox, const xiiGALTextureSubResourceData &subresourceData)
void CopyTexture (xiiGALTexture *pSourceTexture, xiiGALTexture *pDestinationTexture)
void CopyTextureRegion (xiiGALTexture *pSourceTexture, const xiiGALTextureMipLevelData &sourceMipLevelData, const xiiBoundingBoxU32 &box, xiiGALTexture *pDestinationTexture, const xiiGALTextureMipLevelData &destinationMipLevelData, const xiiVec3U32 &vDestinationPoint)
void ResolveTextureSubResource (xiiGALTexture *pSourceTexture, xiiGALTexture *pDestinationTexture, const xiiGALResolveTextureSubresourceDescription &description)
void GenerateMips (xiiGALTextureView *pTextureView)
xiiResult MapTextureSubresource (xiiGALTexture *pTexture, xiiGALTextureMipLevelData textureMipLevelData, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, xiiBoundingBoxU32 *pTextureBox, xiiGALMappedTextureSubresource &mappedData)
xiiResult UnmapTextureSubresource (xiiGALTexture *pTexture, xiiGALTextureMipLevelData textureMipLevelData)
void SetShadingRate (xiiBitflags< xiiGALShadingRateFlags > baseRateFlags, xiiBitflags< xiiGALShadingRateCombinerFlags > primitiveCombinerFlags, xiiBitflags< xiiGALShadingRateCombinerFlags > textureCombinerFlags)
void TransitionResourceStates (xiiArrayPtr< xiiGALStateTransitionDescription > pResourceBarriers)
void EnqueueSignal (xiiGALFence *pFence, xiiUInt64 uiValue)
void DeviceWaitForFence (xiiGALFence *pFence, xiiUInt64 uiValue)
void BeginDebugGroup (xiiStringView sName, const xiiColor &color=xiiColor::White)
void EndDebugGroup ()
 Ends the current debug group.
void InsertDebugLabel (xiiStringView sName, const xiiColor &color=xiiColor::White)
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 xiiGALCommandListStatistics & GetStatistics () const
 This returns the command list statistics.
Public Member Functions inherited from xiiGALDeviceObject
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALDevice > GetDevice () const
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 xiiRTTI * GetDynamicRTTI () 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.
bool TryAddRef () const
xiiUInt32 ReleaseRef () const
 Decrements the reference counter. Returns the new reference count.ywat.
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, const xiiGALCommandListCreationDescription &creationDescription)
virtual xiiResult InitPlatform () override final
virtual void BeginPlatform () override final
virtual void EndPlatform () override final
virtual void ResetPlatform () override final
virtual void SubmitPlatform (xiiGALCommandList *pSecondaryCommandList) override final
virtual void SetPipelineStatePlatform (xiiGALPipelineState *pPipelineState) override final
virtual void PushConstantsPlatform (xiiUInt32 uiOffset, xiiArrayPtr< const xiiUInt8 > pData) 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 (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, xiiGALBuffer *pConstantBuffer) override final
virtual void SetShaderResourceBufferViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALBufferView *pBufferView) override final
virtual void SetShaderResourceBufferViewsPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALBufferView * > pBufferViews) override final
virtual void SetShaderResourceTextureViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALTextureView *pTextureView) override final
virtual void SetShaderResourceTextureViewsPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALTextureView * > pTextureViews) override final
virtual void SetUnorderedAccessBufferViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALBufferView *pBufferView) override final
virtual void SetUnorderedAccessBufferViewsPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALBufferView * > pBufferViews) override final
virtual void SetUnorderedAccessTextureViewPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALTextureView *pTextureView) override final
virtual void SetUnorderedAccessTextureViewsPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALTextureView * > pTextureViews) override final
virtual void SetSamplerPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALSampler *pSampler) override final
virtual void SetSamplersPlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiUInt32 uiFirstElement, xiiArrayPtr< xiiGALSampler * > pSamplers) override final
virtual void SetAccelerationStructurePlatform (const xiiGALPipelineResourceDescription &bindingInformation, xiiGALTopLevelAS *pTopLevelAS) override final
virtual xiiResult CommitShaderResourcesPlatform (xiiEnum< xiiGALStateTransitionMode > mode) override final
virtual void ClearRenderTargetViewPlatform (xiiGALTextureView *pRenderTargetView, const xiiColor &clearColor) override final
virtual void ClearDepthStencilViewPlatform (xiiGALTextureView *pDepthStencilView, bool bClearDepth, bool bClearStencil, float fDepthClear, xiiUInt8 uiStencilClear) override final
virtual void BeginRenderPassPlatform (xiiGALRenderPass *pRenderPass, xiiGALFramebuffer *pFramebuffer, xiiArrayPtr< const xiiGALOptimizedClearValue > pOptimizedClearValues) override final
void UpdateAttachmentBindings ()
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 TraceRaysPlatform (const xiiGALTraceRaysDescription &description) override final
virtual void TraceRaysIndirectPlatform (const xiiGALTraceRaysIndirectDescription &description) override final
virtual void UpdateSBTPlatform (const xiiGALUpdateSBTDescription &description) override final
virtual void BuildBLASPlatform (const xiiGALBuildBLASDescription &description) override final
virtual void BuildTLASPlatform (const xiiGALBuildTLASDescription &description) override final
virtual void CopyBLASPlatform (const xiiGALCopyBLASDescription &description) override final
virtual void CopyTLASPlatform (const xiiGALCopyTLASDescription &description) override final
virtual void WriteBLASCompactedSizePlatform (const xiiGALWriteBLASCompactedSizeDescription &description) override final
virtual void WriteTLASCompactedSizePlatform (const xiiGALWriteTLASCompactedSizeDescription &description) override final
virtual void BeginQueryPlatform (xiiGALQuery *pQuery) override final
virtual void EndQueryPlatform (xiiGALQuery *pQuery) override final
virtual void UpdateBufferPlatform (xiiGALBuffer *pBuffer, xiiUInt32 uiDestinationOffset, xiiArrayPtr< const xiiUInt8 > pSourceData) override final
virtual void UpdateTLASInstanceBufferPlatform (xiiGALBuffer *pBuffer, xiiUInt32 uiDestinationOffset, xiiArrayPtr< const xiiGALTLASInstanceData > pInstances) override final
virtual void CopyBufferPlatform (xiiGALBuffer *pSourceBuffer, xiiGALBuffer *pDestinationBuffer) override final
virtual void CopyBufferRegionPlatform (xiiGALBuffer *pSourceBuffer, xiiUInt64 uiSourceOffset, xiiGALBuffer *pDestinationBuffer, xiiUInt64 uiDestinationOffset, xiiUInt64 uiSize) override final
virtual xiiResult MapBufferPlatform (xiiGALBuffer *pBuffer, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, void *&pMappedData) override final
virtual xiiResult UnmapBufferPlatform (xiiGALBuffer *pBuffer, xiiEnum< xiiGALMapType > mapType) override final
virtual void UpdateTexturePlatform (xiiGALTexture *pTexture, const xiiGALTextureMipLevelData &textureMiplevelData, const xiiBoundingBoxU32 &textureBox, const xiiGALTextureSubResourceData &subresourceData) override final
virtual void CopyTexturePlatform (xiiGALTexture *pSourceTexture, xiiGALTexture *pDestinationTexture) override final
virtual void CopyTextureRegionPlatform (xiiGALTexture *pSourceTexture, const xiiGALTextureMipLevelData &sourceMipLevelData, const xiiBoundingBoxU32 &box, xiiGALTexture *pDestinationTexture, const xiiGALTextureMipLevelData &destinationMipLevelData, const xiiVec3U32 &vDestinationPoint) override final
virtual void ResolveTextureSubResourcePlatform (xiiGALTexture *pSourceTexture, xiiGALTexture *pDestinationTexture, const xiiGALResolveTextureSubresourceDescription &description) override final
virtual void GenerateMipsPlatform (xiiGALTextureView *pTextureView) override final
virtual xiiResult MapTextureSubresourcePlatform (xiiGALTexture *pTexture, xiiGALTextureMipLevelData textureMipLevelData, xiiEnum< xiiGALMapType > mapType, xiiBitflags< xiiGALMapFlags > mapFlags, xiiBoundingBoxU32 *pTextureBox, xiiGALMappedTextureSubresource &mappedData) override final
virtual xiiResult UnmapTextureSubresourcePlatform (xiiGALTexture *pTexture, xiiGALTextureMipLevelData textureMipLevelData) override final
virtual void SetShadingRatePlatform (xiiBitflags< xiiGALShadingRateFlags > baseRateFlags, xiiBitflags< xiiGALShadingRateCombinerFlags > primitiveCombinerFlags, xiiBitflags< xiiGALShadingRateCombinerFlags > textureCombinerFlags) override final
virtual void TransitionResourceStatesPlatform (xiiArrayPtr< xiiGALStateTransitionDescription > pResourceBarriers) override final
virtual void EnqueueSignalPlatform (xiiGALFence *pFence, xiiUInt64 uiValue) override final
virtual void DeviceWaitForFencePlatform (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, const xiiGALCommandListCreationDescription &creationDescription)
void ValidateTextureRegion (const xiiGALTextureCreationDescription &textureDescription, xiiUInt32 uiMipLevel, xiiUInt32 uiSlice, const xiiBoundingBoxU32 &box) const
void ValidateTextureUpdateRegion (const xiiGALTextureCreationDescription &textureDescription, xiiUInt32 uiMipLevel, xiiUInt32 uiSlice, const xiiBoundingBoxU32 &destinationBox, const xiiGALTextureSubResourceData &subresourceData) const
bool VerifyResourceState (xiiBitflags< xiiGALResourceStateFlags > stateFlags, xiiBitflags< xiiGALCommandQueueFlags > queueFlags, const char *szParameterName) const
bool VerifyResourceStates (xiiBitflags< xiiGALResourceStateFlags > stateFlags, bool bIsTexture) const
void VerifyBufferState (const xiiGALBuffer *pBuffer, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName) const
void VerifyTextureState (const xiiGALTexture *pTexture, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName) const
void VerifyBottomLevelASState (const xiiGALBottomLevelAS *pBottomLevelAS, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName) const
void VerifyTopLevelASState (const xiiGALTopLevelAS *pTopLevelAS, xiiBitflags< xiiGALResourceStateFlags > requiredState, const char *szOperationName) const
Protected Member Functions inherited from xiiGALDeviceObject
 xiiGALDeviceObject (xiiSharedPtr< xiiGALDevice > pDevice)
 Copyright (c) Theophilus Eriata. All Rights Reserved.
Protected Member Functions inherited from xiiGALObject
 xiiGALObject ()
 Copyright (c) Theophilus Eriata. All Rights Reserved.

Friends

class xiiGALCommandQueueVulkan
class xiiGALDeviceVulkan
class xiiMemoryUtils

Additional Inherited Members

Public Types inherited from xiiGALCommandList
enum class  RecordingState : xiiUInt8 { Reset = 0U , Recording , Ended , ENUM_COUNT }
 Enum class representing the state of a command list recording. More...
Static Public Member Functions inherited from xiiNoBase
static const xiiRTTI * GetStaticRTTI ()
Protected Attributes inherited from xiiGALCommandList
xiiGALCommandListCreationDescription m_Description
RecordingState m_RecordingState = RecordingState::Reset
const bool m_bNativeMultiDrawSupported
xiiGALPipelineState * m_pPipelineState = nullptr
xiiGALPipelineResourceSignature * m_pPipelineResourceSignature = nullptr
xiiStaticArray< xiiUInt8, 256U > m_PushConstantStaging
xiiHybridArray< VertexStreamDescription, 2U > m_VertexStreams
xiiGALBuffer * m_pIndexBuffer = nullptr
xiiUInt64 m_uiIndexDataOffset = 0ULL
xiiGALRenderPass * m_pRenderPass = nullptr
xiiGALFramebuffer * m_pFramebuffer = nullptr
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< xiiGALDevice > m_pDevice
Static Protected Attributes inherited from xiiGALCommandList
static constexpr xiiUInt32 s_uiDrawMeshIndirectCommandStride = sizeof(xiiUInt32) * 3

Member Function Documentation

◆ InitPlatform()

xiiResult xiiGALCommandListVulkan::InitPlatform ( )
finaloverrideprotectedvirtual

Implements xiiGALCommandList.

◆ SetDebugNamePlatform()

void xiiGALCommandListVulkan::SetDebugNamePlatform ( xiiStringView sName) const
finaloverrideprotectedvirtual

Reimplemented from xiiGALObject.


The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Engine/GraphicsVulkan/CommandEncoder/CommandListVulkan.h
  • /home/runner/work/XII/XII/Source/Engine/GraphicsVulkan/CommandEncoder/Implementation/CommandListVulkan.cpp