Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
MCollectible
Inherited By:
TNoiseProcedureMap
Purpose:
TProcedureMap is an abstract base class for procedure maps. A procedure map is used by a shader (typically, a TProcedureMapShader) to simulate a textured surface by invoking an arbitrary algorithm that modifies the shading information. Unlike image texture maps and bump maps, procedure maps are not based on an image. A procedure map can be used to alter the surface point's color or shading normal, or both.
Instantiation:
Abstract class; do not allocate.
Deriving Classes:
Deriving classes must override the pure virtual member functions GetValue, GetRequiredShadingVariables, and GetModifiedShadingVariables.
Concurrency:
Not multithread safe.
Resource Use:
No special requirements.
virtual ~ TProcedureMap ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called to destroy an object.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TProcedureMap::GetValue
virtual void GetValue (TShadingSample & shadingSample, const TSceneState & sceneState) const
Interface Category:
API.
Purpose:
Returns, in its TShadingSample argument, the modified shading information for the surface point. This is a pure virtual function that must be overridden by the derived classes.
Calling Context:
Do not call this function directly.
Parameters:
- TShadingSample & shadingSample -The information about the surface point needed by the shader.
- const TSceneState & sceneState -The state of the scene.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TProcedureMap::GetRequiredShadingVariables
virtual void GetRequiredShadingVariables (TShadingUsageVariables & variables) const
Interface Category:
API.
Purpose:
Returns, in its TShadingUsageVariables argument, a list of the TShadingSample fields that are needed by the shader. This is a pure virtual function that must be overridden by the derived classes.
Calling Context:
Do not call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TProcedureMap::GetModifiedShadingVariables
virtual void GetModifiedShadingVariables (TShadingUsageVariables & variables) const
Interface Category:
API.
Purpose:
Returns, in its TShadingUsageVariables argument, a list of the TShadingSample fields that are modified by the shader. This is a pure virtual function that must be overridden by the derived classes.
Calling Context:
Do not call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TProcedureMap::operator>>=
virtual TStream & operator >>=(TStream &) const
Interface Category:
API.
Purpose:
Stream-out operator.
Calling Context:
Called to stream out data.
Parameters:
- TStream & -The stream that the object streams itself out to.
Return Value:
Returns a reference to the stream the object streams itself out to.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TProcedureMap::operator<<=
virtual TStream & operator <<= (TStream &)
Interface Category:
API.
Purpose:
Stream-in operator.
Calling Context:
Called to stream in data.
Parameters:
- TStream & -The stream that the object streams itself in from.
Return Value:
Returns a reference to the stream the object streams itself in from.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
- TProcedureMap ()
- TProcedureMap (const TProcedureMap & map)
Interface Category:
API.
Purpose:
- Default constructor. This is a protected constructor that must be overridden by the derived classes.
- Copy constructor. This is a protected constructor that must be overridden by the derived classes.
Calling Context:
- Called by the stream-in operators. Do not call this function directly.
- Called to copy an object. Do not call this function directly, except from within the copy constructor of a derived class.
Parameters:
- Takes no parameters.
- const TProcedureMap & map -The object to be copied.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TProcedureMap::operator=
TProcedureMap & operator =(const TProcedureMap & source)
Interface Category:
API.
Purpose:
Assignment operator. This is a protected member function that must be overridden by the derived classes.
Calling Context:
Do not call this function directly, except from within the operator
- function of a derived class.
Parameters:
Return Value:
A non-const reference to the left-hand side object.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.