11#if defined(SLANG_GFX_DYNAMIC)
13 #ifdef SLANG_GFX_DYNAMIC_EXPORT
14 #define SLANG_GFX_API SLANG_DLL_EXPORT
16 #define SLANG_GFX_API __declspec(dllimport)
21 #define SLANG_GFX_API SLANG_DLL_EXPORT
210#define SLANG_UUID_IShaderProgram \
212 0x9d32d0ad, 0x915c, 0x4ffd, \
214 0x91, 0xe2, 0x50, 0x85, 0x54, 0xa0, 0x4a, 0x76 \
222#define GFX_FORMAT(x) \
225 x(R32G32B32A32_TYPELESS, 16, 1) \
226 x(R32G32B32_TYPELESS, 12, 1) \
227 x(R32G32_TYPELESS, 8, 1) \
228 x(R32_TYPELESS, 4, 1) \
230 x(R16G16B16A16_TYPELESS, 8, 1) \
231 x(R16G16_TYPELESS, 4, 1) \
232 x(R16_TYPELESS, 2, 1) \
234 x(R8G8B8A8_TYPELESS, 4, 1) \
235 x(R8G8_TYPELESS, 2, 1) \
236 x(R8_TYPELESS, 1, 1) \
237 x(B8G8R8A8_TYPELESS, 4, 1) \
239 x(R32G32B32A32_FLOAT, 16, 1) \
240 x(R32G32B32_FLOAT, 12, 1) \
241 x(R32G32_FLOAT, 8, 1) \
244 x(R16G16B16A16_FLOAT, 8, 1) \
245 x(R16G16_FLOAT, 4, 1) \
248 x(R32G32B32A32_UINT, 16, 1) \
249 x(R32G32B32_UINT, 12, 1) \
250 x(R32G32_UINT, 8, 1) \
253 x(R16G16B16A16_UINT, 8, 1) \
254 x(R16G16_UINT, 4, 1) \
257 x(R8G8B8A8_UINT, 4, 1) \
261 x(R32G32B32A32_SINT, 16, 1) \
262 x(R32G32B32_SINT, 12, 1) \
263 x(R32G32_SINT, 8, 1) \
266 x(R16G16B16A16_SINT, 8, 1) \
267 x(R16G16_SINT, 4, 1) \
270 x(R8G8B8A8_SINT, 4, 1) \
274 x(R16G16B16A16_UNORM, 8, 1) \
275 x(R16G16_UNORM, 4, 1) \
278 x(R8G8B8A8_UNORM, 4, 1) \
279 x(R8G8B8A8_UNORM_SRGB, 4, 1) \
280 x(R8G8_UNORM, 2, 1) \
282 x(B8G8R8A8_UNORM, 4, 1) \
283 x(B8G8R8A8_UNORM_SRGB, 4, 1) \
284 x(B8G8R8X8_UNORM, 4, 1) \
285 x(B8G8R8X8_UNORM_SRGB, 4, 1) \
287 x(R16G16B16A16_SNORM, 8, 1) \
288 x(R16G16_SNORM, 4, 1) \
291 x(R8G8B8A8_SNORM, 4, 1) \
292 x(R8G8_SNORM, 2, 1) \
297 x(D32_FLOAT_S8_UINT, 8, 1) \
298 x(R32_FLOAT_X32_TYPELESS, 8, 1) \
300 x(B4G4R4A4_UNORM, 2, 1) \
301 x(B5G6R5_UNORM, 2, 1) \
302 x(B5G5R5A1_UNORM, 2, 1) \
304 x(R9G9B9E5_SHAREDEXP, 4, 1) \
305 x(R10G10B10A2_TYPELESS, 4, 1) \
306 x(R10G10B10A2_UNORM, 4, 1) \
307 x(R10G10B10A2_UINT, 4, 1) \
308 x(R11G11B10_FLOAT, 4, 1) \
310 x(BC1_UNORM, 8, 16) \
311 x(BC1_UNORM_SRGB, 8, 16) \
312 x(BC2_UNORM, 16, 16) \
313 x(BC2_UNORM_SRGB, 16, 16) \
314 x(BC3_UNORM, 16, 16) \
315 x(BC3_UNORM_SRGB, 16, 16) \
316 x(BC4_UNORM, 8, 16) \
317 x(BC4_SNORM, 8, 16) \
318 x(BC5_UNORM, 16, 16) \
319 x(BC5_SNORM, 16, 16) \
320 x(BC6H_UF16, 16, 16) \
321 x(BC6H_SF16, 16, 16) \
322 x(BC7_UNORM, 16, 16) \
323 x(BC7_UNORM_SRGB, 16, 16) \
540 template<
typename... TResourceState>
548 return (
m_bitFields & (1LL << (uint32_t)state)) != 0;
556 template<
typename... TResourceState>
614#define SLANG_UUID_IInputLayout \
616 0x45223711, 0xa84b, 0x455c, \
618 0xbe, 0xfa, 0x49, 0x37, 0x42, 0x1e, 0x8e, 0x2e \
657#define SLANG_UUID_IResource \
659 0xa0e39f34, 0x8398, 0x4522, \
661 0x95, 0xc2, 0xeb, 0xc0, 0xf9, 0x84, 0xef, 0x3f \
687#define SLANG_UUID_IBufferResource \
689 0x1b274efe, 0x5e37, 0x492b, \
691 0x82, 0x6e, 0x7e, 0xe7, 0xe8, 0xf5, 0xa4, 0x9b \
751 :
x(_x),
y(_y),
z(_z)
828#define SLANG_UUID_ITextureResource \
830 0xcf88a31c, 0x6187, 0x46c5, \
832 0xa4, 0xb7, 0xeb, 0x58, 0xc7, 0x33, 0x40, 0x17 \
897#define SLANG_UUID_ISamplerState \
899 0x8b8055df, 0x9377, 0x401d, \
901 0x91, 0xff, 0x3f, 0xa3, 0xbf, 0x66, 0x64, 0xf4 \
949#define SLANG_UUID_IResourceView \
951 0x7b6c4926, 0x884, 0x408c, \
953 0xad, 0x8a, 0x50, 0x3a, 0x8e, 0x23, 0x98, 0xa4 \
1114#define SLANG_UUID_IAccelerationStructure \
1116 0xa5cdda3c, 0x1d4e, 0x4df7, \
1118 0x8e, 0xf2, 0xb7, 0x3f, 0xce, 0x4, 0xde, 0x3b \
1140#define SLANG_UUID_IFence \
1142 0x7fe1c283, 0xd3f4, 0x48ed, \
1144 0xaa, 0xf3, 0x1, 0x51, 0x96, 0x4e, 0x7c, 0xb5 \
1216 const slang::SpecializationArg* args,
1244#define SLANG_UUID_IShaderObject \
1246 0xc1fa997e, 0x5ca2, 0x45ae, \
1248 0x9b, 0xcb, 0xc4, 0x35, 0x9e, 0x85, 0x5, 0x85 \
1357namespace RenderTargetWriteMask
1411#define SLANG_UUID_IFramebufferLayout \
1413 0xa838785, 0xc13a, 0x4832, \
1415 0xad, 0x88, 0x64, 0x6, 0xb5, 0x4b, 0x5e, 0xba \
1498#define SLANG_UUID_IShaderTable \
1500 0xa721522c, 0xdf31, 0x4c2f, \
1502 0xa5, 0xe7, 0x3b, 0xe0, 0x12, 0x4b, 0x31, 0x78 \
1511#define SLANG_UUID_IPipelineState \
1513 0xca7e57d, 0x8a90, 0x44f3, \
1515 0xbd, 0xb1, 0xfe, 0x9b, 0x35, 0x3f, 0x5a, 0x72 \
1549#define SLANG_UUID_IFrameBuffer \
1551 0xf0c0d9a, 0x4ef3, 0x4e18, \
1553 0x9b, 0xa9, 0x34, 0x60, 0xea, 0x69, 0x87, 0x95 \
1632#define SLANG_UUID_IRenderPassLayout \
1634 0xdaab0b1a, 0xf45d, 0x4ae9, \
1636 0xbf, 0x2c, 0xe0, 0xbb, 0x76, 0x7d, 0xfa, 0xd1 \
1662#define SLANG_UUID_IQueryPool \
1664 0xc2cc3784, 0x12da, 0x480a, \
1666 0xa8, 0x74, 0x8b, 0x31, 0x96, 0x1c, 0xa4, 0x36 \
1677 {0x8b, 0x45, 0xfd, 0xf0, 0xd7, 0x5b, 0xfa, 0x34});
1763 {0x8a, 0xe, 0x3b, 0x26, 0x75, 0x50, 0x31, 0xea});
1804 GfxCount subResourceDataCount) = 0;
1859 {0x85, 0xf7, 0xd1, 0x4d, 0xc1, 0x10, 0xfd, 0xce})
1899 const Offset* offsets) = 0;
1916 Offset countOffset = 0) = 0;
1922 Offset countOffset = 0) = 0;
1932 GfxIndex startInstanceLocation) = 0;
1938 GfxIndex startInstanceLocation) = 0;
1949 {0xa6, 0x8a, 0x29, 0xc7, 0xfe, 0x79, 0x87, 0x37})
1994 {0x96, 0x7c, 0x1f, 0x85, 0xcd, 0xb3, 0x63, 0x4f})
2005 GfxCount accelerationStructureCount,
2083#define SLANG_UUID_ICommandBuffer \
2085 0x5d56063f, 0x91d4, 0x4723, \
2087 0xa7, 0xa7, 0x7a, 0x15, 0xaf, 0x93, 0xeb, 0x48 \
2097#define SLANG_UUID_ICommandBufferD3D12 \
2099 0xd56b7616, 0x6c14, 0x4841, \
2101 0x9d, 0x9c, 0x7b, 0x7f, 0xdb, 0x9f, 0xd9, 0xb8 \
2126 uint64_t newFenceValue) = 0;
2129 IFence* fenceToSignal =
nullptr,
2130 uint64_t newFenceValue = 0)
2143#define SLANG_UUID_ICommandQueue \
2145 0x14e2bed0, 0xad0, 0x4dc8, \
2147 0xb3, 0x41, 0x6, 0x3f, 0xe7, 0x2d, 0xbf, 0xe \
2197#define SLANG_UUID_ITransientResourceHeap \
2199 0xcd48bd29, 0xee72, 0x41b8, \
2201 0xbc, 0xff, 0xa, 0x2b, 0x3a, 0xaa, 0x6d, 0xeb \
2216 Offset& outDescriptorOffset,
2217 void** outD3DDescriptorHeapHandle) = 0;
2219#define SLANG_UUID_ITransientResourceHeapD3D12 \
2221 0x9bc6a8bc, 0x5f7a, 0x454a, \
2223 0x93, 0xef, 0x3b, 0x10, 0x5b, 0xb7, 0x63, 0x7e \
2261#define SLANG_UUID_ISwapchain \
2263 0xbe91ba6c, 0x784, 0x4308, \
2265 0xa1, 0x0, 0x19, 0xc3, 0x66, 0x83, 0x44, 0xb2 \
2546 const void* initData,
2551 const void* initData =
nullptr)
2695 slang::TypeReflection* type,
2708 slang::TypeReflection* type,
2713 slang::TypeLayoutReflection* typeLayout,
2717 slang::TypeLayoutReflection* typeLayout,
2729 ISlangBlob** outDiagnosticBlob =
nullptr) = 0;
2741 ISlangBlob** outDiagnosticBlob =
nullptr) = 0;
2774 Size* outPixelSize) = 0;
2804 uint64_t timeout) = 0;
2809 Size* outAlignment) = 0;
2815 uint32_t* propertyCount) = 0;
2818 slang::ISession* slangSession,
2819 slang::TypeReflection* type,
2824 slang::ISession* slangSession,
2825 slang::TypeReflection* type,
2830#define SLANG_UUID_IDevice \
2832 0x715bdf26, 0x5135, 0x11eb, \
2834 0xAE, 0x93, 0x02, 0x42, 0xAC, 0x13, 0x00, 0x02 \
2857#define SLANG_UUID_IShaderCache \
2859 0x8eccc8ec, 0x5c04, 0x4a51, \
2861 0x99, 0x75, 0x13, 0xf8, 0xfe, 0xa1, 0x59, 0xf3 \
2870 slang::IComponentType* program,
2872 void** outPipelineState) = 0;
2875 slang::IComponentType* program,
2877 void** outPipelineState) = 0;
2880 slang::IComponentType* program,
2882 void** outPipelineState) = 0;
2888#define SLANG_UUID_IPipelineCreationAPIDispatcher \
2890 0xc3d5f782, 0xeae1, 0x4da6, \
2892 0xab, 0x40, 0x75, 0x32, 0x31, 0x2, 0xb7, 0xdc \
2896#define SLANG_UUID_IVulkanPipelineCreationAPIDispatcher \
2898 0x4fcf1274, 0x8752, 0x4743, \
2900 0xb3, 0x51, 0x47, 0xcb, 0x83, 0x71, 0xef, 0x99 \
Definition slang-com-ptr.h:50
SLANG_FORCE_INLINE T ** writeRef()
Get ready for writing (nulls contents)
Definition slang-com-ptr.h:146
Definition slang-gfx.h:2300
AdapterList(ISlangBlob *blob)
Definition slang-gfx.h:2302
const AdapterInfo * getAdapters() const
Definition slang-gfx.h:2307
GfxCount getCount() const
Definition slang-gfx.h:2312
ComPtr< ISlangBlob > m_blob
Definition slang-gfx.h:2318
Definition slang-gfx.h:958
GeometryType
Definition slang-gfx.h:983
Kind
Definition slang-gfx.h:961
virtual SLANG_NO_THROW DeviceAddress SLANG_MCALL getDeviceAddress()=0
Definition slang-gfx.h:673
virtual SLANG_NO_THROW Desc *SLANG_MCALL getDesc()=0
virtual SLANG_NO_THROW Result SLANG_MCALL map(MemoryRange *rangeToRead, void **outPointer)=0
virtual SLANG_NO_THROW DeviceAddress SLANG_MCALL getDeviceAddress()=0
virtual SLANG_NO_THROW Result SLANG_MCALL unmap(MemoryRange *writtenRange)=0
Definition slang-gfx.h:2092
virtual SLANG_NO_THROW void SLANG_MCALL ensureInternalDescriptorHeapsBound()=0
virtual SLANG_NO_THROW void SLANG_MCALL invalidateDescriptorHeapBinding()=0
Definition slang-gfx.h:2032
virtual SLANG_NO_THROW void SLANG_MCALL encodeComputeCommands(IComputeCommandEncoder **outEncoder)=0
virtual SLANG_NO_THROW void SLANG_MCALL encodeResourceCommands(IResourceCommandEncoder **outEncoder)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeHandle(InteropHandle *outHandle)=0
IComputeCommandEncoder * encodeComputeCommands()
Definition slang-gfx.h:2054
IRenderCommandEncoder * encodeRenderCommands(IRenderPassLayout *renderPass, IFramebuffer *framebuffer)
Definition slang-gfx.h:2043
virtual SLANG_NO_THROW void SLANG_MCALL close()=0
IRayTracingCommandEncoder * encodeRayTracingCommands()
Definition slang-gfx.h:2072
IResourceCommandEncoder * encodeResourceCommands()
Definition slang-gfx.h:2063
virtual SLANG_NO_THROW void SLANG_MCALL encodeRayTracingCommands(IRayTracingCommandEncoder **outEncoder)=0
virtual SLANG_NO_THROW void SLANG_MCALL encodeRenderCommands(IRenderPassLayout *renderPass, IFramebuffer *framebuffer, IRenderCommandEncoder **outEncoder)=0
Definition slang-gfx.h:1672
virtual SLANG_NO_THROW void SLANG_MCALL endEncoding()=0
virtual SLANG_NO_THROW void SLANG_MCALL writeTimestamp(IQueryPool *queryPool, GfxIndex queryIndex)=0
SLANG_COM_INTERFACE(0x77ea6383, 0xbe3d, 0x40aa, {0x8b, 0x45, 0xfd, 0xf0, 0xd7, 0x5b, 0xfa, 0x34})
Definition slang-gfx.h:2106
void executeCommandBuffer(ICommandBuffer *commandBuffer, IFence *fenceToSignal=nullptr, uint64_t newFenceValue=0)
Definition slang-gfx.h:2127
QueueType
Definition slang-gfx.h:2109
virtual SLANG_NO_THROW void SLANG_MCALL executeCommandBuffers(GfxCount count, ICommandBuffer *const *commandBuffers, IFence *fenceToSignal, uint64_t newFenceValue)=0
uint64_t NativeHandle
Definition slang-gfx.h:2118
virtual SLANG_NO_THROW Result SLANG_MCALL waitForFenceValuesOnDevice(GfxCount fenceCount, IFence **fences, uint64_t *waitValues)=0
Queues a device side wait for the given fences.
virtual SLANG_NO_THROW const Desc &SLANG_MCALL getDesc()=0
virtual SLANG_NO_THROW void SLANG_MCALL waitOnHost()=0
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeHandle(InteropHandle *outHandle)=0
Definition slang-gfx.h:1943
SLANG_COM_INTERFACE(0x88aa9322, 0x82f7, 0x4fe6, {0xa6, 0x8a, 0x29, 0xc7, 0xfe, 0x79, 0x87, 0x37}) public IShaderObject * bindPipeline(IPipelineState *state)
Definition slang-gfx.h:1959
virtual SLANG_NO_THROW Result SLANG_MCALL dispatchCompute(int x, int y, int z)=0
virtual SLANG_NO_THROW Result SLANG_MCALL bindPipelineWithRootObject(IPipelineState *state, IShaderObject *rootObject)=0
virtual SLANG_NO_THROW Result SLANG_MCALL dispatchComputeIndirect(IBufferResource *cmdBuffer, Offset offset)=0
Definition slang-gfx.h:2398
virtual SLANG_NO_THROW void SLANG_MCALL handleMessage(DebugMessageType type, DebugMessageSource source, const char *message)=0
Definition slang-gfx.h:2405
virtual SLANG_NO_THROW SlangResult SLANG_MCALL readBufferResource(IBufferResource *buffer, Offset offset, Size size, ISlangBlob **outBlob)=0
ComPtr< IFramebufferLayout > createFramebufferLayout(IFramebufferLayout::Desc const &desc)
Definition slang-gfx.h:2611
Result createInputLayout(Size vertexSize, InputElementDesc const *inputElements, GfxCount inputElementCount, IInputLayout **outLayout)
Definition slang-gfx.h:2658
virtual SLANG_NO_THROW Result SLANG_MCALL createShaderTable(const IShaderTable::Desc &desc, IShaderTable **outTable)=0
virtual SLANG_NO_THROW const DeviceInfo &SLANG_MCALL getDeviceInfo() const =0
Get the type of this renderer
virtual SLANG_NO_THROW Result SLANG_MCALL getFeatures(const char **outFeatures, Size bufferSize, GfxCount *outFeatureCount)=0
Returns a list of features supported by the renderer.
virtual SLANG_NO_THROW Result SLANG_MCALL createTransientResourceHeap(const ITransientResourceHeap::Desc &desc, ITransientResourceHeap **outHeap)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createProgram(const IShaderProgram::Desc &desc, IShaderProgram **outProgram, ISlangBlob **outDiagnosticBlob=nullptr)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createMutableShaderObject(slang::TypeReflection *type, ShaderObjectContainerType container, IShaderObject **outObject)=0
ComPtr< IPipelineState > createGraphicsPipelineState(const GraphicsPipelineStateDesc &desc)
Definition slang-gfx.h:2747
virtual SLANG_NO_THROW Result SLANG_MCALL createRayTracingPipelineState(const RayTracingPipelineStateDesc &desc, IPipelineState **outState)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getTextureRowAlignment(Size *outAlignment)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createProgram2(const IShaderProgram::CreateDesc2 &createDesc, IShaderProgram **outProgram, ISlangBlob **outDiagnosticBlob=nullptr)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getCooperativeVectorProperties(CooperativeVectorProperties *properties, uint32_t *propertyCount)=0
ComPtr< ITransientResourceHeap > createTransientResourceHeap(const ITransientResourceHeap::Desc &desc)
Definition slang-gfx.h:2494
virtual SLANG_NO_THROW Result SLANG_MCALL createComputePipelineState(const ComputePipelineStateDesc &desc, IPipelineState **outState)=0
ComPtr< IShaderProgram > createProgram(const IShaderProgram::Desc &desc)
Definition slang-gfx.h:2731
virtual SLANG_NO_THROW Result SLANG_MCALL createSamplerState(ISamplerState::Desc const &desc, ISamplerState **outSampler)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createBufferView(IBufferResource *buffer, IBufferResource *counterBuffer, IResourceView::Desc const &desc, IResourceView **outView)=0
virtual SLANG_NO_THROW bool SLANG_MCALL hasFeature(const char *feature)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getFormatSupportedResourceStates(Format format, ResourceStateSet *outStates)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getAccelerationStructurePrebuildInfo(const IAccelerationStructure::BuildInputs &buildInputs, IAccelerationStructure::PrebuildInfo *outPrebuildInfo)=0
virtual SLANG_NO_THROW SlangResult SLANG_MCALL readTextureResource(ITextureResource *resource, ResourceState state, ISlangBlob **outBlob, Size *outRowPitch, Size *outPixelSize)=0
Read back texture resource and stores the result in outBlob.
virtual SLANG_NO_THROW Result SLANG_MCALL createRenderPassLayout(const IRenderPassLayout::Desc &desc, IRenderPassLayout **outRenderPassLayout)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createShaderObject(slang::TypeReflection *type, ShaderObjectContainerType container, IShaderObject **outObject)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createBufferFromSharedHandle(InteropHandle handle, const IBufferResource::Desc &srcDesc, IBufferResource **outResource)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createTextureFromNativeHandle(InteropHandle handle, const ITextureResource::Desc &srcDesc, ITextureResource **outResource)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createMutableShaderObjectFromTypeLayout(slang::TypeLayoutReflection *typeLayout, IShaderObject **outObject)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createGraphicsPipelineState(const GraphicsPipelineStateDesc &desc, IPipelineState **outState)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createTextureView(ITextureResource *texture, IResourceView::Desc const &desc, IResourceView **outView)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createShaderObject2(slang::ISession *slangSession, slang::TypeReflection *type, ShaderObjectContainerType container, IShaderObject **outObject)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getSlangSession(slang::ISession **outSlangSession)=0
ComPtr< ISwapchain > createSwapchain(ISwapchain::Desc const &desc, WindowHandle window)
Definition slang-gfx.h:2641
ComPtr< ICommandQueue > createCommandQueue(const ICommandQueue::Desc &desc)
Definition slang-gfx.h:2687
virtual SLANG_NO_THROW Result SLANG_MCALL createFramebuffer(IFramebuffer::Desc const &desc, IFramebuffer **outFrameBuffer)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getTextureAllocationInfo(const ITextureResource::Desc &desc, Size *outSize, Size *outAlignment)=0
ComPtr< IRenderPassLayout > createRenderPassLayout(const IRenderPassLayout::Desc &desc)
Definition slang-gfx.h:2630
virtual SLANG_NO_THROW Result SLANG_MCALL waitForFences(GfxCount fenceCount, IFence **fences, uint64_t *values, bool waitForAll, uint64_t timeout)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createInputLayout(IInputLayout::Desc const &desc, IInputLayout **outLayout)=0
ComPtr< IResourceView > createBufferView(IBufferResource *buffer, IBufferResource *counterBuffer, IResourceView::Desc const &desc)
Definition slang-gfx.h:2598
virtual SLANG_NO_THROW Result SLANG_MCALL createFramebufferLayout(IFramebufferLayout::Desc const &desc, IFramebufferLayout **outFrameBuffer)=0
ComPtr< IResourceView > createTextureView(ITextureResource *texture, IResourceView::Desc const &desc)
Definition slang-gfx.h:2583
virtual SLANG_NO_THROW Result SLANG_MCALL createTextureFromSharedHandle(InteropHandle handle, const ITextureResource::Desc &srcDesc, const Size size, ITextureResource **outResource)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createQueryPool(const IQueryPool::Desc &desc, IQueryPool **outPool)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createAccelerationStructure(const IAccelerationStructure::CreateDesc &desc, IAccelerationStructure **outView)=0
ComPtr< ISamplerState > createSamplerState(ISamplerState::Desc const &desc)
Definition slang-gfx.h:2571
virtual SLANG_NO_THROW Result SLANG_MCALL createShaderObjectFromTypeLayout(slang::TypeLayoutReflection *typeLayout, IShaderObject **outObject)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeDeviceHandles(InteropHandles *outHandles)=0
SLANG_NO_THROW ComPtr< ITextureResource > createTextureResource(const ITextureResource::Desc &desc, const ITextureResource::SubresourceData *initData=nullptr)
Definition slang-gfx.h:2523
SLANG_NO_THROW ComPtr< IBufferResource > createBufferResource(const IBufferResource::Desc &desc, const void *initData=nullptr)
Definition slang-gfx.h:2549
virtual SLANG_NO_THROW Result SLANG_MCALL createCommandQueue(const ICommandQueue::Desc &desc, ICommandQueue **outQueue)=0
ComPtr< IShaderObject > createShaderObject(slang::TypeReflection *type)
Definition slang-gfx.h:2699
virtual SLANG_NO_THROW Result SLANG_MCALL createMutableRootShaderObject(IShaderProgram *program, IShaderObject **outObject)=0
ComPtr< IInputLayout > createInputLayout(Size vertexSize, InputElementDesc const *inputElements, GfxCount inputElementCount)
Definition slang-gfx.h:2674
virtual SLANG_NO_THROW Result SLANG_MCALL createBufferFromNativeHandle(InteropHandle handle, const IBufferResource::Desc &srcDesc, IBufferResource **outResource)=0
ComPtr< slang::ISession > getSlangSession()
Definition slang-gfx.h:2484
virtual SLANG_NO_THROW Result SLANG_MCALL createBufferResource(const IBufferResource::Desc &desc, const void *initData, IBufferResource **outResource)=0
Create a buffer resource
ComPtr< IInputLayout > createInputLayout(IInputLayout::Desc const &desc)
Definition slang-gfx.h:2651
virtual SLANG_NO_THROW Result SLANG_MCALL createMutableShaderObject2(slang::ISession *slangSession, slang::TypeReflection *type, ShaderObjectContainerType container, IShaderObject **outObject)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createTextureResource(const ITextureResource::Desc &desc, const ITextureResource::SubresourceData *initData, ITextureResource **outResource)=0
ComPtr< IFramebuffer > createFramebuffer(IFramebuffer::Desc const &desc)
Definition slang-gfx.h:2620
ComPtr< IPipelineState > createComputePipelineState(const ComputePipelineStateDesc &desc)
Definition slang-gfx.h:2757
virtual SLANG_NO_THROW Result SLANG_MCALL createFence(const IFence::Desc &desc, IFence **outFence)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createSwapchain(ISwapchain::Desc const &desc, WindowHandle window, ISwapchain **outSwapchain)=0
Definition slang-gfx.h:1123
virtual SLANG_NO_THROW Result SLANG_MCALL getCurrentValue(uint64_t *outValue)=0
Returns the currently signaled value on the device.
virtual SLANG_NO_THROW Result SLANG_MCALL getSharedHandle(InteropHandle *outHandle)=0
virtual SLANG_NO_THROW Result SLANG_MCALL setCurrentValue(uint64_t value)=0
Signals the fence from the host with the specified value.
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeHandle(InteropHandle *outNativeHandle)=0
Definition slang-gfx.h:1539
Definition slang-gfx.h:1397
Definition slang-gfx.h:2866
virtual SLANG_NO_THROW Result SLANG_MCALL afterCreateRayTracingState(IDevice *device, slang::IComponentType *program)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createComputePipelineState(IDevice *device, slang::IComponentType *program, void *pipelineDesc, void **outPipelineState)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createGraphicsPipelineState(IDevice *device, slang::IComponentType *program, void *pipelineDesc, void **outPipelineState)=0
virtual SLANG_NO_THROW Result SLANG_MCALL beforeCreateRayTracingState(IDevice *device, slang::IComponentType *program)=0
virtual SLANG_NO_THROW Result SLANG_MCALL createMeshPipelineState(IDevice *device, slang::IComponentType *program, void *pipelineDesc, void **outPipelineState)=0
Definition slang-gfx.h:1507
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeHandle(InteropHandle *outHandle)=0
Definition slang-gfx.h:1649
virtual SLANG_NO_THROW Result SLANG_MCALL reset()=0
virtual SLANG_NO_THROW Result SLANG_MCALL getResult(GfxIndex queryIndex, GfxCount count, uint64_t *data)=0
Definition slang-gfx.h:1989
virtual SLANG_NO_THROW Result SLANG_MCALL dispatchRays(GfxIndex rayGenShaderIndex, IShaderTable *shaderTable, GfxCount width, GfxCount height, GfxCount depth)=0
virtual SLANG_NO_THROW Result SLANG_MCALL bindPipeline(IPipelineState *state, IShaderObject **outRootObject)=0
virtual SLANG_NO_THROW void SLANG_MCALL queryAccelerationStructureProperties(GfxCount accelerationStructureCount, IAccelerationStructure *const *accelerationStructures, GfxCount queryCount, AccelerationStructureQueryDesc *queryDescs)=0
virtual SLANG_NO_THROW void SLANG_MCALL serializeAccelerationStructure(DeviceAddress dest, IAccelerationStructure *source)=0
virtual SLANG_NO_THROW Result SLANG_MCALL bindPipelineWithRootObject(IPipelineState *state, IShaderObject *rootObject)=0
virtual SLANG_NO_THROW void SLANG_MCALL deserializeAccelerationStructure(IAccelerationStructure *dest, DeviceAddress source)=0
virtual SLANG_COM_INTERFACE(0x9a672b87, 0x5035, 0x45e3, {0x96, 0x7c, 0x1f, 0x85, 0xcd, 0xb3, 0x63, 0x4f}) public SLANG_NO_THROW void SLANG_MCALL copyAccelerationStructure(IAccelerationStructure *dest, IAccelerationStructure *src, AccelerationStructureCopyMode mode)=0
Definition slang-gfx.h:1853
virtual SLANG_NO_THROW void SLANG_MCALL setStencilReference(uint32_t referenceValue)=0
virtual SLANG_NO_THROW void SLANG_MCALL setVertexBuffers(GfxIndex startSlot, GfxCount slotCount, IBufferResource *const *buffers, const Offset *offsets)=0
void setViewportAndScissor(Viewport const &viewport)
Sets the viewport, and sets the scissor rect to match the viewport.
Definition slang-gfx.h:1885
virtual SLANG_NO_THROW void SLANG_MCALL setPrimitiveTopology(PrimitiveTopology topology)=0
virtual SLANG_NO_THROW Result SLANG_MCALL draw(GfxCount vertexCount, GfxIndex startVertex=0)=0
virtual SLANG_NO_THROW Result SLANG_MCALL drawInstanced(GfxCount vertexCount, GfxCount instanceCount, GfxIndex startVertex, GfxIndex startInstanceLocation)=0
void setVertexBuffer(GfxIndex slot, IBufferResource *buffer, Offset offset=0)
Definition slang-gfx.h:1900
virtual SLANG_NO_THROW Result SLANG_MCALL drawIndexedInstanced(GfxCount indexCount, GfxCount instanceCount, GfxIndex startIndexLocation, GfxIndex baseVertexLocation, GfxIndex startInstanceLocation)=0
virtual SLANG_NO_THROW Result SLANG_MCALL drawMeshTasks(int x, int y, int z)=0
SLANG_COM_INTERFACE(0x7a8d56d0, 0x53e6, 0x4ad6, {0x85, 0xf7, 0xd1, 0x4d, 0xc1, 0x10, 0xfd, 0xce}) public IShaderObject * bindPipeline(IPipelineState *state)
Definition slang-gfx.h:1868
virtual SLANG_NO_THROW void SLANG_MCALL setScissorRects(GfxCount count, const ScissorRect *scissors)=0
virtual SLANG_NO_THROW Result SLANG_MCALL drawIndexed(GfxCount indexCount, GfxIndex startIndex=0, GfxIndex baseVertex=0)=0
virtual SLANG_NO_THROW Result SLANG_MCALL setSamplePositions(GfxCount samplesPerPixel, GfxCount pixelCount, const SamplePosition *samplePositions)=0
virtual SLANG_NO_THROW void SLANG_MCALL setIndexBuffer(IBufferResource *buffer, Format indexFormat, Offset offset=0)=0
virtual SLANG_NO_THROW Result SLANG_MCALL bindPipelineWithRootObject(IPipelineState *state, IShaderObject *rootObject)=0
virtual SLANG_NO_THROW void SLANG_MCALL setViewports(GfxCount count, const Viewport *viewports)=0
virtual SLANG_NO_THROW Result SLANG_MCALL drawIndirect(GfxCount maxDrawCount, IBufferResource *argBuffer, Offset argOffset, IBufferResource *countBuffer=nullptr, Offset countOffset=0)=0
virtual SLANG_NO_THROW Result SLANG_MCALL drawIndexedIndirect(GfxCount maxDrawCount, IBufferResource *argBuffer, Offset argOffset, IBufferResource *countBuffer=nullptr, Offset countOffset=0)=0
Definition slang-gfx.h:1602
TargetStoreOp
Definition slang-gfx.h:1611
TargetLoadOp
Definition slang-gfx.h:1605
Definition slang-gfx.h:1757
virtual SLANG_NO_THROW void SLANG_MCALL copyTexture(ITextureResource *dst, ResourceState dstState, SubresourceRange dstSubresource, ITextureResource::Offset3D dstOffset, ITextureResource *src, ResourceState srcState, SubresourceRange srcSubresource, ITextureResource::Offset3D srcOffset, ITextureResource::Extents extent)=0
virtual SLANG_NO_THROW void SLANG_MCALL resolveQuery(IQueryPool *queryPool, GfxIndex index, GfxCount count, IBufferResource *buffer, Offset offset)=0
virtual SLANG_NO_THROW void SLANG_MCALL uploadBufferData(IBufferResource *dst, Offset offset, Size size, void *data)=0
SLANG_COM_INTERFACE(0xf99a00e9, 0xed50, 0x4088, {0x8a, 0xe, 0x3b, 0x26, 0x75, 0x50, 0x31, 0xea})
virtual SLANG_NO_THROW void SLANG_MCALL uploadTextureData(ITextureResource *dst, SubresourceRange subResourceRange, ITextureResource::Offset3D offset, ITextureResource::Extents extent, ITextureResource::SubresourceData *subResourceData, GfxCount subResourceDataCount)=0
virtual SLANG_NO_THROW void SLANG_MCALL clearResourceView(IResourceView *view, ClearValue *clearValue, ClearResourceViewFlags::Enum flags)=0
virtual SLANG_NO_THROW void SLANG_MCALL textureSubresourceBarrier(ITextureResource *texture, SubresourceRange subresourceRange, ResourceState src, ResourceState dst)=0
virtual SLANG_NO_THROW void SLANG_MCALL textureBarrier(GfxCount count, ITextureResource *const *textures, ResourceState src, ResourceState dst)=0
virtual SLANG_NO_THROW void SLANG_MCALL copyBuffer(IBufferResource *dst, Offset dstOffset, IBufferResource *src, Offset srcOffset, Size size)=0
virtual SLANG_NO_THROW void SLANG_MCALL endDebugEvent()=0
virtual SLANG_NO_THROW void SLANG_MCALL resolveResource(ITextureResource *source, ResourceState sourceState, SubresourceRange sourceRange, ITextureResource *dest, ResourceState destState, SubresourceRange destRange)=0
virtual SLANG_NO_THROW void SLANG_MCALL beginDebugEvent(const char *name, float rgbColor[3])=0
void bufferBarrier(IBufferResource *buffer, ResourceState src, ResourceState dst)
Definition slang-gfx.h:1846
virtual SLANG_NO_THROW void SLANG_MCALL copyTextureToBuffer(IBufferResource *dst, Offset dstOffset, Size dstSize, Size dstRowStride, ITextureResource *src, ResourceState srcState, SubresourceRange srcSubresource, ITextureResource::Offset3D srcOffset, ITextureResource::Extents extent)=0
Copies texture to a buffer. Each row is aligned to kTexturePitchAlignment.
virtual SLANG_NO_THROW void SLANG_MCALL bufferBarrier(GfxCount count, IBufferResource *const *buffers, ResourceState src, ResourceState dst)=0
void textureBarrier(ITextureResource *texture, ResourceState src, ResourceState dst)
Definition slang-gfx.h:1842
Definition slang-gfx.h:623
virtual SLANG_NO_THROW Result SLANG_MCALL setDebugName(const char *name)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getSharedHandle(InteropHandle *outHandle)=0
virtual SLANG_NO_THROW Type SLANG_MCALL getType()=0
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeResourceHandle(InteropHandle *outHandle)=0
Type
Definition slang-gfx.h:629
@ TextureCube
A cubemap consists of 6 Texture2D like faces
@ Buffer
A buffer (like a constant/index/vertex buffer)
virtual SLANG_NO_THROW const char *SLANG_MCALL getDebugName()=0
Definition slang-gfx.h:906
virtual SLANG_NO_THROW Desc *SLANG_MCALL getViewDesc()=0
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeHandle(InteropHandle *outNativeHandle)=0
Type
Definition slang-gfx.h:909
Definition slang-gfx.h:873
virtual SLANG_NO_THROW Result SLANG_MCALL getNativeHandle(InteropHandle *outNativeHandle)=0
Definition slang-gfx.h:2850
virtual SLANG_NO_THROW Result SLANG_MCALL resetShaderCacheStats()=0
virtual SLANG_NO_THROW Result SLANG_MCALL clearShaderCache()=0
virtual SLANG_NO_THROW Result SLANG_MCALL getShaderCacheStats(ShaderCacheStats *outStats)=0
Definition slang-gfx.h:1189
virtual SLANG_NO_THROW const void *SLANG_MCALL getRawData()=0
virtual SLANG_NO_THROW Result SLANG_MCALL setData(ShaderOffset const &offset, void const *data, Size size)=0
virtual SLANG_NO_THROW Result SLANG_MCALL setResource(ShaderOffset const &offset, IResourceView *resourceView)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getCurrentVersion(ITransientResourceHeap *transientHeap, IShaderObject **outObject)=0
virtual SLANG_NO_THROW GfxCount SLANG_MCALL getEntryPointCount()=0
ComPtr< IShaderObject > getEntryPoint(GfxIndex index)
Definition slang-gfx.h:1237
virtual SLANG_NO_THROW Size SLANG_MCALL getSize()=0
virtual SLANG_NO_THROW Result SLANG_MCALL setObject(ShaderOffset const &offset, IShaderObject *object)=0
virtual SLANG_NO_THROW Result SLANG_MCALL setSpecializationArgs(ShaderOffset const &offset, const slang::SpecializationArg *args, GfxCount count)=0
virtual SLANG_NO_THROW Result SLANG_MCALL getEntryPoint(GfxIndex index, IShaderObject **entryPoint)=0
virtual SLANG_NO_THROW slang::TypeLayoutReflection *SLANG_MCALL getElementTypeLayout()=0
virtual SLANG_NO_THROW Result SLANG_MCALL setSampler(ShaderOffset const &offset, ISamplerState *sampler)=0
ComPtr< IShaderObject > getObject(ShaderOffset const &offset)
Definition slang-gfx.h:1231
virtual SLANG_NO_THROW Result SLANG_MCALL getObject(ShaderOffset const &offset, IShaderObject **object)=0
virtual SLANG_NO_THROW Result SLANG_MCALL setConstantBufferOverride(IBufferResource *constantBuffer)=0
Use the provided constant buffer instead of the internally created one.
virtual SLANG_NO_THROW ShaderObjectContainerType SLANG_MCALL getContainerType()=0
virtual SLANG_NO_THROW Result SLANG_MCALL setCombinedTextureSampler(ShaderOffset const &offset, IResourceView *textureView, ISamplerState *sampler)=0
Definition slang-gfx.h:152
DownstreamLinkMode
Definition slang-gfx.h:167
LinkingStyle
Definition slang-gfx.h:156
@ SeparateEntryPointCompilation
virtual SLANG_NO_THROW slang::TypeReflection *SLANG_MCALL findTypeByName(const char *name)=0
Definition slang-gfx.h:1467
Definition slang-gfx.h:2228
virtual SLANG_NO_THROW const Desc &SLANG_MCALL getDesc()=0
virtual SLANG_NO_THROW Result SLANG_MCALL present()=0
Present the next image in the swapchain.
virtual SLANG_NO_THROW Result SLANG_MCALL setFullScreenMode(bool mode)=0
virtual SLANG_NO_THROW Result SLANG_MCALL resize(GfxCount width, GfxCount height)=0
virtual SLANG_NO_THROW int SLANG_MCALL acquireNextImage()=0
virtual SLANG_NO_THROW Result SLANG_MCALL getImage(GfxIndex index, ITextureResource **outResource)=0
Returns the back buffer image at index.
virtual SLANG_NO_THROW bool SLANG_MCALL isOccluded()=0
Definition slang-gfx.h:741
static const GfxCount kRemainingTextureSize
Definition slang-gfx.h:743
virtual SLANG_NO_THROW Desc *SLANG_MCALL getDesc()=0
Definition slang-gfx.h:2206
DescriptorType
Definition slang-gfx.h:2209
virtual SLANG_NO_THROW Result SLANG_MCALL allocateTransientDescriptorTable(DescriptorType type, GfxCount count, Offset &outDescriptorOffset, void **outD3DDescriptorHeapHandle)=0
Definition slang-gfx.h:2152
virtual SLANG_NO_THROW Result SLANG_MCALL synchronizeAndReset()=0
virtual SLANG_NO_THROW Result SLANG_MCALL finish()=0
ComPtr< ICommandBuffer > createCommandBuffer()
Definition slang-gfx.h:2190
virtual SLANG_NO_THROW Result SLANG_MCALL createCommandBuffer(ICommandBuffer **outCommandBuffer)=0
Definition slang-com-ptr.h:10
uint8_t Type
Definition slang-gfx.h:1359
@ EnableGreen
Definition slang-gfx.h:1364
@ EnableAll
Definition slang-gfx.h:1367
@ EnableRed
Definition slang-gfx.h:1363
@ EnableBlue
Definition slang-gfx.h:1365
@ EnableNone
Definition slang-gfx.h:1362
@ EnableAlpha
Definition slang-gfx.h:1366
Definition slang-gfx.h:43
SlangInt Int
Definition slang-gfx.h:50
InputSlotClass
Definition slang-gfx.h:469
const uint64_t kTimeoutInfinite
Definition slang-gfx.h:58
TextureAddressingMode
Definition slang-gfx.h:856
PrimitiveTopology
Definition slang-gfx.h:501
SLANG_GFX_API SlangResult SLANG_MCALL gfxReportLiveObjects()
uint64_t DeviceAddress
Definition slang-gfx.h:52
ProjectionStyle
Definition slang-gfx.h:107
SLANG_GFX_API SlangResult SLANG_MCALL gfxGetFormatInfo(Format format, FormatInfo *outInfo)
Gets information about the format
SLANG_GFX_API SlangResult SLANG_MCALL gfxSetDebugCallback(IDebugCallback *callback)
MemoryType
Describes how memory for the resource should be allocated for CPU access.
Definition slang-gfx.h:577
size_t Size
Definition slang-gfx.h:55
AccelerationStructureCopyMode
Definition slang-gfx.h:1974
ResourceState
Definition slang-gfx.h:510
@ AccelerationStructureBuildInput
BindingStyle
The style of the binding
Definition slang-gfx.h:119
int GfxCount
Definition slang-gfx.h:54
DebugMessageSource
Definition slang-gfx.h:2392
PrimitiveType
Definition slang-gfx.h:493
DeviceType
Definition slang-gfx.h:91
const GfxCount kMaxRenderTargetCount
Definition slang-gfx.h:139
SLANG_GFX_API const char *SLANG_MCALL gfxGetDeviceTypeName(DeviceType type)
FillMode
Definition slang-gfx.h:1265
SlangUInt UInt
Definition slang-gfx.h:51
RenderTargetWriteMask::Type RenderTargetWriteMaskT
Definition slang-gfx.h:1370
BlendFactor
Definition slang-gfx.h:1337
TextureAspect
Definition slang-gfx.h:718
int GfxIndex
Definition slang-gfx.h:53
SLANG_GFX_API SlangResult SLANG_MCALL gfxCreateDevice(const IDevice::Desc *desc, IDevice **outDevice)
Given a type returns a function that can construct it, or nullptr if there isn't one
TextureFilteringMode
Definition slang-gfx.h:850
TextureReductionOp
Definition slang-gfx.h:865
AccessFlag
Definition slang-gfx.h:132
ShaderObjectContainerType
Definition slang-gfx.h:1182
size_t Offset
Definition slang-gfx.h:56
SLANG_GFX_API bool SLANG_MCALL gfxIsTypelessFormat(Format format)
Checks if format is typeless
SLANG_GFX_API SlangResult SLANG_MCALL gfxGetAdapters(DeviceType type, ISlangBlob **outAdaptersBlob)
Gets a list of available adapters for a given device type
CullMode
Definition slang-gfx.h:1271
FrontFaceMode
Definition slang-gfx.h:1278
StencilOp
Definition slang-gfx.h:1253
StructType
Definition slang-gfx.h:61
@ RayTracingValidationDesc
@ SlangSessionExtendedDesc
@ D3D12ExperimentalFeaturesDesc
@ D3D12DeviceExtendedDesc
DebugMessageType
Definition slang-gfx.h:2386
InteropHandleAPI
Definition slang-gfx.h:584
@ D3D12CpuDescriptorHandle
BlendOp
Definition slang-gfx.h:1328
SlangResult Result
Definition slang-gfx.h:47
Format
Definition slang-gfx.h:336
SLANG_GFX_API bool SLANG_MCALL gfxIsCompressedFormat(Format format)
Checks if format is compressed
CooperativeVectorComponentType
Definition slang-gfx.h:1727
StageType
Definition slang-gfx.h:70
QueryType
Definition slang-gfx.h:1641
@ AccelerationStructureCompactedSize
@ AccelerationStructureSerializedSize
@ AccelerationStructureCurrentSize
LogicOp
Definition slang-gfx.h:1323
ComparisonFunc
Definition slang-gfx.h:838
ShaderModuleSourceType
Definition slang-gfx.h:144
SLANG_GFX_API void SLANG_MCALL gfxEnableDebugLayer(bool enable)
int32_t SlangResult
Definition slang-cpp-prelude.h:300
#define SLANG_NO_THROW
Definition slang-cpp-prelude.h:268
#define SLANG_MCALL
Definition slang-cpp-prelude.h:282
#define SLANG_COM_INTERFACE(a, b, c, d0, d1, d2, d3, d4, d5, d6, d7)
Definition slang-cpp-prelude.h:310
#define SLANG_GFX_API
Definition slang-gfx.h:27
__INTPTR_TYPE__ intptr_t
Definition slang-llvm.h:146
int32_t SlangInt
Definition slang.h:559
unsigned int SlangTargetFlags
Flags to control code generation behavior of a compilation target
Definition slang.h:733
SlangLineDirectiveMode
Definition slang.h:786
@ SLANG_LINE_DIRECTIVE_MODE_DEFAULT
Definition slang.h:787
SlangMatrixLayoutMode
Definition slang.h:829
@ SLANG_MATRIX_LAYOUT_ROW_MAJOR
Definition slang.h:831
uint32_t SlangUInt
Definition slang.h:560
SlangOptimizationLevel
Definition slang.h:918
@ SLANG_OPTIMIZATION_LEVEL_DEFAULT
Definition slang.h:920
SlangFloatingPointMode
Definition slang.h:764
@ SLANG_FLOATING_POINT_MODE_DEFAULT
Definition slang.h:765
constexpr SlangTargetFlags kDefaultTargetFlags
Definition slang.h:756
virtual SLANG_NO_THROW size_t SLANG_MCALL getBufferSize()=0
Definition slang-cpp-prelude.h:303
void ** outObject
Definition slang.h:1406
Definition slang-cpp-types.h:61
Definition slang-gfx.h:1980
GfxIndex firstQueryIndex
Definition slang-gfx.h:1985
IQueryPool * queryPool
Definition slang-gfx.h:1983
QueryType queryType
Definition slang-gfx.h:1981
Definition slang-gfx.h:2284
AdapterLUID luid
Definition slang-gfx.h:2296
char name[128]
Definition slang-gfx.h:2286
uint32_t deviceID
Definition slang-gfx.h:2293
uint32_t vendorID
Definition slang-gfx.h:2289
Definition slang-gfx.h:2270
uint8_t luid[16]
Definition slang-gfx.h:2271
bool operator==(const AdapterLUID &other) const
Definition slang-gfx.h:2273
bool operator!=(const AdapterLUID &other) const
Definition slang-gfx.h:2280
Definition slang-gfx.h:1373
BlendOp op
Definition slang-gfx.h:1376
BlendFactor dstFactor
Definition slang-gfx.h:1375
BlendFactor srcFactor
Definition slang-gfx.h:1374
Definition slang-gfx.h:1389
TargetBlendDesc targets[kMaxRenderTargetCount]
Definition slang-gfx.h:1390
GfxCount targetCount
Definition slang-gfx.h:1391
bool alphaToCoverageEnable
Definition slang-gfx.h:1393
Definition slang-gfx.h:712
Size size
Size in bytes.
Definition slang-gfx.h:714
Offset offset
Offset in bytes.
Definition slang-gfx.h:713
Definition slang-gfx.h:1716
Enum
Definition slang-gfx.h:1718
@ ClearDepth
Definition slang-gfx.h:1720
@ ClearStencil
Definition slang-gfx.h:1721
@ None
Definition slang-gfx.h:1719
@ FloatClearValues
Definition slang-gfx.h:1722
Definition slang-gfx.h:706
DepthStencilClearValue depthStencil
Definition slang-gfx.h:708
ColorClearValue color
Definition slang-gfx.h:707
Definition slang-gfx.h:1432
IShaderProgram * program
Definition slang-gfx.h:1433
void * d3d12RootSignatureOverride
Definition slang-gfx.h:1434
Definition slang-gfx.h:1746
CooperativeVectorComponentType matrixInterpretation
Definition slang-gfx.h:1749
bool transpose
Definition slang-gfx.h:1752
CooperativeVectorComponentType resultType
Definition slang-gfx.h:1751
CooperativeVectorComponentType inputInterpretation
Definition slang-gfx.h:1748
CooperativeVectorComponentType inputType
Definition slang-gfx.h:1747
CooperativeVectorComponentType biasInterpretation
Definition slang-gfx.h:1750
Definition slang-gfx.h:2960
const char * rootParameterShaderAttributeName
Definition slang-gfx.h:2962
StructType structType
Definition slang-gfx.h:2961
bool debugBreakOnD3D12Error
Definition slang-gfx.h:2963
uint32_t highestShaderModel
Definition slang-gfx.h:2964
Definition slang-gfx.h:2951
void * configurationStructs
Definition slang-gfx.h:2955
uint32_t * configurationStructSizes
Definition slang-gfx.h:2956
uint32_t numFeatures
Definition slang-gfx.h:2953
const void * featureIIDs
Definition slang-gfx.h:2954
StructType structType
Definition slang-gfx.h:2952
Definition slang-gfx.h:696
uint32_t stencil
Definition slang-gfx.h:698
float depth
Definition slang-gfx.h:697
Definition slang-gfx.h:1292
DepthStencilOpDesc frontFace
Definition slang-gfx.h:1300
uint32_t stencilWriteMask
Definition slang-gfx.h:1299
uint32_t stencilRef
Definition slang-gfx.h:1303
DepthStencilOpDesc backFace
Definition slang-gfx.h:1301
bool stencilEnable
Definition slang-gfx.h:1297
ComparisonFunc depthFunc
Definition slang-gfx.h:1295
uint32_t stencilReadMask
Definition slang-gfx.h:1298
bool depthTestEnable
Definition slang-gfx.h:1293
bool depthWriteEnable
Definition slang-gfx.h:1294
Definition slang-gfx.h:1284
StencilOp stencilDepthFailOp
Definition slang-gfx.h:1286
ComparisonFunc stencilFunc
Definition slang-gfx.h:1288
StencilOp stencilFailOp
Definition slang-gfx.h:1285
StencilOp stencilPassOp
Definition slang-gfx.h:1287
Definition slang-gfx.h:2362
DeviceLimits limits
Definition slang-gfx.h:2365
float identityProjectionMatrix[16]
Definition slang-gfx.h:2373
DeviceType deviceType
Definition slang-gfx.h:2363
const char * adapterName
The name of the graphics adapter.
Definition slang-gfx.h:2379
uint64_t timestampFrequency
The clock frequency used in timestamp queries.
Definition slang-gfx.h:2382
ProjectionStyle projectionStyle
Definition slang-gfx.h:2369
BindingStyle bindingStyle
Definition slang-gfx.h:2367
const char * apiName
The name of the graphics API being used by this device.
Definition slang-gfx.h:2376
Definition slang-gfx.h:2322
uint32_t maxTextureDimensionCube
Maximum dimensions for cube textures.
Definition slang-gfx.h:2330
uint32_t maxTextureDimension3D
Maximum dimensions for 3D textures.
Definition slang-gfx.h:2328
uint32_t maxShaderVisibleSamplers
Maximum samplers visible in a shader stage.
Definition slang-gfx.h:2358
uint32_t maxVertexInputElements
Maximum number of vertex input elements in a graphics pipeline.
Definition slang-gfx.h:2335
uint32_t maxFramebufferDimensions[3]
Maximum framebuffer dimensions.
Definition slang-gfx.h:2355
uint32_t maxComputeThreadGroupSize[3]
Maximum dimensions of a thread group.
Definition slang-gfx.h:2346
uint32_t maxVertexStreamStride
Maximum stride of a vertex stream.
Definition slang-gfx.h:2341
uint32_t maxComputeDispatchThreadGroups[3]
Maximum number of thread groups per dimension in a single dispatch.
Definition slang-gfx.h:2348
uint32_t maxVertexStreams
Maximum number of vertex streams in a graphics pipeline.
Definition slang-gfx.h:2339
uint32_t maxComputeThreadsPerGroup
Maximum number of threads per thread group.
Definition slang-gfx.h:2344
uint32_t maxViewportDimensions[2]
Maximum viewport dimensions.
Definition slang-gfx.h:2353
uint32_t maxTextureArrayLayers
Maximum number of texture layers.
Definition slang-gfx.h:2332
uint32_t maxVertexInputElementOffset
Maximum offset of a vertex input element in the vertex stream.
Definition slang-gfx.h:2337
uint32_t maxTextureDimension2D
Maximum dimensions for 2D textures.
Definition slang-gfx.h:2326
uint32_t maxTextureDimension1D
Maximum dimension for 1D textures.
Definition slang-gfx.h:2324
uint32_t maxViewports
Maximum number of viewports per pipeline.
Definition slang-gfx.h:2351
Definition slang-gfx.h:1593
Enum
Definition slang-gfx.h:1595
@ Front
Definition slang-gfx.h:1596
@ Back
Definition slang-gfx.h:1597
Definition slang-gfx.h:1420
IInputLayout * inputLayout
Definition slang-gfx.h:1423
DepthStencilDesc depthStencil
Definition slang-gfx.h:1426
IShaderProgram * program
Definition slang-gfx.h:1421
BlendDesc blend
Definition slang-gfx.h:1428
PrimitiveType primitiveType
Definition slang-gfx.h:1425
IFramebufferLayout * framebufferLayout
Definition slang-gfx.h:1424
RasterizerDesc rasterizer
Definition slang-gfx.h:1427
Definition slang-gfx.h:1448
const char * anyHitEntryPoint
Definition slang-gfx.h:1451
const char * intersectionEntryPoint
Definition slang-gfx.h:1452
const char * hitGroupName
Definition slang-gfx.h:1449
const char * closestHitEntryPoint
Definition slang-gfx.h:1450
Definition slang-gfx.h:1105
IAccelerationStructure * source
Definition slang-gfx.h:1107
DeviceAddress scratchData
Definition slang-gfx.h:1109
IAccelerationStructure * dest
Definition slang-gfx.h:1108
BuildInputs inputs
Definition slang-gfx.h:1106
Definition slang-gfx.h:967
Enum
Definition slang-gfx.h:971
@ AllowCompaction
Definition slang-gfx.h:974
@ AllowUpdate
Definition slang-gfx.h:973
@ PerformUpdate
Definition slang-gfx.h:978
@ PreferFastBuild
Definition slang-gfx.h:976
@ PreferFastTrace
Definition slang-gfx.h:975
@ MinimizeMemory
Definition slang-gfx.h:977
@ None
Definition slang-gfx.h:972
Definition slang-gfx.h:1097
Kind kind
Definition slang-gfx.h:1098
Offset offset
Definition slang-gfx.h:1100
Size size
Definition slang-gfx.h:1101
IBufferResource * buffer
Definition slang-gfx.h:1099
Definition slang-gfx.h:1035
TriangleDesc triangles
Definition slang-gfx.h:1040
union gfx::IAccelerationStructure::GeometryDesc::@2 content
ProceduralAABBDesc proceduralAABBs
Definition slang-gfx.h:1041
GeometryFlags::Enum flags
Definition slang-gfx.h:1037
GeometryType type
Definition slang-gfx.h:1036
Definition slang-gfx.h:989
Enum
Definition slang-gfx.h:993
@ None
Definition slang-gfx.h:994
@ NoDuplicateAnyHitInvocation
Definition slang-gfx.h:996
@ Opaque
Definition slang-gfx.h:995
Definition slang-gfx.h:1046
Enum
Definition slang-gfx.h:1050
@ ForceOpaque
Definition slang-gfx.h:1054
@ NoOpaque
Definition slang-gfx.h:1055
@ TriangleFacingCullDisable
Definition slang-gfx.h:1052
@ None
Definition slang-gfx.h:1051
@ TriangleFrontCounterClockwise
Definition slang-gfx.h:1053
Definition slang-gfx.h:1063
uint32_t flags
Definition slang-gfx.h:1068
float transform[3][4]
Definition slang-gfx.h:1064
uint32_t instanceContributionToHitGroupIndex
Definition slang-gfx.h:1067
uint32_t instanceID
Definition slang-gfx.h:1065
uint32_t instanceMask
Definition slang-gfx.h:1066
DeviceAddress accelerationStructure
Definition slang-gfx.h:1069
Definition slang-gfx.h:1073
Size updateScratchDataSize
Definition slang-gfx.h:1076
Size scratchDataSize
Definition slang-gfx.h:1075
Size resultDataMaxSize
Definition slang-gfx.h:1074
Definition slang-gfx.h:1023
DeviceAddress data
Pointer to an array of ProceduralAABB values in device memory.
Definition slang-gfx.h:1028
GfxCount count
Number of AABBs.
Definition slang-gfx.h:1025
Size stride
Stride in bytes of the AABB values array.
Definition slang-gfx.h:1031
Definition slang-gfx.h:1013
float minY
Definition slang-gfx.h:1015
float maxY
Definition slang-gfx.h:1018
float minZ
Definition slang-gfx.h:1016
float minX
Definition slang-gfx.h:1014
float maxZ
Definition slang-gfx.h:1019
float maxX
Definition slang-gfx.h:1017
Definition slang-gfx.h:1001
DeviceAddress transform3x4
Definition slang-gfx.h:1002
DeviceAddress vertexData
Definition slang-gfx.h:1008
Format vertexFormat
Definition slang-gfx.h:1004
DeviceAddress indexData
Definition slang-gfx.h:1007
Size vertexStride
Definition slang-gfx.h:1009
GfxCount indexCount
Definition slang-gfx.h:1005
GfxCount vertexCount
Definition slang-gfx.h:1006
Format indexFormat
Definition slang-gfx.h:1003
Definition slang-gfx.h:676
Format format
Definition slang-gfx.h:679
Size sizeInBytes
Total size in bytes
Definition slang-gfx.h:677
Size elementSize
Get the element stride. If > 0, this is a structured buffer
Definition slang-gfx.h:678
Definition slang-gfx.h:2113
QueueType type
Definition slang-gfx.h:2114
Definition slang-gfx.h:2442
InteropHandles existingDeviceHandles
Definition slang-gfx.h:2449
const char ** requiredFeatures
Definition slang-gfx.h:2455
DeviceType deviceType
Definition slang-gfx.h:2444
ISlangUnknown * apiCommandDispatcher
Definition slang-gfx.h:2457
GfxCount extendedDescCount
Definition slang-gfx.h:2465
GfxCount requiredFeatureCount
Definition slang-gfx.h:2453
void ** extendedDescs
Definition slang-gfx.h:2466
const AdapterLUID * adapterLUID
Definition slang-gfx.h:2451
ShaderCacheDesc shaderCache
Definition slang-gfx.h:2461
GfxIndex nvapiExtnSlot
Definition slang-gfx.h:2459
Definition slang-gfx.h:2437
InteropHandle handles[3]
Definition slang-gfx.h:2438
Definition slang-gfx.h:2429
const char * shaderCachePath
Definition slang-gfx.h:2431
GfxCount maxEntryCount
Definition slang-gfx.h:2433
Definition slang-gfx.h:2408
SlangLineDirectiveMode lineDirectiveMode
Definition slang-gfx.h:2425
GfxCount preprocessorMacroCount
Definition slang-gfx.h:2418
char const *const * searchPaths
Definition slang-gfx.h:2414
SlangOptimizationLevel optimizationLevel
Definition slang-gfx.h:2423
SlangFloatingPointMode floatingPointMode
Definition slang-gfx.h:2422
slang::IGlobalSession * slangGlobalSession
Definition slang-gfx.h:2409
SlangMatrixLayoutMode defaultMatrixLayoutMode
Definition slang-gfx.h:2412
GfxCount searchPathCount
Definition slang-gfx.h:2415
slang::PreprocessorMacroDesc const * preprocessorMacros
Definition slang-gfx.h:2417
SlangTargetFlags targetFlags
Definition slang-gfx.h:2424
const char * targetProfile
Definition slang-gfx.h:2420
Definition slang-gfx.h:1126
uint64_t initialValue
Definition slang-gfx.h:1127
bool isShared
Definition slang-gfx.h:1128
Definition slang-gfx.h:1542
IResourceView * depthStencilView
Definition slang-gfx.h:1545
IFramebufferLayout * layout
Definition slang-gfx.h:1546
IResourceView *const * renderTargetViews
Definition slang-gfx.h:1544
GfxCount renderTargetCount
Definition slang-gfx.h:1543
Definition slang-gfx.h:1405
TargetLayout * renderTargets
Definition slang-gfx.h:1407
TargetLayout * depthStencil
Definition slang-gfx.h:1408
GfxCount renderTargetCount
Definition slang-gfx.h:1406
Definition slang-gfx.h:1400
GfxCount sampleCount
Definition slang-gfx.h:1402
Format format
Definition slang-gfx.h:1401
Definition slang-gfx.h:1652
GfxCount count
Definition slang-gfx.h:1654
QueryType type
Definition slang-gfx.h:1653
Definition slang-gfx.h:1625
TargetAccessDesc * depthStencilAccess
Definition slang-gfx.h:1629
IFramebufferLayout * framebufferLayout
Definition slang-gfx.h:1626
GfxCount renderTargetCount
Definition slang-gfx.h:1627
TargetAccessDesc * renderTargetAccess
Definition slang-gfx.h:1628
Definition slang-gfx.h:1616
ResourceState finalState
Definition slang-gfx.h:1622
TargetStoreOp storeOp
Definition slang-gfx.h:1619
ResourceState initialState
Definition slang-gfx.h:1621
TargetStoreOp stencilStoreOp
Definition slang-gfx.h:1620
TargetLoadOp stencilLoadOp
Definition slang-gfx.h:1618
TargetLoadOp loadOp
Definition slang-gfx.h:1617
Base class for Descs
Definition slang-gfx.h:641
Type type
Definition slang-gfx.h:642
bool isShared
Definition slang-gfx.h:647
ResourceStateSet allowedStates
Definition slang-gfx.h:644
ResourceState defaultState
Definition slang-gfx.h:643
MemoryType memoryType
Definition slang-gfx.h:645
InteropHandle existingHandle
Definition slang-gfx.h:646
Definition slang-gfx.h:928
Type type
Definition slang-gfx.h:929
BufferRange bufferRange
Definition slang-gfx.h:938
SubresourceRange subresourceRange
Definition slang-gfx.h:936
RenderTargetDesc renderTarget
Definition slang-gfx.h:933
Format format
Definition slang-gfx.h:930
Definition slang-gfx.h:922
IResource::Type shape
Definition slang-gfx.h:924
Definition slang-gfx.h:876
TextureAddressingMode addressU
Definition slang-gfx.h:881
float maxLOD
Definition slang-gfx.h:889
uint32_t maxAnisotropy
Definition slang-gfx.h:885
float mipLODBias
Definition slang-gfx.h:884
float minLOD
Definition slang-gfx.h:888
ComparisonFunc comparisonFunc
Definition slang-gfx.h:886
float borderColor[4]
Definition slang-gfx.h:887
TextureAddressingMode addressV
Definition slang-gfx.h:882
TextureAddressingMode addressW
Definition slang-gfx.h:883
TextureFilteringMode magFilter
Definition slang-gfx.h:878
TextureFilteringMode mipFilter
Definition slang-gfx.h:879
TextureReductionOp reductionOp
Definition slang-gfx.h:880
TextureFilteringMode minFilter
Definition slang-gfx.h:877
Definition slang-gfx.h:195
ShaderModuleSourceType sourceType
Definition slang-gfx.h:196
Size sourceDataSize
Definition slang-gfx.h:198
void * sourceData
Definition slang-gfx.h:197
GfxCount entryPointCount
Definition slang-gfx.h:202
const char ** entryPointNames
Definition slang-gfx.h:205
Definition slang-gfx.h:173
slang::IComponentType ** slangEntryPoints
Definition slang-gfx.h:188
slang::IComponentType * slangGlobalScope
Definition slang-gfx.h:179
GfxCount entryPointCount
Definition slang-gfx.h:184
LinkingStyle linkingStyle
Definition slang-gfx.h:176
DownstreamLinkMode downstreamLinkMode
Definition slang-gfx.h:191
Definition slang-gfx.h:1478
GfxCount rayGenShaderCount
Definition slang-gfx.h:1479
const ShaderRecordOverwrite * missShaderRecordOverwrites
Definition slang-gfx.h:1485
const char ** rayGenShaderEntryPointNames
Definition slang-gfx.h:1480
GfxCount callableShaderCount
Definition slang-gfx.h:1491
IShaderProgram * program
Definition slang-gfx.h:1495
GfxCount hitGroupCount
Definition slang-gfx.h:1487
GfxCount missShaderCount
Definition slang-gfx.h:1483
const ShaderRecordOverwrite * callableShaderRecordOverwrites
Definition slang-gfx.h:1493
const char ** callableShaderEntryPointNames
Definition slang-gfx.h:1492
const char ** missShaderEntryPointNames
Definition slang-gfx.h:1484
const char ** hitGroupNames
Definition slang-gfx.h:1488
const ShaderRecordOverwrite * rayGenShaderRecordOverwrites
Definition slang-gfx.h:1481
const ShaderRecordOverwrite * hitGroupRecordOverwrites
Definition slang-gfx.h:1489
Definition slang-gfx.h:1471
Offset offset
Definition slang-gfx.h:1472
uint8_t data[8]
Definition slang-gfx.h:1474
Size size
Definition slang-gfx.h:1473
Definition slang-gfx.h:2231
ICommandQueue * queue
Definition slang-gfx.h:2235
Format format
Definition slang-gfx.h:2232
GfxCount height
Definition slang-gfx.h:2233
bool enableVSync
Definition slang-gfx.h:2236
GfxCount imageCount
Definition slang-gfx.h:2234
GfxCount width
Definition slang-gfx.h:2233
Definition slang-gfx.h:770
GfxCount numMipLevels
Number of mip levels - if 0 will create all mip levels
Definition slang-gfx.h:775
Format format
The resources format
Definition slang-gfx.h:776
ClearValue * optimalClearValue
Definition slang-gfx.h:778
SampleDesc sampleDesc
How the resource is sampled
Definition slang-gfx.h:777
Extents size
Definition slang-gfx.h:771
GfxCount arraySize
Array size
Definition slang-gfx.h:773
Definition slang-gfx.h:763
GfxCount depth
Depth (if 3d)
Definition slang-gfx.h:766
GfxCount width
Width in pixels
Definition slang-gfx.h:764
GfxCount height
Height in pixels (if 2d or 3d)
Definition slang-gfx.h:765
Definition slang-gfx.h:745
GfxIndex z
Definition slang-gfx.h:748
GfxIndex y
Definition slang-gfx.h:747
Offset3D(GfxIndex _x, GfxIndex _y, GfxIndex _z)
Definition slang-gfx.h:750
GfxIndex x
Definition slang-gfx.h:746
Definition slang-gfx.h:757
GfxCount numSamples
Number of samples per pixel
Definition slang-gfx.h:758
int quality
The quality measure for the samples
Definition slang-gfx.h:759
Definition slang-gfx.h:801
gfx::Size strideZ
Definition slang-gfx.h:823
gfx::Size strideY
Definition slang-gfx.h:813
void const * data
Pointer to texel data for the subresource tensor.
Definition slang-gfx.h:803
Definition slang-gfx.h:2163
GfxCount accelerationStructureDescriptorCount
Definition slang-gfx.h:2170
Size constantBufferSize
Definition slang-gfx.h:2165
GfxCount uavDescriptorCount
Definition slang-gfx.h:2167
GfxCount srvDescriptorCount
Definition slang-gfx.h:2168
GfxCount constantBufferDescriptorCount
Definition slang-gfx.h:2169
Flags::Enum flags
Definition slang-gfx.h:2164
GfxCount samplerDescriptorCount
Definition slang-gfx.h:2166
Definition slang-gfx.h:2155
Enum
Definition slang-gfx.h:2157
@ AllowResizing
Definition slang-gfx.h:2159
@ None
Definition slang-gfx.h:2158
Definition slang-gfx.h:1686
GfxCount ThreadGroupCountY
Definition slang-gfx.h:1688
GfxCount ThreadGroupCountX
Definition slang-gfx.h:1687
GfxCount ThreadGroupCountZ
Definition slang-gfx.h:1689
Definition slang-gfx.h:1693
GfxIndex StartInstanceLocation
Definition slang-gfx.h:1697
GfxCount VertexCountPerInstance
Definition slang-gfx.h:1694
GfxIndex StartVertexLocation
Definition slang-gfx.h:1696
GfxCount InstanceCount
Definition slang-gfx.h:1695
Definition slang-gfx.h:1701
GfxIndex StartInstanceLocation
Definition slang-gfx.h:1706
GfxIndex BaseVertexLocation
Definition slang-gfx.h:1705
GfxCount IndexCountPerInstance
Definition slang-gfx.h:1702
GfxCount InstanceCount
Definition slang-gfx.h:1703
GfxIndex StartIndexLocation
Definition slang-gfx.h:1704
Definition slang-gfx.h:597
uint64_t handleValue
Definition slang-gfx.h:599
InteropHandleAPI api
Definition slang-gfx.h:598
Definition slang-gfx.h:666
uint64_t size
Definition slang-gfx.h:669
uint64_t offset
Definition slang-gfx.h:668
Definition slang-gfx.h:1307
CullMode cullMode
Definition slang-gfx.h:1309
int32_t depthBias
Definition slang-gfx.h:1311
float depthBiasClamp
Definition slang-gfx.h:1312
float slopeScaledDepthBias
Definition slang-gfx.h:1313
bool scissorEnable
Definition slang-gfx.h:1315
bool antialiasedLineEnable
Definition slang-gfx.h:1317
FrontFaceMode frontFace
Definition slang-gfx.h:1310
FillMode fillMode
Definition slang-gfx.h:1308
bool depthClipEnable
Definition slang-gfx.h:1314
uint32_t forcedSampleCount
Definition slang-gfx.h:1319
bool enableConservativeRasterization
Definition slang-gfx.h:1318
bool multisampleEnable
Definition slang-gfx.h:1316
Definition slang-gfx.h:1438
Enum
Definition slang-gfx.h:1440
@ SkipProcedurals
Definition slang-gfx.h:1443
@ None
Definition slang-gfx.h:1441
@ SkipTriangles
Definition slang-gfx.h:1442
Definition slang-gfx.h:1456
IShaderProgram * program
Definition slang-gfx.h:1457
const HitGroupDesc * hitGroups
Definition slang-gfx.h:1459
int maxRecursion
Definition slang-gfx.h:1460
RayTracingPipelineFlags::Enum flags
Definition slang-gfx.h:1463
Size maxAttributeSizeInBytes
Definition slang-gfx.h:1462
GfxCount hitGroupCount
Definition slang-gfx.h:1458
Size maxRayPayloadSize
Definition slang-gfx.h:1461
Definition slang-gfx.h:2977
bool enableRaytracingValidation
Definition slang-gfx.h:2979
StructType structType
Definition slang-gfx.h:2978
Definition slang-gfx.h:537
ResourceStateSet(TResourceState... states)
Definition slang-gfx.h:557
void add(ResourceState s, TResourceState... states)
Definition slang-gfx.h:541
ResourceStateSet operator&(const ResourceStateSet &that) const
Definition slang-gfx.h:562
void add()
Definition slang-gfx.h:571
ResourceStateSet(ResourceState state)
Definition slang-gfx.h:555
ResourceStateSet()
Definition slang-gfx.h:550
uint64_t m_bitFields
Definition slang-gfx.h:570
ResourceStateSet(const ResourceStateSet &other)=default
void add(ResourceState state)
Definition slang-gfx.h:539
bool contains(ResourceState state) const
Definition slang-gfx.h:546
Definition slang-gfx.h:1710
int8_t x
Definition slang-gfx.h:1711
int8_t y
Definition slang-gfx.h:1712
Definition slang-gfx.h:1521
int32_t minY
Definition slang-gfx.h:1523
int32_t maxY
Definition slang-gfx.h:1525
int32_t maxX
Definition slang-gfx.h:1524
int32_t minX
Definition slang-gfx.h:1522
Definition slang-gfx.h:2839
GfxCount missCount
Definition slang-gfx.h:2841
GfxCount hitCount
Definition slang-gfx.h:2840
GfxCount entryCount
Definition slang-gfx.h:2842
Definition slang-gfx.h:1149
bool operator>(const ShaderOffset &other) const
Definition slang-gfx.h:1177
GfxIndex bindingArrayIndex
Definition slang-gfx.h:1152
GfxIndex bindingRangeIndex
Definition slang-gfx.h:1151
bool operator==(const ShaderOffset &other) const
Definition slang-gfx.h:1157
bool operator!=(const ShaderOffset &other) const
Definition slang-gfx.h:1163
SlangInt uniformOffset
Definition slang-gfx.h:1150
bool operator<(const ShaderOffset &other) const
Definition slang-gfx.h:1164
bool operator>=(const ShaderOffset &other) const
Definition slang-gfx.h:1178
uint32_t getHashCode() const
Definition slang-gfx.h:1153
bool operator<=(const ShaderOffset &other) const
Definition slang-gfx.h:1176
Definition slang-gfx.h:2968
StructType structType
Definition slang-gfx.h:2969
uint32_t compilerOptionEntryCount
Definition slang-gfx.h:2970
slang::CompilerOptionEntry const * compilerOptionEntries
Definition slang-gfx.h:2971
Definition slang-gfx.h:732
GfxCount layerCount
Definition slang-gfx.h:737
GfxCount mipLevelCount
Definition slang-gfx.h:735
GfxIndex mipLevel
Definition slang-gfx.h:734
GfxIndex baseArrayLayer
Definition slang-gfx.h:736
TextureAspect aspectMask
Definition slang-gfx.h:733
Definition slang-gfx.h:1380
bool enableBlend
Definition slang-gfx.h:1383
LogicOp logicOp
Definition slang-gfx.h:1384
AspectBlendDesc alpha
Definition slang-gfx.h:1382
AspectBlendDesc color
Definition slang-gfx.h:1381
RenderTargetWriteMaskT writeMask
Definition slang-gfx.h:1385
Definition slang-gfx.h:486
InputSlotClass slotClass
Whether the stream contains per-vertex or per-instance data.
Definition slang-gfx.h:488
GfxCount instanceDataStepRate
How many instances to draw per chunk of data.
Definition slang-gfx.h:489
Size stride
The stride in bytes for this vertex stream.
Definition slang-gfx.h:487
Definition slang-gfx.h:1529
float originX
Definition slang-gfx.h:1530
float originY
Definition slang-gfx.h:1531
float extentY
Definition slang-gfx.h:1533
float minZ
Definition slang-gfx.h:1534
float maxZ
Definition slang-gfx.h:1535
float extentX
Definition slang-gfx.h:1532
Definition slang-gfx.h:1558
Type
Definition slang-gfx.h:1560
static WindowHandle FromHwnd(void *hwnd)
Definition slang-gfx.h:1568
intptr_t handleValues[2]
Definition slang-gfx.h:1567
static WindowHandle FromXWindow(void *xdisplay, uint32_t xwindow)
Definition slang-gfx.h:1582
Type type
Definition slang-gfx.h:1566
static WindowHandle FromNSWindow(void *nswindow)
Definition slang-gfx.h:1575
Definition slang-gfx.h:701
uint32_t uintValues[4]
Definition slang-gfx.h:703
float floatValues[4]
Definition slang-gfx.h:702