75 void BeginLocalQueries();
76 void EndLocalQueries();
87 bool IsOpen ()
const {
return !State.IsClosed; }
88 bool IsClosed()
const {
return State.IsClosed; }
104#if ENABLE_RESIDENCY_MANAGEMENT
112#if RHI_NEW_GPU_PROFILER
118 if constexpr (std::is_same_v<UE::RHI::GPUProfiler::FEvent::FBeginWork, TEventType>)
121 State.BeginEvents.Add(&Data);
145#if D3D12_MAX_COMMANDLIST_INTERFACE >= 1
148#if D3D12_MAX_COMMANDLIST_INTERFACE >= 2
151#if D3D12_MAX_COMMANDLIST_INTERFACE >= 3
154#if D3D12_MAX_COMMANDLIST_INTERFACE >= 4
157#if D3D12_MAX_COMMANDLIST_INTERFACE >= 5
160#if D3D12_MAX_COMMANDLIST_INTERFACE >= 6
163#if D3D12_MAX_COMMANDLIST_INTERFACE >= 7
166#if D3D12_MAX_COMMANDLIST_INTERFACE >= 8
169#if D3D12_MAX_COMMANDLIST_INTERFACE >= 9
172#if D3D12_MAX_COMMANDLIST_INTERFACE >= 10
176#if D3D12_SUPPORTS_DEBUG_COMMAND_LIST
180 UE::RHICore::Nvidia::Aftermath::D3D12::FCommandList
AftermathHandle =
nullptr;
182#if INTEL_GPU_CRASH_DUMPS
193 template <
typename T>
202 : CommandList(CommandList)
215 operator bool () const&& {
return !!Ptr; }
219 T*
operator -> () && { CommandList.State.NumCommands++;
return Ptr; }
220 T*
Get () && { CommandList.State.NumCommands++;
return Ptr; }
226 template <
typename FInterfaceType>
236#if D3D12_MAX_COMMANDLIST_INTERFACE >= 1
239#if D3D12_MAX_COMMANDLIST_INTERFACE >= 2
242#if D3D12_MAX_COMMANDLIST_INTERFACE >= 3
245#if D3D12_MAX_COMMANDLIST_INTERFACE >= 4
248#if D3D12_MAX_COMMANDLIST_INTERFACE >= 5
251#if D3D12_MAX_COMMANDLIST_INTERFACE >= 6
254#if D3D12_MAX_COMMANDLIST_INTERFACE >= 7
257#if D3D12_MAX_COMMANDLIST_INTERFACE >= 8
260#if D3D12_MAX_COMMANDLIST_INTERFACE >= 9
263#if D3D12_MAX_COMMANDLIST_INTERFACE >= 10
267#if D3D12_SUPPORTS_DEBUG_COMMAND_LIST
268 auto DebugCommandList () {
return BuildRValuePtr(&FInterfaces::DebugCommandList ); }
270#if D3D12_RHI_RAYTRACING
288#if DEBUG_RESOURCE_STATES
308 bool IsClosed =
false;
315 #if RHI_NEW_GPU_PROFILER
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
D3DX12Residency::ResidencySet FD3D12ResidencySet
Definition D3D12CommandList.h:29
ED3D12QueryPosition
Definition D3D12Query.h:38
ED3D12QueueType
Definition D3D12Queue.h:11
const bool
Definition NetworkReplayStreaming.h:178
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition D3D12CommandList.h:36
ED3D12QueueType const QueueType
Definition D3D12CommandList.h:48
~FD3D12CommandAllocator()
Definition D3D12CommandList.cpp:83
void Reset()
Definition D3D12CommandList.cpp:89
FD3D12Device *const Device
Definition D3D12CommandList.h:47
Definition D3D12CommandList.h:195
T * GetNoRefCount() &&
Definition D3D12CommandList.h:222
T * operator->() &&
Definition D3D12CommandList.h:219
T * Get() &&
Definition D3D12CommandList.h:220
bool operator!() const &&
Definition D3D12CommandList.h:216
TRValuePtr(TRValuePtr &&)=delete
TRValuePtr & operator=(TRValuePtr const &)=delete
TRValuePtr(TRValuePtr const &)=delete
Definition D3D12CommandList.h:63
auto CopyCommandList()
Definition D3D12CommandList.h:234
auto GraphicsCommandList()
Definition D3D12CommandList.h:235
void Close()
Definition D3D12CommandList.cpp:219
void EndQuery(FD3D12QueryLocation const &Location)
Definition D3D12CommandList.cpp:308
bool IsClosed() const
Definition D3D12CommandList.h:88
void BeginQuery(FD3D12QueryLocation const &Location)
Definition D3D12CommandList.cpp:296
void UpdateResidency(const FD3D12Resource *Resource)
Definition D3D12CommandList.cpp:7
ED3D12QueueType const QueueType
Definition D3D12CommandList.h:93
auto BaseCommandList()
Definition D3D12CommandList.h:233
bool IsOpen() const
Definition D3D12CommandList.h:87
~FD3D12CommandList()
Definition D3D12CommandList.cpp:188
uint32 GetNumCommands() const
Definition D3D12CommandList.h:90
FD3D12Device *const Device
Definition D3D12CommandList.h:92
Definition D3D12CommandContext.h:199
Definition D3D12Device.h:176
Definition D3D12RHIPrivate.h:160
Definition D3D12Query.h:184
Definition D3D12Device.h:104
Definition D3D12Resources.h:181
Definition RefCounting.h:454
UE_FORCEINLINE_HINT ReferencedType * GetReference() const
Definition RefCounting.h:584
Definition GPUProfiler.h:310
void Append(FEventStream &&Other)
Definition GPUProfiler.h:447
Definition D3D12CommandList.h:26
Definition D3D12Query.h:129
Definition D3D12Residency.h:46
Definition GPUProfiler.h:172