XII Release 0.1.0
Loading...
Searching...
No Matches
xiiRenderGraphBarrierDescription Struct Reference

Describes a resource state barrier synthesized during compilation. More...

#include <RenderGraph.h>

Inheritance diagram for xiiRenderGraphBarrierDescription:
[legend]

Public Member Functions

 XII_DECLARE_POD_TYPE ()
Public Member Functions inherited from xiiHashableStruct< xiiRenderGraphBarrierDescription >
constexpr xiiHashableStruct () noexcept
 Default constructor. Initializes all bytes to zero.
xiiHashableStruct & operator= (const xiiHashableStruct &other) noexcept
 Bitwise assignment operator.
bool operator== (const xiiHashableStruct &other) const noexcept
 Compares equality via raw byte comparison.
std::strong_ordering operator<=> (const xiiHashableStruct &other) const noexcept
 Compares ordering via raw byte comparison.
xiiUInt32 CalculateHash () const noexcept
 Calculates a 32-bit hash from raw bytes of the struct.
void Clear () noexcept
 Fills all bytes with zero.
bool IsZero () const noexcept
 Returns true if all bytes are zero.

Public Attributes

xiiUInt32 m_uiResourceIndex = xiiInvalidIndex
 Index into the resource table.
bool m_bIsTexture = true
 Whether the barrier is for a texture or a buffer resource.
xiiUInt32 m_uiFirstMipLevel = 0U
 For textures, the first mip level affected by the barrier. For buffers, this is always 0.
xiiUInt32 m_uiMipLevelCount = XII_GAL_REMAINING_MIP_LEVELS
 For textures, the number of mip levels affected by the barrier. For buffers, this is always 1.
xiiUInt32 m_uiFirstArraySlice = 0U
 For textures, the first array slice affected by the barrier. For buffers, this is always 0.
xiiUInt32 m_uiArraySliceCount = XII_GAL_REMAINING_ARRAY_SLICES
 For textures, the number of array slices affected by the barrier. For buffers, this is always 1.
xiiBitflags< xiiGALResourceStateFlags > m_BeforeState = xiiGALResourceStateFlags::Unknown
 The resource state before the barrier. This is used for validation and may be Unknown if the state is not known at compile time.
xiiBitflags< xiiGALResourceStateFlags > m_AfterState = xiiGALResourceStateFlags::Unknown
 The resource state after the barrier. This is used for validation and may be Unknown if the state is not known at compile time.
xiiEnum< xiiGALStateTransitionType > m_TransitionType = xiiGALStateTransitionType::Immediate
 Whether this barrier is an immediate transition or a split barrier begin/end.
xiiEnum< xiiGALStateTransitionFlags > m_TransitionFlags = xiiGALStateTransitionFlags::None
 Additional flags for the barrier, such as whether to discard content or update internal resource state. Only relevant for immediate barriers and split-barrier ends.
xiiUInt8 m_uiSourceQueue = 0U
 Queue owning the resource before this transition.
xiiUInt8 m_uiTargetQueue = 0U
 Queue that consumes the resource after this transition.
bool m_bQueueOwnershipTransfer = false
 True when the transition is paired with a cross-queue fence wait.

Detailed Description

Describes a resource state barrier synthesized during compilation.


The documentation for this struct was generated from the following file:
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/RenderGraph.h