_D3D_SHADER_VARIABLE_TYPE Enumeration

Values that identify various data, texture, and buffer types that can be assigned to a shader variable.

Syntax

typedef enum _D3D_SHADER_VARIABLE_TYPE {
  D3D_SVT_VOID                         ,
  D3D_SVT_BOOL                         ,
  D3D_SVT_INT                          ,
  D3D_SVT_FLOAT                        ,
  D3D_SVT_STRING                       ,
  D3D_SVT_TEXTURE                      ,
  D3D_SVT_TEXTURE1D                    ,
  D3D_SVT_TEXTURE2D                    ,
  D3D_SVT_TEXTURE3D                    ,
  D3D_SVT_TEXTURECUBE                  ,
  D3D_SVT_SAMPLER                      ,
  D3D_SVT_SAMPLER1D                    ,
  D3D_SVT_SAMPLER2D                    ,
  D3D_SVT_SAMPLER3D                    ,
  D3D_SVT_SAMPLERCUBE                  ,
  D3D_SVT_PIXELSHADER                  ,
  D3D_SVT_VERTEXSHADER                 ,
  D3D_SVT_PIXELFRAGMENT                ,
  D3D_SVT_VERTEXFRAGMENT               ,
  D3D_SVT_UINT                         ,
  D3D_SVT_UINT8                        ,
  D3D_SVT_GEOMETRYSHADER               ,
  D3D_SVT_RASTERIZER                   ,
  D3D_SVT_DEPTHSTENCIL                 ,
  D3D_SVT_BLEND                        ,
  D3D_SVT_BUFFER                       ,
  D3D_SVT_CBUFFER                      ,
  D3D_SVT_TBUFFER                      ,
  D3D_SVT_TEXTURE1DARRAY               ,
  D3D_SVT_TEXTURE2DARRAY               ,
  D3D_SVT_RENDERTARGETVIEW             ,
  D3D_SVT_DEPTHSTENCILVIEW             ,
  D3D_SVT_TEXTURE2DMS                  ,
  D3D_SVT_TEXTURE2DMSARRAY             ,
  D3D_SVT_TEXTURECUBEARRAY             ,
  D3D_SVT_HULLSHADER                   ,
  D3D_SVT_DOMAINSHADER                 ,
  D3D_SVT_INTERFACE_POINTER            ,
  D3D_SVT_COMPUTESHADER                ,
  D3D_SVT_DOUBLE                       ,
  D3D_SVT_RWTEXTURE1D                  ,
  D3D_SVT_RWTEXTURE1DARRAY             ,
  D3D_SVT_RWTEXTURE2D                  ,
  D3D_SVT_RWTEXTURE2DARRAY             ,
  D3D_SVT_RWTEXTURE3D                  ,
  D3D_SVT_RWBUFFER                     ,
  D3D_SVT_BYTEADDRESS_BUFFER           ,
  D3D_SVT_RWBYTEADDRESS_BUFFER         ,
  D3D_SVT_STRUCTURED_BUFFER            ,
  D3D_SVT_RWSTRUCTURED_BUFFER          ,
  D3D_SVT_APPEND_STRUCTURED_BUFFER     ,
  D3D_SVT_CONSUME_STRUCTURED_BUFFER    ,
  D3D_SVT_MIN8FLOAT                    ,
  D3D_SVT_MIN10FLOAT                   ,
  D3D_SVT_MIN16FLOAT                   ,
  D3D_SVT_MIN12INT                     ,
  D3D_SVT_MIN16INT                     ,
  D3D_SVT_MIN16UINT                    ,
  D3D10_SVT_VOID                       ,
  D3D10_SVT_BOOL                       ,
  D3D10_SVT_INT                        ,
  D3D10_SVT_FLOAT                      ,
  D3D10_SVT_STRING                     ,
  D3D10_SVT_TEXTURE                    ,
  D3D10_SVT_TEXTURE1D                  ,
  D3D10_SVT_TEXTURE2D                  ,
  D3D10_SVT_TEXTURE3D                  ,
  D3D10_SVT_TEXTURECUBE                ,
  D3D10_SVT_SAMPLER                    ,
  D3D10_SVT_SAMPLER1D                  ,
  D3D10_SVT_SAMPLER2D                  ,
  D3D10_SVT_SAMPLER3D                  ,
  D3D10_SVT_SAMPLERCUBE                ,
  D3D10_SVT_PIXELSHADER                ,
  D3D10_SVT_VERTEXSHADER               ,
  D3D10_SVT_PIXELFRAGMENT              ,
  D3D10_SVT_VERTEXFRAGMENT             ,
  D3D10_SVT_UINT                       ,
  D3D10_SVT_UINT8                      ,
  D3D10_SVT_GEOMETRYSHADER             ,
  D3D10_SVT_RASTERIZER                 ,
  D3D10_SVT_DEPTHSTENCIL               ,
  D3D10_SVT_BLEND                      ,
  D3D10_SVT_BUFFER                     ,
  D3D10_SVT_CBUFFER                    ,
  D3D10_SVT_TBUFFER                    ,
  D3D10_SVT_TEXTURE1DARRAY             ,
  D3D10_SVT_TEXTURE2DARRAY             ,
  D3D10_SVT_RENDERTARGETVIEW           ,
  D3D10_SVT_DEPTHSTENCILVIEW           ,
  D3D10_SVT_TEXTURE2DMS                ,
  D3D10_SVT_TEXTURE2DMSARRAY           ,
  D3D10_SVT_TEXTURECUBEARRAY           ,
  D3D11_SVT_HULLSHADER                 ,
  D3D11_SVT_DOMAINSHADER               ,
  D3D11_SVT_INTERFACE_POINTER          ,
  D3D11_SVT_COMPUTESHADER              ,
  D3D11_SVT_DOUBLE                     ,
  D3D11_SVT_RWTEXTURE1D                ,
  D3D11_SVT_RWTEXTURE1DARRAY           ,
  D3D11_SVT_RWTEXTURE2D                ,
  D3D11_SVT_RWTEXTURE2DARRAY           ,
  D3D11_SVT_RWTEXTURE3D                ,
  D3D11_SVT_RWBUFFER                   ,
  D3D11_SVT_BYTEADDRESS_BUFFER         ,
  D3D11_SVT_RWBYTEADDRESS_BUFFER       ,
  D3D11_SVT_STRUCTURED_BUFFER          ,
  D3D11_SVT_RWSTRUCTURED_BUFFER        ,
  D3D11_SVT_APPEND_STRUCTURED_BUFFER   ,
  D3D11_SVT_CONSUME_STRUCTURED_BUFFER  ,
  D3D_SVT_FORCE_DWORD
} D3D_SHADER_VARIABLE_TYPE;

Constants

D3D_SVT_VOID The variable is a void pointer.
D3D_SVT_BOOL The variable is a boolean.
D3D_SVT_INT The variable is an integer.
D3D_SVT_FLOAT The variable is a floating-point number.
D3D_SVT_STRING The variable is a string.
D3D_SVT_TEXTURE The variable is a texture.
D3D_SVT_TEXTURE1D The variable is a 1D texture.
D3D_SVT_TEXTURE2D The variable is a 2D texture.
D3D_SVT_TEXTURE3D The variable is a 3D texture.
D3D_SVT_TEXTURECUBE The variable is a texture cube.
D3D_SVT_SAMPLER The variable is a sampler.
D3D_SVT_SAMPLER1D The variable is a 1D sampler.
D3D_SVT_SAMPLER2D The variable is a 2D sampler.
D3D_SVT_SAMPLER3D The variable is a 3D sampler.
D3D_SVT_SAMPLERCUBE The variable is a cube sampler.
D3D_SVT_PIXELSHADER The variable is a pixel shader.
D3D_SVT_VERTEXSHADER The variable is a vertex shader.
D3D_SVT_PIXELFRAGMENT The variable is a pixel fragment.
D3D_SVT_VERTEXFRAGMENT The variable is a vertex fragment.
D3D_SVT_UINT The variable is an unsigned integer.
D3D_SVT_UINT8 The variable is an 8-bit unsigned integer.
D3D_SVT_GEOMETRYSHADER The variable is a geometry shader.
D3D_SVT_RASTERIZER The variable is a rasterizer-state object.
D3D_SVT_DEPTHSTENCIL The variable is a depth-stencil-state object.
D3D_SVT_BLEND The variable is a blend-state object.
D3D_SVT_BUFFER The variable is a buffer.
D3D_SVT_CBUFFER The variable is a constant buffer.
D3D_SVT_TBUFFER The variable is a texture buffer.
D3D_SVT_TEXTURE1DARRAY The variable is a 1D-texture array.
D3D_SVT_TEXTURE2DARRAY The variable is a 2D-texture array.
D3D_SVT_RENDERTARGETVIEW The variable is a render-target view.
D3D_SVT_DEPTHSTENCILVIEW The variable is a depth-stencil view.
D3D_SVT_TEXTURE2DMS The variable is a 2D-multisampled texture.
D3D_SVT_TEXTURE2DMSARRAY The variable is a 2D-multisampled-texture array.
D3D_SVT_TEXTURECUBEARRAY The variable is a texture-cube array.
D3D_SVT_HULLSHADER The variable holds a compiled hull-shader binary.
D3D_SVT_DOMAINSHADER The variable holds a compiled domain-shader binary.
D3D_SVT_INTERFACE_POINTER The variable is an interface.
D3D_SVT_COMPUTESHADER The variable holds a compiled compute-shader binary.
D3D_SVT_DOUBLE The variable is a double precision (64-bit) floating-point number.
D3D_SVT_RWTEXTURE1D The variable is a 1D read-and-write texture.
D3D_SVT_RWTEXTURE1DARRAY The variable is an array of 1D read-and-write textures.
D3D_SVT_RWTEXTURE2D The variable is a 2D read-and-write texture.
D3D_SVT_RWTEXTURE2DARRAY The variable is an array of 2D read-and-write textures.
D3D_SVT_RWTEXTURE3D The variable is a 3D read-and-write texture.
D3D_SVT_RWBUFFER The variable is a read-and-write buffer.
D3D_SVT_BYTEADDRESS_BUFFER The variable is a byte-address buffer.
D3D_SVT_RWBYTEADDRESS_BUFFER The variable is a read-and-write byte-address buffer.
D3D_SVT_STRUCTURED_BUFFER The variable is a structured buffer.

For more information about structured buffer, see the Remarks section.

D3D_SVT_RWSTRUCTURED_BUFFER The variable is a read-and-write structured buffer.
D3D_SVT_APPEND_STRUCTURED_BUFFER The variable is an append structured buffer.
D3D_SVT_CONSUME_STRUCTURED_BUFFER The variable is a consume structured buffer.
D3D_SVT_MIN8FLOAT The variable is an 8-byte FLOAT.
D3D_SVT_MIN10FLOAT The variable is a 10-byte FLOAT.
D3D_SVT_MIN16FLOAT The variable is a 16-byte FLOAT.
D3D_SVT_MIN12INT The variable is a 12-byte INT.
D3D_SVT_MIN16INT The variable is a 16-byte INT.
D3D_SVT_MIN16UINT The variable is a 16-byte INT.
D3D10_SVT_VOID The variable is a void pointer.
D3D10_SVT_BOOL The variable is a boolean.
D3D10_SVT_INT The variable is an integer.
D3D10_SVT_FLOAT The variable is a floating-point number.
D3D10_SVT_STRING The variable is a string.
D3D10_SVT_TEXTURE The variable is a texture.
D3D10_SVT_TEXTURE1D The variable is a 1D texture.
D3D10_SVT_TEXTURE2D The variable is a 2D texture.
D3D10_SVT_TEXTURE3D The variable is a 3D texture.
D3D10_SVT_TEXTURECUBE The variable is a texture cube.
D3D10_SVT_SAMPLER The variable is a sampler.
D3D10_SVT_SAMPLER1D The variable is a 1D sampler.
D3D10_SVT_SAMPLER2D The variable is a 2D sampler.
D3D10_SVT_SAMPLER3D The variable is a 3D sampler.
D3D10_SVT_SAMPLERCUBE The variable is a cube sampler.
D3D10_SVT_PIXELSHADER The variable is a pixel shader.
D3D10_SVT_VERTEXSHADER The variable is a vertex shader.
D3D10_SVT_PIXELFRAGMENT The variable is a pixel fragment.
D3D10_SVT_VERTEXFRAGMENT The variable is a vertex fragment.
D3D10_SVT_UINT The variable is an unsigned integer.
D3D10_SVT_UINT8 The variable is an 8-bit unsigned integer.
D3D10_SVT_GEOMETRYSHADER The variable is a geometry shader.
D3D10_SVT_RASTERIZER The variable is a rasterizer-state object.
D3D10_SVT_DEPTHSTENCIL The variable is a depth-stencil-state object.
D3D10_SVT_BLEND The variable is a blend-state object.
D3D10_SVT_BUFFER The variable is a buffer.
D3D10_SVT_CBUFFER The variable is a constant buffer.
D3D10_SVT_TBUFFER The variable is a texture buffer.
D3D10_SVT_TEXTURE1DARRAY The variable is a 1D-texture array.
D3D10_SVT_TEXTURE2DARRAY The variable is a 2D-texture array.
D3D10_SVT_RENDERTARGETVIEW The variable is a render-target view.
D3D10_SVT_DEPTHSTENCILVIEW The variable is a depth-stencil view.
D3D10_SVT_TEXTURE2DMS The variable is a 2D-multisampled texture.
D3D10_SVT_TEXTURE2DMSARRAY The variable is a 2D-multisampled-texture array.
D3D10_SVT_TEXTURECUBEARRAY The variable is a texture-cube array.
D3D11_SVT_HULLSHADER The variable holds a compiled hull-shader binary.
D3D11_SVT_DOMAINSHADER The variable holds a compiled domain-shader binary.
D3D11_SVT_INTERFACE_POINTER The variable is an interface.
D3D11_SVT_COMPUTESHADER The variable holds a compiled compute-shader binary.
D3D11_SVT_DOUBLE The variable is a double precision (64-bit) floating-point number.
D3D11_SVT_RWTEXTURE1D The variable is a 1D read-and-write texture.
D3D11_SVT_RWTEXTURE1DARRAY The variable is an array of 1D read-and-write textures.
D3D11_SVT_RWTEXTURE2D The variable is a 2D read-and-write texture.
D3D11_SVT_RWTEXTURE2DARRAY The variable is an array of 2D read-and-write textures.
D3D11_SVT_RWTEXTURE3D The variable is a 3D read-and-write texture.
D3D11_SVT_RWBUFFER The variable is a read-and-write buffer.
D3D11_SVT_BYTEADDRESS_BUFFER The variable is a byte-address buffer.
D3D11_SVT_RWBYTEADDRESS_BUFFER The variable is a read and write byte-address buffer.
D3D11_SVT_STRUCTURED_BUFFER The variable is a structured buffer.
D3D11_SVT_RWSTRUCTURED_BUFFER The variable is a read-and-write structured buffer.
D3D11_SVT_APPEND_STRUCTURED_BUFFER The variable is an append structured buffer.
D3D11_SVT_CONSUME_STRUCTURED_BUFFER The variable is a consume structured buffer.
D3D_SVT_FORCE_DWORD This value is not used by a programmer; it exists to force the enumeration to compile to 32 bits.

Remarks

A call to the ID3D11ShaderReflectionType::GetDescmethod returns a D3D_SHADER_VARIABLE_TYPEvalue in the Type member of a D3D11_SHADER_TYPE_DESC structure.

The types in a structured buffer describe the structure of the elements in the buffer. The layout of these types generally match their C++ struct counterparts. The following examples show structured buffers:

struct mystruct {float4 val; uint ind;}; RWStructuredBuffer<mystruct> rwbuf;
                                         RWStructuredBuffer<float3> rwbuf2;

Requirements

   
Header d3dcommon.h

See Also

Common Version Enumerations