RixPattern Class Reference

RixPattern Class Referenceabstract

#include <RixPattern.h>

Inheritance diagram for RixPattern:
RixShadingPlugin

Classes

struct  OutputSpec
 

Public Member Functions

virtual int GetInterface () const
 
virtual int Init (RixContext &ctx, char const *pluginPath)=0
 
virtual RixSCParamInfo const * GetParamTable ()=0
 
virtual RixSCParamInfo const * GetInstanceParamTable (char const *handle, RtConstPointer instancedata, RixParameterList const *)
 
virtual void Finalize (RixContext &ctx)=0
 
virtual int ComputeOutputParams (RixShadingContext const *sCtx, RtInt *n, OutputSpec **outputs, RtConstPointer instanceData, RixSCParamInfo const *instanceTable)=0
 
- Public Member Functions inherited from RixShadingPlugin
virtual int GetVersion () const
 
virtual void Synchronize (RixContext &, RixSCSyncMsg, RixParameterList const *)
 
virtual int CreateInstanceData (RixContext &, char const *, RixParameterList const *, InstanceData *)
 

Additional Inherited Members

- Protected Member Functions inherited from RixShadingPlugin
 RixShadingPlugin (int version)
 
- Protected Attributes inherited from RixShadingPlugin
int m_version
 

Detailed Description

The RixPattern interface characterizes pattern generation for the purposes of RixBxdf parameterization. Non-constant patterns can themselves be parameterized by some aspect of the RixShadingContext. Typically, RixPatterns operate atop a filter width associated with the shading context. Internally RixPatterns, in order to respond to the ComputeOuputParams request, must request the RixShadingContext to evaulate input parameters associated with the named outputs.

Member Function Documentation

virtual RixSCParamInfo const* RixPattern::GetInstanceParamTable ( char const *  handle,
RtConstPointer  instancedata,
RixParameterList const *   
)
inlinevirtual

GetInstanceParamTable returns a specialized interface definition associated with the Ri parameterization. Memory is owned by plugin and should be carefully tracked as there may be thousands of instances in a rendering session. This call might be called in multiple threads and should be re-entrant and thread-safe. Generally concrete interfaces should be preferred over dynamic interfaces due to their extra memory expense.


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