Blender V2.61 - r43446
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes

ShaderManager Class Reference

#include <shader.h>

Inheritance diagram for ShaderManager:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~ShaderManager ()
virtual void device_update (Device *device, DeviceScene *dscene, Scene *scene, Progress &progress)=0
virtual void device_free (Device *device, DeviceScene *dscene)=0
void device_update_common (Device *device, DeviceScene *dscene, Scene *scene, Progress &progress)
void device_free_common (Device *device, DeviceScene *dscene)
uint get_attribute_id (ustring name)
uint get_attribute_id (Attribute::Standard std)
int get_shader_id (uint shader, Mesh *mesh=NULL, bool smooth=false)

Static Public Member Functions

static ShaderManagercreate (Scene *scene)
static void add_default (Scene *scene)

Public Attributes

bool need_update

Protected Types

typedef unordered_map< ustring,
uint, ustringHash > 
AttributeIDMap

Protected Member Functions

 ShaderManager ()

Protected Attributes

AttributeIDMap unique_attribute_id

Detailed Description

Definition at line 89 of file shader.h.


Member Typedef Documentation

typedef unordered_map<ustring, uint, ustringHash> ShaderManager::AttributeIDMap [protected]

Definition at line 117 of file shader.h.


Constructor & Destructor Documentation

ShaderManager::~ShaderManager ( ) [virtual]

Definition at line 107 of file shader.cpp.

ShaderManager::ShaderManager ( ) [protected]

Definition at line 102 of file shader.cpp.

References need_update.


Member Function Documentation

void ShaderManager::add_default ( Scene scene) [static]
ShaderManager * ShaderManager::create ( Scene scene) [static]

Definition at line 111 of file shader.cpp.

References add_default(), SceneParams::OSL, Scene::params, and SceneParams::shadingsystem.

virtual void ShaderManager::device_free ( Device device,
DeviceScene dscene 
) [pure virtual]

Implemented in SVMShaderManager.

Referenced by Scene::~Scene().

void ShaderManager::device_free_common ( Device device,
DeviceScene dscene 
)
virtual void ShaderManager::device_update ( Device device,
DeviceScene dscene,
Scene scene,
Progress progress 
) [pure virtual]

Implemented in SVMShaderManager.

Referenced by Scene::device_update().

void ShaderManager::device_update_common ( Device device,
DeviceScene dscene,
Scene scene,
Progress progress 
)
uint ShaderManager::get_attribute_id ( Attribute::Standard  std)

Definition at line 140 of file shader.cpp.

uint ShaderManager::get_attribute_id ( ustring  name)
int ShaderManager::get_shader_id ( uint  shader,
Mesh mesh = NULL,
bool  smooth = false 
)

Member Data Documentation

Definition at line 118 of file shader.h.

Referenced by get_attribute_id().


The documentation for this class was generated from the following files: