XII Release 0.1.0
Loading...
Searching...
No Matches
xiiRenderPipeline Class Reference

#include <RenderPipelineResource.h>

Inheritance diagram for xiiRenderPipeline:
[legend]

Classes

struct  Pass
struct  Connection
struct  Interface
 Root document boundary lowered to direct frame-binding slots. Indices belong to this compilation only. More...

Public Member Functions

 xiiRenderPipeline ()
 Copyright (c) Theophilus Eriata. All Rights Reserved.
xiiArrayPtr< const Interface > GetInterface () const
xiiUInt32 FindInterface (xiiStringView name, bool input) const
const xiiGraph & GetTopology () const
const xiiRenderPipelineResourceDescriptor & GetDescriptor () const
xiiArrayPtr< const xiiUInt32 > GetExecutionOrder () const
xiiArrayPtr< const xiiGraphProvenance > GetProvenance () const
xiiArrayPtr< const xiiGraphDefinitionDependency > GetDependencies () const
const xiiVariantDictionary & GetPassParameters (xiiUInt32 index) const
xiiArrayPtr< const xiiRenderPipelinePin > GetPins (xiiUInt32 index) const
xiiBitflags< xiiRenderExtractionCategory > GetExtractionRequirements () const
xiiBitflags< xiiRenderPipelineFeature > GetRuntimeFeatures () const
xiiBitflags< xiiRenderPipelineFeature > GetRootRuntimeFeatures () const
xiiUInt64 GetHeapMemoryUsage () const
 Inclusive CPU memory estimate, including topology, compiled bindings and nested configuration.
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.

Static Public Member Functions

static xiiResult Compile (const xiiRenderPipelineResourceDescriptor &descriptor, xiiSharedPtr< const xiiRenderPipeline > &out_pipeline, xiiStringBuilder *out_error=nullptr)
static xiiResult Compile (const xiiRenderPipelineResourceDescriptor &descriptor, xiiGraphComposition::Resolver resolver, xiiSharedPtr< const xiiRenderPipeline > &out_pipeline, xiiStringBuilder *out_error=nullptr)

Friends

class xiiRenderPipelineInstance

Detailed Description

Immutable, shared compilation. Core graph owns structural dependencies; execution uses a flat order. No pass instance, view pointer, GPU object, frame binding or temporal history is shared here.


The documentation for this class 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/RenderPipelineCompiler.cpp
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/Implementation/RenderPipelineMemory.cpp