RslArg Class Reference

An array of RslArg pointers is passed to the RSL plugin function. More...

#include <RslPlugin.h>

List of all members.

Public Member Functions

virtual ~RslArg ()
 Virtual destructor.
virtual bool IsFloat () const =0
 Returns true if this argument is a float.
virtual bool IsPoint () const =0
 Returns true if this argument is a point.
virtual bool IsVector () const =0
 Returns true if this argument is a vector.
virtual bool IsColor () const =0
 Returns true if this argument is a color.
virtual bool IsString () const =0
 Returns true if this argument is a string.
virtual bool IsMatrix () const =0
 Returns true if this argument is a matrix.
virtual bool IsArray () const =0
 Returns true if this argument is an array.
virtual bool IsVarying () const =0
 Returns true if this argument is varying.
virtual int GetArrayLength () const =0
 Get the length of an array argument.
virtual unsigned int NumValues () const =0
 Get the number of values for this argument.
virtual void GetData (float **data, int *stride) const =0
 Get the raw data pointer for this argument from the given context, along with the stride, which specifies how much to increment the pointer on each iteration.

Static Public Member Functions

static unsigned int NumValues (int argc, const RslArg **argv)
 Get the maximum number of values for the given arguments.

Friends

class RslIter
class RslArrayIter


Detailed Description

An array of RslArg pointers is passed to the RSL plugin function.

The result parameter is always the first argument.


Constructor & Destructor Documentation

virtual RslArg::~RslArg  )  [inline, virtual]
 

Virtual destructor.


Member Function Documentation

virtual int RslArg::GetArrayLength  )  const [pure virtual]
 

Get the length of an array argument.

The result is undefined if this argument is not an array (call IsArray first).

virtual void RslArg::GetData float **  data,
int *  stride
const [pure virtual]
 

Get the raw data pointer for this argument from the given context, along with the stride, which specifies how much to increment the pointer on each iteration.

(The stride is zero if the argument is uniform.) Use with caution! Do not read or modify values for inactive points. Use RslContext::GetRunflags to determine which points are active.

virtual bool RslArg::IsArray  )  const [pure virtual]
 

Returns true if this argument is an array.

virtual bool RslArg::IsColor  )  const [pure virtual]
 

Returns true if this argument is a color.

virtual bool RslArg::IsFloat  )  const [pure virtual]
 

Returns true if this argument is a float.

virtual bool RslArg::IsMatrix  )  const [pure virtual]
 

Returns true if this argument is a matrix.

virtual bool RslArg::IsPoint  )  const [pure virtual]
 

Returns true if this argument is a point.

virtual bool RslArg::IsString  )  const [pure virtual]
 

Returns true if this argument is a string.

virtual bool RslArg::IsVarying  )  const [pure virtual]
 

Returns true if this argument is varying.

virtual bool RslArg::IsVector  )  const [pure virtual]
 

Returns true if this argument is a vector.

static unsigned int RslArg::NumValues int  argc,
const RslArg **  argv
[inline, static]
 

Get the maximum number of values for the given arguments.

This method should be used to determine the number of iterations when a plugin function returns values via output arguments.

virtual unsigned int RslArg::NumValues  )  const [pure virtual]
 

Get the number of values for this argument.

Returns 1 if the argument is uniform. Otherwise it returns the number of points in the context.


The documentation for this class was generated from the following file:
Generated on Wed May 10 15:56:09 2006 for PRManHeaders by  doxygen 1.4.6