# Juliet\src\Graphics\D3D12\D3D12Utils ## Source Files - Header: `Juliet\src\Graphics\D3D12\D3D12Utils.h` - Source: `Juliet\src\Graphics\D3D12\D3D12Utils.cpp` ## AI Description The `D3D12Utils.h` header file defines a utility class for handling DirectX 12 errors in C++. It includes functions to log error messages and retrieve the device removed reason when the device is removed. The `LogError` function takes an `ID3D12Device5` pointer, an error message, and an HRESULT result as parameters. It uses the Windows API's `FormatMessageA` function to convert the HRESULT into a human-readable string and logs it using the `LogManager`. If no error message can be retrieved from the system errors, it posts the code instead. The `D3D12Utils.cpp` source file provides the implementation of the `LogError` function, which uses SDLGPU's `FormatMessageA` function to convert the HRESULT into a human-readable string and logs it using the `LogManager`. ## Symbols ### Namespace `Juliet::D3D12` #### Functions & Methods - `extern void LogError(NonNullPtr D3D12Device, const char* errorMessage, HRESULT result)`