MAGE  v0.171.0
Matthias Advanced Game Engine
mage::rendering::Pipeline::DS Struct Reference

#include <pipeline.hpp>

Static Public Member Functions

static void BindShader (ID3D11DeviceContext &device_context, ID3D11DomainShader *shader) noexcept
 
static void BindShader (ID3D11DeviceContext &device_context, ID3D11DomainShader *shader, ID3D11ClassInstance *const *class_instances, U32 nb_class_instances) noexcept
 
static void BindConstantBuffer (ID3D11DeviceContext &device_context, U32 slot, ID3D11Buffer *buffer) noexcept
 
static void BindConstantBuffers (ID3D11DeviceContext &device_context, U32 slot, U32 nb_buffers, ID3D11Buffer *const *buffers) noexcept
 
static void BindSRV (ID3D11DeviceContext &device_context, U32 slot, ID3D11ShaderResourceView *srv) noexcept
 
static void BindSRVs (ID3D11DeviceContext &device_context, U32 slot, U32 nb_srvs, ID3D11ShaderResourceView *const *srvs) noexcept
 
static void BindSampler (ID3D11DeviceContext &device_context, U32 slot, ID3D11SamplerState *sampler) noexcept
 
static void BindSamplers (ID3D11DeviceContext &device_context, U32 slot, U32 nb_samplers, ID3D11SamplerState *const *samplers) noexcept
 

Detailed Description

The domain shader stage.

Member Function Documentation

◆ BindConstantBuffer()

static void mage::rendering::Pipeline::DS::BindConstantBuffer ( ID3D11DeviceContext &  device_context,
U32  slot,
ID3D11Buffer *  buffer 
)
staticnoexcept

Binds a constant buffer to the domain shader stage.

Precondition
slot < D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT.
Parameters
[in,out]device_contextA reference to the device context.
[in]slotThe index into the device's zero-based array to set the constant buffer to (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1).
[in]bufferA pointer to the constant buffer.

◆ BindConstantBuffers()

static void mage::rendering::Pipeline::DS::BindConstantBuffers ( ID3D11DeviceContext &  device_context,
U32  slot,
U32  nb_buffers,
ID3D11Buffer *const *  buffers 
)
staticnoexcept

Binds an array of constant buffers to the domain shader stage.

Precondition
slot < D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT.
nb_buffers < D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT
  • slot.
buffers points to an array containing at least nb_buffers pointers to a constant buffer.
Parameters
[in,out]device_contextA reference to the device context.
[in]slotThe index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1).
[in]nb_buffersThe number of constant buffers in the array (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT
  • slot).
[in]buffersA pointer to an array of constant buffers.

◆ BindSampler()

static void mage::rendering::Pipeline::DS::BindSampler ( ID3D11DeviceContext &  device_context,
U32  slot,
ID3D11SamplerState *  sampler 
)
staticnoexcept

Binds a sampler to the domain shader stage.

Precondition
slot < D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT.
Parameters
[in,out]device_contextA reference to the device context.
[in]slotThe index into the device's zero-based array to set the sampler to (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - 1).
[in]samplerA pointer to the sampler.

◆ BindSamplers()

static void mage::rendering::Pipeline::DS::BindSamplers ( ID3D11DeviceContext &  device_context,
U32  slot,
U32  nb_samplers,
ID3D11SamplerState *const *  samplers 
)
staticnoexcept

Binds an array of samplers to the domain shader stage.

Precondition
slot < D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT.
nb_samplers < D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT
  • slot.
samplers points to an array containing at least nb_samplers pointers to a sampler.
Parameters
[in,out]device_contextA reference to the device context.
[in]slotThe index into the device's zero-based array to begin setting samplers to (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - 1).
[in]nb_samplersThe number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - slot).
[in]samplersA pointer to an array of samplers.

◆ BindShader() [1/2]

static void mage::rendering::Pipeline::DS::BindShader ( ID3D11DeviceContext &  device_context,
ID3D11DomainShader *  shader 
)
staticnoexcept

Binds a domain shader to the domain shader stage.

Parameters
[in,out]device_contextA reference to the device context.
[in]shaderA pointer to the domain shader.

◆ BindShader() [2/2]

static void mage::rendering::Pipeline::DS::BindShader ( ID3D11DeviceContext &  device_context,
ID3D11DomainShader *  shader,
ID3D11ClassInstance *const *  class_instances,
U32  nb_class_instances 
)
staticnoexcept

Binds a domain shader to the domain shader stage.

Parameters
[in,out]device_contextA reference to the device context.
[in]shaderA pointer to the domain shader.
[in]class_instancesA pointer to an array of class-instance interfaces.
[in]nb_class_instancesThe numberof class-instance interfaces.

◆ BindSRV()

static void mage::rendering::Pipeline::DS::BindSRV ( ID3D11DeviceContext &  device_context,
U32  slot,
ID3D11ShaderResourceView *  srv 
)
staticnoexcept

Binds a shader resource view to the domain shader stage.

Precondition
slot < D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT.
Parameters
[in,out]device_contextA reference to the device context.
[in]slotThe index into the device's zero-based array to set the shader resource view to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1).
[in]srvA pointer to the shader resource view.

◆ BindSRVs()

static void mage::rendering::Pipeline::DS::BindSRVs ( ID3D11DeviceContext &  device_context,
U32  slot,
U32  nb_srvs,
ID3D11ShaderResourceView *const *  srvs 
)
staticnoexcept

Binds an array of shader resource views to the domain shader stage.

Precondition
slot < D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT.
nb_srvs < D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT
  • slot.
srvs points to an array containing at least nb_srvs pointers to a shader resource view.
Parameters
[in,out]device_contextA reference to the device context.
[in]slotThe index into the device's zero-based array to begin setting shader resource views to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1).
[in]nb_srvsThe number of shader resource views in the array. Up to a maximum of 128 slots are available for shader resource views (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - slot).
[in]srvsA pointer to an array of shader resource views.