Nebula
Loading...
Searching...
No Matches
Frame::FrameSubmission Class Reference

#include <framesubmission.h>

Inherits Frame::FrameOp.

Classes

struct  CompiledImpl

Public Member Functions

 FrameSubmission ()
 constructor
 ~FrameSubmission ()
 destructor
void OnWindowResized ()
 Handle display resizing.
FrameOp::CompiledAllocCompiled (Memory::ArenaAllocator< BIG_CHUNK > &allocator)
 allocate new instance
virtual void Build (const BuildContext &ctx)
 build operation
Public Member Functions inherited from Frame::FrameOp
 FrameOp ()
 constructor
virtual ~FrameOp ()
 destructor
virtual void Discard ()
 discard operation
void SetName (const Util::StringAtom &name)
 set name
const Util::StringAtomGetName () const
 get name
void SetEnabled (bool b)
 set if operation should be enabled
const bool GetEnabled () const
 get if operation is enabled
void AddChild (FrameOp *op)
 add child operation
const Util::Array< Frame::FrameOp * > & GetChildren ()
 get children

Public Attributes

Util::Array< FrameSubmission * > waitSubmissions
Util::Array< CoreGraphics::QueueTypewaitQueues
CoreGraphics::CmdBufferPoolId commandBufferPool
CoreGraphics::QueueType queue
Util::Array< CoreGraphics::BarrierId > * resourceResetBarriers
Public Attributes inherited from Frame::FrameOp
CoreGraphics::BarrierDomain domain
CoreGraphics::QueueType queue
Util::Dictionary< CoreGraphics::TextureId, Util::Tuple< Util::StringAtom, CoreGraphics::PipelineStage, CoreGraphics::TextureSubresourceInfo > > textureDeps
Util::Dictionary< CoreGraphics::BufferId, Util::Tuple< Util::StringAtom, CoreGraphics::PipelineStage, CoreGraphics::BufferSubresourceInfo > > bufferDeps
Util::Dictionary< const CoreGraphics::TextureId *, Util::Tuple< Util::StringAtom, CoreGraphics::PipelineStage, CoreGraphics::TextureSubresourceInfo > > textureDepRefs
Util::Dictionary< const CoreGraphics::BufferId *, Util::Tuple< Util::StringAtom, CoreGraphics::PipelineStage, CoreGraphics::BufferSubresourceInfo > > bufferDepRefs

Additional Inherited Members

Protected Member Functions inherited from Frame::FrameOp
void SetupSynchronization (Memory::ArenaAllocator< BIG_CHUNK > &allocator, Util::Array< CoreGraphics::EventId > &events, Util::Array< CoreGraphics::BarrierId > &barriers, Util::Dictionary< CoreGraphics::BufferId, Util::Array< BufferDependency > > &buffers, Util::Dictionary< CoreGraphics::TextureId, Util::Array< TextureDependency > > &textures)
 setup synchronization
Static Protected Member Functions inherited from Frame::FrameOp
static void AnalyzeAndSetupTextureBarriers (struct FrameOp::Compiled *op, CoreGraphics::TextureId tex, const Util::StringAtom &textureName, DependencyIntent readOrWrite, CoreGraphics::PipelineStage stage, CoreGraphics::BarrierDomain domain, const CoreGraphics::TextureSubresourceInfo &subres, CoreGraphics::QueueType fromQueue, Util::Dictionary< Util::Tuple< CoreGraphics::PipelineStage, CoreGraphics::PipelineStage >, CoreGraphics::BarrierCreateInfo > &barriers, Util::Dictionary< Util::Tuple< CoreGraphics::PipelineStage, CoreGraphics::PipelineStage >, CoreGraphics::EventCreateInfo > &waitEvents, Util::Dictionary< Util::Tuple< CoreGraphics::PipelineStage, CoreGraphics::PipelineStage >, struct FrameOp::Compiled * > &signalEvents, Util::Array< FrameOp::TextureDependency > &renderTextureDependencies)
 Analyze and setup barriers if needed.
static void AnalyzeAndSetupBufferBarriers (struct FrameOp::Compiled *op, CoreGraphics::BufferId buf, const Util::StringAtom &bufferName, DependencyIntent readOrWrite, CoreGraphics::PipelineStage stage, CoreGraphics::BarrierDomain domain, const CoreGraphics::BufferSubresourceInfo &subres, CoreGraphics::QueueType fromQueue, Util::Dictionary< Util::Tuple< CoreGraphics::PipelineStage, CoreGraphics::PipelineStage >, CoreGraphics::BarrierCreateInfo > &barriers, Util::Dictionary< Util::Tuple< CoreGraphics::PipelineStage, CoreGraphics::PipelineStage >, CoreGraphics::EventCreateInfo > &waitEvents, Util::Dictionary< Util::Tuple< CoreGraphics::PipelineStage, CoreGraphics::PipelineStage >, struct FrameOp::Compiled * > &signalEvents, Util::Array< FrameOp::BufferDependency > &bufferDependencies)
Protected Attributes inherited from Frame::FrameOp
Util::Array< FrameOp * > children
Util::Dictionary< Util::StringAtom, FrameOp * > childrenByName
Compiledcompiled
Util::StringAtom name
IndexT index
bool enabled

Constructor & Destructor Documentation

◆ FrameSubmission()

Frame::FrameSubmission::FrameSubmission ( )

constructor

◆ ~FrameSubmission()

Frame::FrameSubmission::~FrameSubmission ( )

destructor

Member Function Documentation

◆ AllocCompiled()

FrameOp::Compiled * Frame::FrameSubmission::AllocCompiled ( Memory::ArenaAllocator< BIG_CHUNK > & allocator)
virtual

allocate new instance

Implements Frame::FrameOp.

◆ Build()

void Frame::FrameSubmission::Build ( const BuildContext & ctx)
virtual

build operation

Reimplemented from Frame::FrameOp.

◆ OnWindowResized()

void Frame::FrameSubmission::OnWindowResized ( )
virtual

Handle display resizing.

Reimplemented from Frame::FrameOp.

Member Data Documentation

◆ commandBufferPool

CoreGraphics::CmdBufferPoolId Frame::FrameSubmission::commandBufferPool

◆ queue

CoreGraphics::QueueType Frame::FrameSubmission::queue

◆ resourceResetBarriers

Util::Array<CoreGraphics::BarrierId>* Frame::FrameSubmission::resourceResetBarriers

◆ waitQueues

Util::Array<CoreGraphics::QueueType> Frame::FrameSubmission::waitQueues

◆ waitSubmissions

Util::Array<FrameSubmission*> Frame::FrameSubmission::waitSubmissions

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