21#define D3D11RHI_IMMEDIATE_CONTEXT (GD3D11RHI->GetDeviceContext())
22#define D3D11RHI_DEVICE (GD3D11RHI->GetDevice())
88#define VERIFYD3D11RESULT_EX(x, Device) {HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11Result(hr,#x,__FILE__,__LINE__, Device); }}
89#define VERIFYD3D11RESULT(x) {HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11Result(hr,#x,__FILE__,__LINE__, 0); }}
90#define VERIFYD3D11RESULT_NOEXIT(x) {HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11ResultNoExit(hr,#x,__FILE__,__LINE__, 0); }}
91#define VERIFYD3D11SHADERRESULT(Result, Shader, Device) {HRESULT hr = (Result); if (FAILED(hr)) { VerifyD3D11ShaderResult(Shader, hr, #Result,__FILE__,__LINE__, Device); }}
92#define VERIFYD3D11RESULT_NOEXIT(x) {HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11ResultNoExit(hr,#x,__FILE__,__LINE__, 0); }}
93#define VERIFYD3D11CREATETEXTURERESULT(x,UEFormat,SizeX,SizeY,SizeZ,Format,NumMips,Flags,Usage,CPUAccessFlags,MiscFlags,SampleCount,SampleQuality,SubResPtr,SubResPitch,SubResSlicePitch,Device,DebugName) {HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11CreateTextureResult(hr, UEFormat,#x,__FILE__,__LINE__,SizeX,SizeY,SizeZ,Format,NumMips,Flags,Usage,CPUAccessFlags,MiscFlags,SampleCount,SampleQuality,SubResPtr,SubResPitch,SubResSlicePitch,Device,DebugName); }}
94#define VERIFYD3D11RESIZEVIEWPORTRESULT(x, OldState, NewState, Device) { HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11ResizeViewportResult(hr, #x, __FILE__, __LINE__, OldState, NewState, Device); }}
95#define VERIFYD3D11CREATEVIEWRESULT(x, Device, Resource, Desc) {HRESULT hr = x; if (FAILED(hr)) { VerifyD3D11CreateViewResult(hr, #x, __FILE__, __LINE__, Device, Resource, Desc); }}
101#define checkComRefCount(Obj,ExpectedRefs) VerifyComRefCount(Obj,ExpectedRefs,TEXT(#Obj),TEXT(__FILE__),__LINE__)
178 : bAllocDataWasUsed(
false)
186 Data = (
uint8*)FMemory::Malloc(
Size, 16);
187 bAllocDataWasUsed =
true;
204 check(bAllocDataWasUsed);
213 bool bAllocDataWasUsed;
242 int32 NumActiveTargets;
272template<
typename JobType>
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
D3D11RHI_API void VerifyComRefCount(IUnknown *Object, int32 ExpectedRefs, const TCHAR *Code, const TCHAR *Filename, int32 Line)
Definition D3D11Util.cpp:435
void RunOnRHIThread(JobType &&InRHIJob)
Definition D3D11Util.h:273
D3D11RHI_API void VerifyD3D11CreateViewResult(HRESULT D3DResult, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line, ID3D11Device *Device, FRHITexture *Texture, const D3D11_UNORDERED_ACCESS_VIEW_DESC &Desc)
Definition D3D11Util.cpp:416
bool ShouldNotEnqueueRHICommand()
Definition D3D11Util.h:281
D3D11RHI_API void VerifyD3D11CreateTextureResult(HRESULT D3DResult, int32 UEFormat, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line, uint32 SizeX, uint32 SizeY, uint32 SizeZ, uint8 D3DFormat, uint32 NumMips, uint32 Flags, D3D11_USAGE Usage, uint32 CPUAccessFlags, uint32 MiscFlags, uint32 SampleCount, uint32 SampleQuality, const void *SubResPtr, uint32 SubResPitch, uint32 SubResSlicePitch, ID3D11Device *Device, const TCHAR *DebugName)
Definition D3D11Util.cpp:265
D3D11RHI_API void VerifyD3D11Result(HRESULT Result, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line, ID3D11Device *Device)
Definition D3D11Util.cpp:238
D3D11RHI_API void VerifyD3D11ResultNoExit(HRESULT Result, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line, ID3D11Device *Device)
Definition D3D11Util.cpp:229
D3D11RHI_API void VerifyD3D11ShaderResult(class FRHIShader *Shader, HRESULT Result, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line, ID3D11Device *Device)
Definition D3D11Util.cpp:252
void SetD3D11ResourceName(FD3D11Texture *Texture, FStringView Name)
Definition D3D11Util.cpp:39
void SetD3D11ObjectName(ID3D11DeviceChild *Object, FAnsiStringView Name)
Definition D3D11Util.cpp:18
D3D11RHI_API void VerifyD3D11ResizeViewportResult(HRESULT D3DResult, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line, const FD3D11ResizeViewportState &OldState, const FD3D11ResizeViewportState &NewState, ID3D11Device *Device)
Definition D3D11Util.cpp:333
uint32 GetD3D11CubeFace(ECubeFace Face)
Definition D3D11Util.h:111
FString GetD3D11ErrorString(HRESULT ErrorCode, ID3D11Device *Device)
Definition D3D11Util.cpp:71
FRHICommandListExecutor GRHICommandList
Definition RHICommandList.cpp:119
bool IsRunningRHIInSeparateThread()
Definition RHICommandList.h:159
@ MaxSimultaneousRenderTargets
Definition RHIDefinitions.h:287
ECubeFace
Definition RHIDefinitions.h:525
@ CubeFace_NegX
Definition RHIDefinitions.h:527
@ CubeFace_PosX
Definition RHIDefinitions.h:526
@ CubeFace_NegY
Definition RHIDefinitions.h:529
@ CubeFace_NegZ
Definition RHIDefinitions.h:531
@ CubeFace_PosZ
Definition RHIDefinitions.h:530
@ CubeFace_PosY
Definition RHIDefinitions.h:528
CORE_API bool IsInRHIThread()
Definition ThreadingBase.cpp:339
CORE_API bool IsInRenderingThread()
Definition ThreadingBase.cpp:273
uint32 PointerHash(const void *Key)
Definition TypeHash.h:91
uint32 Size
Definition VulkanMemory.cpp:4034
Definition D3D11Util.h:223
~FD3D11BoundRenderTargets()
Definition D3D11Util.cpp:483
ID3D11RenderTargetView * GetRenderTargetView(int32 TargetIndex)
Definition D3D11Util.h:233
int32 GetNumActiveTargets() const
Definition D3D11Util.h:232
ID3D11DepthStencilView * GetDepthStencilView()
Definition D3D11Util.h:234
Definition D3D11Resources.h:421
Definition D3D11Util.h:135
FD3D11LockedKey()=default
uint32 GetHash() const
Definition D3D11Util.h:157
bool operator!=(const FD3D11LockedKey &Other) const
Definition D3D11Util.h:152
friend uint32 GetTypeHash(const FD3D11LockedKey &K)
Definition D3D11Util.h:163
bool operator==(const FD3D11LockedKey &Other) const
Definition D3D11Util.h:147
ID3D11Resource * SourceObject
Definition D3D11Util.h:137
FD3D11LockedKey(ID3D11Resource *InSource, uint32 InSubresource=0)
Definition D3D11Util.h:142
uint32 Subresource
Definition D3D11Util.h:138
Definition D3D11Resources.h:154
Definition D3D11Resources.h:557
Definition RHIResources.h:1581
Definition RHICommandList.h:455
void * AllocCommand(int32 AllocSize, int32 Alignment)
Definition RHICommandList.h:567
bool Bypass() const
Definition RHICommandList.inl:27
Definition RHICommandList.h:5284
static FRHICommandListImmediate & GetImmediateCommandList()
Definition RHICommandList.h:5528
Definition RHIResources.h:854
Definition RHIResources.h:2153
Definition RHICommandList.h:4582
Definition D3D11Util.h:256
void Execute(FRHICommandListBase &RHICmdList)
Definition D3D11Util.h:263
TD3D11RHIGenericCommand(JobType &&InRHIJob)
Definition D3D11Util.h:259
Definition AndroidPlatformMisc.h:14
Definition RefCounting.h:454
@ false
Definition radaudio_common.h:23
Definition D3D11Util.h:171
bool bLockDeferred
Definition D3D11Util.h:216
uint32 DepthPitch
Definition D3D11Util.h:174
TRefCountPtr< ID3D11Resource > StagingResource
Definition D3D11Util.h:172
void AllocData(uint32 Size)
Definition D3D11Util.h:184
void SetData(void *InData)
Definition D3D11Util.h:191
uint8 * GetData() const
Definition D3D11Util.h:196
void FreeData()
Definition D3D11Util.h:202
uint32 Pitch
Definition D3D11Util.h:173
FD3D11LockedData()
Definition D3D11Util.h:177
Definition D3D11Util.h:246
static const TCHAR * TStr()
Definition D3D11Util.h:247
Definition D3D11Util.h:72
uint32 SizeY
Definition D3D11Util.h:74
bool bIsFullscreen
Definition D3D11Util.h:76
uint32 SizeX
Definition D3D11Util.h:73
DXGI_FORMAT Format
Definition D3D11Util.h:75
static FORCENOINLINE CORE_API void Free(void *Original)
Definition UnrealMemory.cpp:685
Definition RHICommandList.h:1604
Definition D3D11Util.h:288
FScopedD3D11RHIThreadStaller(bool bDoStall=true)
Definition D3D11Util.h:289