Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::RHI::FrameGraphExecuteGroup Class Reference

#include <FrameGraphExecuteGroup.h>

Inherited by AZ::DX12::FrameGraphExecuteGroupBase, AZ::Metal::FrameGraphExecuteGroupBase, and AZ::Vulkan::FrameGraphExecuteGroupBase.

Classes

struct  InitMergedRequest
 
struct  InitRequest
 

Public Member Functions

 AZ_RTTI (FrameGraphExecuteGroup, "{159FAD55-17EC-4B09-986F-01B740F96448}")
 
bool IsComplete () const
 
bool IsSubmittable () const
 
uint32_t GetContextCount () const
 Returns the number of execute contexts in the group.
 
FrameGraphExecuteContextBeginContext (uint32_t contextindex)
 Begins the context at index.
 
void EndContext (uint32_t contextIndex)
 
JobPolicy GetJobPolicy () const
 

Protected Member Functions

void Init (const InitRequest &request)
 
void Init (const InitMergedRequest &request)
 

Friends

class FrameGraphExecuter
 

Detailed Description

Provides a platform-independent implementation of ExecuteGroupContext.

This class handles the ExecuteGroupContext methods and exposes a new API for platforms to override. Platforms which utilize hierarchical command lists (e.g. Vulkan / Metal) can store the primary command list on this class, and then organize the group structure such that child parallel command lists for a particular scope become FrameGraphExecuteContexts.

Alternatively, this class can be used to structure work into batches so that submission occurs once for a set of command lists.

Member Function Documentation

◆ BeginContext()

FrameGraphExecuteContext * AZ::RHI::FrameGraphExecuteGroup::BeginContext ( uint32_t  contextindex)

Begins the context at index.

Parameters
contextIndex.

◆ EndContext()

void AZ::RHI::FrameGraphExecuteGroup::EndContext ( uint32_t  contextIndex)

Ends the context at index \ param contextIndex. This invalidates the FrameGraphExecuteContext* provided by BeginContext.

◆ GetJobPolicy()

JobPolicy AZ::RHI::FrameGraphExecuteGroup::GetJobPolicy ( ) const

Returns the job policy for this group. The policy informs whether each context in the group can be independently traversed. If serial, then BeginContext and EndContext must be called IN ORDER on the same thread. If parallel, they may be called independently from any thread.


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