![]() |
Open 3D Engine Atom Gem API Reference
22.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
|
#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) | |
bool | HasUsage (const ScopeAttachmentUsage usage) const |
Returns true if usage is compatible with how this scopeattachment will be used. | |
bool | HasAccessAndUsage (const ScopeAttachmentUsage usage, const ScopeAttachmentAccess access) const |
Returns true if access is compatible with how this scopeattachment will be accessed. | |
const AZStd::vector< ScopeAttachmentUsageAndAccess > & | GetUsageAndAccess () const |
Returns a vector containing all usage/access data used by this scopeattachment. | |
const ResourceView * | GetResourceView () const |
Returns the resource view. | |
const Scope & | GetScope () const |
Returns the parent scope that this attachment is bound to. | |
Scope & | GetScope () |
const FrameAttachment & | GetFrameAttachment () const |
Returns the parent frame graph attachment. | |
FrameAttachment & | GetFrameAttachment () |
const ScopeAttachment * | GetPrevious () const |
Returns the previous binding in the linked list. | |
ScopeAttachment * | GetPrevious () |
const ScopeAttachment * | GetNext () const |
Returns the next binding in the linked list. | |
ScopeAttachment * | GetNext () |
const char * | GetTypeName (const RHI::ScopeAttachmentUsageAndAccess &usageAndAccess) const |
Returns the friendly usage and access type names of this scope attachment (used for logging). | |
AZStd::string | GetUsageTypes () const |
AZStd::string | GetAccessTypes () const |
void | AddUsageAndAccess (ScopeAttachmentUsage usage, ScopeAttachmentAccess access) |
Add how the attachment is used by the scope and how it is accessed by the scope. | |
bool | IsSwapChainAttachment () const |
Returns true if this is a SwapChainFrameAttachment. | |
Protected Member Functions | |
void | SetResourceView (ConstPtr< ResourceView > resourceView) |
Assigns the resource view to this scope attachment. | |
Friends | |
class | FrameGraphAttachmentDatabase |
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.