I3DShMasterShader Struct Reference
[Shell Interfaces]

Inheritance diagram for I3DShMasterShader:
IMCUnknown

List of all members.

Public Member Functions

virtual uint32 MCCOMAPI GetInstancesCount ()=0
virtual void MCCOMAPI GetInstanceArray (TMCCountedPtrArray< I3DShTreeElement > &instances)=0
virtual MCCOMErr MCCOMAPI SetName (const TMCString &name)=0
virtual MCCOMErr MCCOMAPI GetName (TMCString &name)=0
virtual MCCOMErr MCCOMAPI SetShader (I3DShShader *shader, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI GetShader (I3DShShader **shader)=0
virtual MCCOMErr MCCOMAPI SetDisplacementShader (I3DShShader *shader, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI GetDisplacementShader (I3DShShader **shader)=0
virtual MCCOMErr MCCOMAPI Clone (I3DShMasterShader **clone, ECloneMode cloneMode, boolean cloneDisplacementMapping=true) const =0
virtual MCCOMErr MCCOMAPI GetScene (I3DShScene **scene) const =0
virtual boolean MCCOMAPI IsDefaultMaster () const =0
virtual I3DShMaster *MCCOMAPI GetThisMaster ()=0
virtual boolean MCCOMAPI IsReferencedByThisSubTree (I3DShTreeElement *subTree, I3DShScene *scene)=0
virtual MCCOMErr MCCOMAPI MasterShaderModified (boolean onlyShading=false)=0

Detailed Description

I3DShMasterShader represents a Master Shader. A Master Shader can be applied to multiple objects in a scene.

It supports multiple interfaces such as IMaster and ISelectableObject


Member Function Documentation

virtual MCCOMErr MCCOMAPI I3DShMasterShader::Clone ( I3DShMasterShader **  clone,
ECloneMode  cloneMode,
boolean  cloneDisplacementMapping = true 
) const [pure virtual]

Makes a copy of the Master Shader.

Parameters:
clone The copy that is returned.
cloneMode The clone Mode (see ECloneMode).
cloneDisplacementMapping Clone the displacement mapping
virtual MCCOMErr MCCOMAPI I3DShMasterShader::GetDisplacementShader ( I3DShShader **  shader  )  [pure virtual]

Returns a pointer to the displacement shader tree that defines this Master Shader.

Parameters:
shader A pointer to the root of the shader tree.
virtual void MCCOMAPI I3DShMasterShader::GetInstanceArray ( TMCCountedPtrArray< I3DShTreeElement > &  instances  )  [pure virtual]

Returns an array of all the instances that points to that class.

Parameters:
instances An array of instances.
virtual uint32 MCCOMAPI I3DShMasterShader::GetInstancesCount (  )  [pure virtual]

Returns the number of instances of this master in the scene.

virtual MCCOMErr MCCOMAPI I3DShMasterShader::GetName ( TMCString name  )  [pure virtual]

Returns the name of the Master Shader.

Parameters:
name The name of the Master Shader.
virtual MCCOMErr MCCOMAPI I3DShMasterShader::GetScene ( I3DShScene **  scene  )  const [pure virtual]

Returns a pointer to the scene that contains this Master Shader.

Parameters:
scene A pointer to the scene that contains this Master Shader. (NULL if it is not inserted in a scene.
virtual MCCOMErr MCCOMAPI I3DShMasterShader::GetShader ( I3DShShader **  shader  )  [pure virtual]

Returns a pointer to the shader tree that defines this Master Shader.

Parameters:
shader A pointer to the root of the shader tree.
virtual I3DShMaster* MCCOMAPI I3DShMasterShader::GetThisMaster (  )  [pure virtual]

Returns the I3DShMaster interface.

virtual boolean MCCOMAPI I3DShMasterShader::IsDefaultMaster (  )  const [pure virtual]

Returns true if the Master Shader is the default Master Shaders.

virtual boolean MCCOMAPI I3DShMasterShader::IsReferencedByThisSubTree ( I3DShTreeElement subTree,
I3DShScene scene 
) [pure virtual]

Return true if the given sub tree keeps a reference to that master shader

Parameters:
subTree The sub tree that might reference that master object
scene The scene that contains that sub tree.
virtual MCCOMErr MCCOMAPI I3DShMasterShader::MasterShaderModified ( boolean  onlyShading = false  )  [pure virtual]

Notify that the master shader is modified

virtual MCCOMErr MCCOMAPI I3DShMasterShader::SetDisplacementShader ( I3DShShader shader,
ECloneMode  cloneMode 
) [pure virtual]

Sets the displacement shader tree that defines this Master Shader.

Parameters:
shader A pointer to the root of the displacement shader tree.
cloneMode The clone Mode (see ECloneMode).
virtual MCCOMErr MCCOMAPI I3DShMasterShader::SetName ( const TMCString name  )  [pure virtual]

Sets the name of a master. Note that you should not call this method once the master is inserted in a scene because it does not garantee the unicity of the name.

If you want to change the name of a Master Shader once it is inserted in a scene, you should call I3DShScene::RenameMasterShader().

Parameters:
name The new name of the master.
virtual MCCOMErr MCCOMAPI I3DShMasterShader::SetShader ( I3DShShader shader,
ECloneMode  cloneMode 
) [pure virtual]

Sets the shader tree that defines this Master Shader.

Parameters:
shader A pointer to the root of the shader tree.
cloneMode The clone Mode (see ECloneMode).

The documentation for this struct was generated from the following file:
Generated on Mon Apr 26 22:47:40 2010 for Carrara SDK Doc by  doxygen 1.6.3