Class ShaderInterface

Class Documentation

class ShaderInterface

Public Functions

ShaderInterface()
ShaderInterface(ShaderInterface &&other)
ShaderInterface(ShaderInterface const &other)
~ShaderInterface()
ShaderInterface &operator=(ShaderInterface &&other)
ShaderInterface &operator=(ShaderInterface const &other)
void AppendMissingInstances(ShaderInterface &other)

Append missing instances from the other shader inteface. Other interface is invalidated.

void AddInstance(ShaderBlockModifier category, Instance &&instance)

Add an existing, populated Instance into internal output-buffer metadata collection.

Note

This operation is performed with MOVE semantics

Parameters

instance --

uint64_t InstanceCount(ShaderBlockModifier category) const

UniformCount.

Returns

Number of definition instances from given category used by the shader

introspection::Instance const *GetInstance(ShaderBlockModifier category, uint64_t index) const

Get a reference to a definition of instance from given category.

Parameters

index --

Returns

Const pointer to the definition, or null if index is out of range

SourceType GetOriginalSourceType() const

Returns the shading language corresponding to the original high-level language the shader source code was written in before compilation, e.g. HLSL, GLSL.

Returns

A SourceType corresponding to the original language, or kNotFound if no high-level equivalent was recognized.

void SetOriginalSourceType(SourceType const &type)

Sets the shading language corresponding to the original source before compilation.

Parameters

type -- A SourceType corresponding to the original language.

ShaderVersion GetVersion() const

Returns the version information for this shader.

See also

Version

void SetVersion(ShaderVersion const &version)

Sets the version information for this shader.

Parameters

version -- The version

api_types::PrimitiveTopology GetGeometryShaderOutputTopology() const

Returns the geometry shader output topology.

void SetGeometryShaderOutputTopology(api_types::PrimitiveTopology gsOutputTopology)

Sets the geometry shader output topology.

Parameters

gsOutputTopology -- The topology