# IRdLWShader Interface Reference

Inherits IUnknown.

Inherited by IRdLWShaderAlpha, IRdLWShaderColor, IRdLWShaderLight, IRdLWShaderModel, IRdLWShaderNormal, and IRdLWShaderTexCoord.

List of all members.

## Public Member Functions
HRESULT | Clear ()
HRESULT | SetShaderName ([in] BSTR bstrValue)
HRESULT | SetShaderType ([in] BSTR bstrValue)
HRESULT | GetShaderType ([out, retval] BSTR *pbstrValue)
HRESULT | GetShaderShortName ([out, retval] BSTR *pbstrValue)
HRESULT | GetShaderFullName ([out, retval] BSTR *pbstrValue)
HRESULT | SetShader ([in] BSTR bstrShader)
HRESULT | GetShader ([out, retval] BSTR *pbstrShader)
HRESULT | LockPortableShaderData ([out, retval] void **ppShaderData)

## Detailed Description

This dataobject represents shader interface.

## Member Function Documentation

HRESULT IRdLWShader::Clear | ( |  | ) |

Clear the dataobject

HRESULT IRdLWShader::SetShaderName | ( | [in] BSTR | bstrValue | ) |

Set the shader name

Parameters:

  | bstrValue | specifies method name. This name is without the type (i.e. "texcoord_") prefix

HRESULT IRdLWShader::SetShaderType | ( | [in] BSTR | bstrValue | ) |

Set the shader type

Parameters:

  | bstrValue | specifies the type.

HRESULT IRdLWShader::GetShaderType | ( | [out, retval] BSTR * | pbstrValue | ) |

Get the shader type

Parameters:

  | pbstrValue | receives the type.

HRESULT IRdLWShader::GetShaderShortName | ( | [out, retval] BSTR * | pbstrValue | ) |

Get the shader short name (without the type prefix)

Parameters:

  | pbstrValue | receives the short name.

HRESULT IRdLWShader::GetShaderFullName | ( | [out, retval] BSTR * | pbstrValue | ) |

Get the shader name

Parameters:

  | pbstrValue | specifies the full shader name (inc. prefix).

HRESULT IRdLWShader::SetShader | ( | [in] BSTR | bstrShader | ) |

Set the shader

Parameters:

  | bstrShader | specifies the output shader string.

HRESULT IRdLWShader::GetShader | ( | [out, retval] BSTR * | pbstrShader | ) |

This method generates the shader.

Parameters:

  | pbstrShader | specifies the output shader string.

HRESULT IRdLWShader::LockPortableShaderData | ( | [out, retval] void ** | ppShaderData | ) |

This method gets portable shader data, including parameters list and values.