RenderShaderData

Fields

HARDWARE_PLATFORM

_platform_id

int

_ltarget

ShaderProgramID

_vshid

ShaderProgramID

_gshid

ShaderProgramID

_pshid

int

_is_rendercode

RenderCode

_rendercode

Vector < RenderShaderParameter >

_parameters

Functions

CID

GetClassID

void *

As

const void *

As

class T_As

As

class T_As

As

RenderShaderData

RenderShaderData

RenderShaderData

~RenderShaderData

RED_RC

operator=

Detailed Description

class RenderShaderData : public RED::Object

Data record used by a RED::RenderShader for a given hardware platform.

@related class RED::RenderShader

Public Functions

virtual void *As(const RED::CID &iCID)

Converts the object to an instance of the given type.

Parameters

iCID – Requested class.

Returns

An object pointer of the given class on success, NULL otherwise.

virtual const void *As(const RED::CID &iCID) const

Converts the object to an instance of the given type.

Parameters

iCID – Requested class.

Returns

An object pointer of the given class on success, NULL otherwise.

template<class T_As>
inline T_As *As()
template<class T_As>
inline const T_As *As() const
RenderShaderData()

Default constructor.

RenderShaderData(RED::HARDWARE_PLATFORM iPlatformID, int iShaderTarget)

Constructor.

Parameters
  • iPlatformID – Identifier of the targeted hardware platform.

  • iShaderTarget – Identifier of the targeted shading configuration.

RenderShaderData(const RenderShaderData &iSource)

Copy constructor.

Parameters

iSource – Source for the copy.

virtual ~RenderShaderData()

Destructor.

RED_RC operator=(const RenderShaderData &iSource)

Assignment operator.

Performs a copy of the object contents.

Parameters

iSource – Source for the assignment.

Returns

RED_OK if the operation has succeeded,

RED_ALLOC_FAILURE if an internal allocation has failed.

Public Members

RED::HARDWARE_PLATFORM _platform_id

Platform identifier.

int _ltarget

Lighting target identifier.

RED::ShaderProgramID _vshid

Vertex shader identifier.

RED::ShaderProgramID _gshid

Geometry shader identifier.

RED::ShaderProgramID _pshid

Pixel shader identifier.

int _is_rendercode

Do we have a rendercode for that target ?

RED::RenderCode _rendercode

Vertex shader input specification.

RED::Vector<RED::RenderShaderParameter> _parameters

Vector of the shader parameters

Public Static Functions

static inline RED::CID GetClassID()