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

#include <ScopeAttachment.h>

Inherited by AZ::RHI::BufferScopeAttachment, and AZ::RHI::ImageScopeAttachment.

Public Member Functions

 AZ_RTTI (ScopeAttachment, "{6BB50E92-5A15-4C50-8717-F7B05AB98BD9}")
 
 ScopeAttachment (Scope &scope, FrameAttachment &attachment, ScopeAttachmentUsage usage, ScopeAttachmentAccess access, ScopeAttachmentStage stage)
 
ScopeAttachmentUsage GetUsage () const
 Returns the usage.
 
ScopeAttachmentAccess GetAccess () const
 Returns the access.
 
ScopeAttachmentStage GetStage () const
 Returns the pipeline stage.
 
const ResourceViewGetResourceView () const
 Returns the resource view.
 
const ScopeGetScope () const
 Returns the parent scope that this attachment is bound to.
 
ScopeGetScope ()
 
const FrameAttachmentGetFrameAttachment () const
 Returns the parent frame graph attachment.
 
FrameAttachmentGetFrameAttachment ()
 
const ScopeAttachmentGetPrevious () const
 Returns the previous binding in the linked list.
 
ScopeAttachmentGetPrevious ()
 
const ScopeAttachmentGetNext () const
 Returns the next binding in the linked list.
 
ScopeAttachmentGetNext ()
 
const char * GetTypeName () const
 Returns the friendly usage and access type names of this scope attachment (used for logging).
 
bool IsSwapChainAttachment () const
 Returns true if this is a SwapChainFrameAttachment.
 
virtual const ScopeAttachmentDescriptorGetScopeAttachmentDescriptor () const =0
 Return the ScopeAttachmentDescriptor used by this attachment.
 

Protected Member Functions

void SetResourceView (ConstPtr< ResourceView > resourceView)
 Assigns the resource view to this scope attachment.
 

Friends

class FrameGraphAttachmentDatabase
 

Detailed Description

A ScopeAttachment is created when a FrameAttachment is "attached" to a specific scope. A single FrameAttachment exists for a given AttachemntId, but many ScopeAttachments can exist as "children" of a FrameAttachment. More precisely, ScopeAttachment forms a linked list, where the first node is the first "usage" on the first scope, and the last node the last usage on the last scope. FrameAttachment references the head and tail of this linked list.

The FrameAttachment owns the Attachment instance (i.e. the actual resource). The ScopeAttachment owns a view into that resource. A scope is able to utilize the view during compilation and execution.

Member Function Documentation

◆ GetScopeAttachmentDescriptor()

virtual const ScopeAttachmentDescriptor & AZ::RHI::ScopeAttachment::GetScopeAttachmentDescriptor ( ) const
pure virtual

Return the ScopeAttachmentDescriptor used by this attachment.

Implemented in AZ::RHI::BufferScopeAttachment, and AZ::RHI::ImageScopeAttachment.


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