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

#include <RenderPipelineResource.h>

Public Member Functions

xiiUInt32 AddPass (xiiStringView name, const xiiRTTI *pType, const xiiVariantDictionary &properties={})
xiiUInt32 AddSubgraph (xiiStringView name, const xiiUuid &definition)
xiiResult MakeGraphDefinition (xiiGraphDefinition &out_definition) const
 Capture authoring topology with document identities, never runtime graph handles.
xiiResult RemovePass (xiiUInt32 index)
xiiResult Connect (xiiUInt32 source, xiiStringView output, xiiUInt32 target, xiiStringView input)
xiiResult Disconnect (xiiUInt32 connection)
xiiResult Serialize (xiiStreamWriter &stream) const
xiiResult Deserialize (xiiStreamReader &stream)
xiiUInt64 GetHeapMemoryUsage () const

Public Attributes

xiiDynamicArray< xiiRenderPipelinePassDescriptor > m_Passes
xiiDynamicArray< xiiRenderPipelineConnection > m_Connections
xiiVariantDictionary m_Parameters
xiiRenderPipelineSettings m_Settings
xiiUuid m_Id = xiiUuid::MakeUuid()
xiiDynamicArray< xiiGraphBoundaryMapping > m_Interface
xiiDynamicArray< xiiGraphDefinition > m_Definitions
 Shared definitions are stored once per document/library, regardless of instance count.
xiiDynamicArray< xiiRenderPipelineDefinitionReference > m_References

Detailed Description

Portable resource definition. Indices are serialized identities within this definition. RemovePass updates indices and removes incident connections. Compilation validates the entire definition.

Member Function Documentation

◆ AddPass()

xiiUInt32 xiiRenderPipelineResourceDescriptor::AddPass ( xiiStringView name,
const xiiRTTI * pType,
const xiiVariantDictionary & properties = {} )

Stores borrowed pass RTTI. Use xiiGetStaticRTTI<T>() for a known type, or an existing pass's GetDynamicRTTI() to preserve its runtime type.


The documentation for this struct was generated from the following files:
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/RenderPipelineResource.h
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/Implementation/RenderPipelineDescriptor.cpp
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/Implementation/RenderPipelineMemory.cpp