yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
f65d756bf
master
1// d3d12-base.h 2// Shared header file for D3D12 implementation 3#pragma once 4 5#include "../command-encoder-com-forward.h" 6#include "../d3d/d3d-swapchain.h" 7#include "../mutable-shader-object.h" 8#include "../renderer-shared.h" 9#include "../simple-render-pass-layout.h" 10#include "../transient-resource-heap-base.h" 11#include "core/slang-basic.h" 12#include "core/slang-blob.h" 13#include "core/slang-chunked-list.h" 14#include "d3d12-descriptor-heap.h" 15#include "d3d12-posix-synchapi.h" 16#include "d3d12-resource.h" 17 18#pragma push_macro("WIN32_LEAN_AND_MEAN") 19#pragma push_macro("NOMINMAX") 20#pragma push_macro("_CRT_SECURE_NO_WARNINGS") 21#undef WIN32_LEAN_AND_MEAN 22#define WIN32_LEAN_AND_MEAN 23#undef NOMINMAX 24#define NOMINMAX 25#undef _CRT_SECURE_NO_WARNINGS 26#define _CRT_SECURE_NO_WARNINGS 27#include <windows.h> 28#pragma pop_macro("_CRT_SECURE_NO_WARNINGS") 29#pragma pop_macro("NOMINMAX") 30#pragma pop_macro("WIN32_LEAN_AND_MEAN") 31 32#include <d3d12.h> 33#include <dxgi1_4.h> 34 35#ifndef __ID3D12GraphicsCommandList1_FWD_DEFINED__ 36// If can't find a definition of CommandList1, just use an empty definition 37struct ID3D12GraphicsCommandList1 38{ 39}; 40#endif 41 42namespace gfx 43{ 44namespace d3d12 45{ 46class DeviceImpl ; 47class BufferResourceImpl ; 48class TextureResourceImpl ; 49class CommandBufferImpl ; 50class PipelineCommandEncoder ; 51class ResourceCommandEncoderImpl ; 52class ComputeCommandEncoderImpl ; 53class RenderCommandEncoderImpl ; 54class CommandQueueImpl ; 55class FenceImpl ; 56class FramebufferLayoutImpl ; 57class FramebufferImpl ; 58class QueryPoolImpl ; 59class PlainBufferProxyQueryPoolImpl ; 60class PipelineStateImpl ; 61class RenderPassLayoutImpl ; 62class ResourceViewInternalImpl ; 63class ResourceViewImpl ; 64class AccelerationStructureImpl ; 65class SamplerStateImpl ; 66class ShaderObjectImpl ; 67class RootShaderObjectImpl ; 68class MutableRootShaderObjectImpl ; 69class ShaderObjectLayoutImpl ; 70class RootShaderObjectLayoutImpl ; 71class ShaderProgramImpl ; 72class ShaderTableImpl ; 73class SwapChainImpl ; 74class TransientResourceHeapImpl ; 75class InputLayoutImpl ; 76 77#if SLANG_GFX_HAS_DXR_SUPPORT 78class RayTracingCommandEncoderImpl ; 79class RayTracingPipelineStateImpl ; 80#endif 81}// namespace d3d12 82}// namespace gfx