The Nebula Device 3: Direct3D9::D3D9ShaderVariation Class Reference

The Nebula Device 3

Direct3D9::D3D9ShaderVariation Class Reference

#include <d3d9shadervariation.h>

Inheritance diagram for Direct3D9::D3D9ShaderVariation:

Base::ShaderVariationBase Core::RefCounted CoreGraphics::ShaderVariation

Detailed Description

Under Direct3D9, a shader variation is represented by an d3dx effect technique which must be annotated by a FeatureMask string.

(C) 2007 Radon Labs GmbH

Public Member Functions

 D3D9ShaderVariation ()
 constructor
virtual ~D3D9ShaderVariation ()
 destructor
D3DXHANDLE GetD3D9Technique () const
 get the D3DX technique handle
ID3DXEffect * GetD3D9Effect () const
 get the D3DX effect which owns this variation
const NameGetName () const
 get the shader variation's name
CoreGraphics::ShaderFeature::Mask GetFeatureMask () const
 get the feature bit mask of this variation
SizeT GetNumPasses () const
 get number of passes in this variation
int GetRefCount () const
 get the current refcount
void AddRef ()
 increment refcount by one
void Release ()
 decrement refcount and destroy object if refcount is zero
bool IsInstanceOf (const Rtti &rtti) const
 return true if this object is instance of given class
bool IsInstanceOf (const Util::String &className) const
 return true if this object is instance of given class by string
bool IsInstanceOf (const Util::FourCC &classFourCC) const
 return true if this object is instance of given class by fourcc
bool IsA (const Rtti &rtti) const
 return true if this object is instance of given class, or a derived class
bool IsA (const Util::String &rttiName) const
 return true if this object is instance of given class, or a derived class, by string
bool IsA (const Util::FourCC &rttiFourCC) const
 return true if this object is instance of given class, or a derived class, by fourcc
const Util::StringGetClassName () const
 get the class name
Util::FourCC GetClassFourCC () const
 get the class FourCC code

Static Public Member Functions

static void DumpRefCountingLeaks ()
 dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)

Protected Member Functions

void SetName (const Name &n)
 set variation name
void SetFeatureMask (CoreGraphics::ShaderFeature::Mask m)
 set feature bit mask of this variation
void SetNumPasses (SizeT n)
 set number of passes

Member Function Documentation

int Core::RefCounted::GetRefCount (  )  const [inline, inherited]

get the current refcount

Return the current refcount of the object.

void Core::RefCounted::AddRef (  )  [inline, inherited]

increment refcount by one

Increment the refcount of the object.

void Core::RefCounted::Release (  )  [inline, inherited]

decrement refcount and destroy object if refcount is zero

Decrement the refcount and destroy object if refcount is zero.

const Util::String & Core::RefCounted::GetClassName (  )  const [inline, inherited]

get the class name

Get the class name of the object.

Util::FourCC Core::RefCounted::GetClassFourCC (  )  const [inline, inherited]

get the class FourCC code

Get the class FourCC of the object.

void Core::RefCounted::DumpRefCountingLeaks (  )  [static, inherited]

dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)

This method should be called as the very last before an application exits.