#include "ri.h"
#include "RixInterfaces.h"
#include <stdarg.h>
#include <assert.h>
#include <string>
Go to the source code of this file.
Classes | |
class | RslContext |
The RslContext provides access to various capabilities required by shader plugins. More... | |
class | RslArg_v2 |
Plugin function argument (API version 2). More... | |
class | RslArg_v3 |
Plugin function argument (API version 3). More... | |
class | RslArg |
An array of RslArg pointers is passed to the RSL plugin function. More... | |
class | RslIter< T > |
An iterator is used to access grid data. More... | |
class | RslArrayIter< T > |
An iterator for array arguments. More... | |
class | RslResizer |
A resizable array can be manipulated using an RslResizer object. More... | |
class | RslStruct |
An RslStruct represents a struct value. More... | |
class | RslStructArray |
An RslStructArray represents an array of structs. More... | |
struct | RslFunction |
Each plugin must define an RSL function table, which requires two steps. More... | |
struct | RslFunctionTable |
Each plugin should define an RslFunctionTable called "RslPublicFunctions". More... | |
Defines | |
#define | RSL_PLUGIN_VERSION 5 |
Plugin API version number. | |
Typedefs | |
typedef unsigned int | RslRunFlag |
Most shadeops should use iterators to access data, but those that don't use runflags to determine which grid points are active. | |
typedef unsigned int | RslIncrType |
Iterators use an accelaration structure involving small increments. | |
typedef int(* | RslEntryFunc )(class RslContext *ctx, int argc, const class RslArg **argv) |
An RSL plugin function takes a context, number of arguments, and an array of arguments. | |
typedef RslIter< RtFloat > | RslFloatIter |
Float iterator. | |
typedef RslIter< RtString > | RslStringIter |
String iterator. | |
typedef RslIter< RtColor > | RslColorIter |
Color iterator. | |
typedef RslIter< RtVector > | RslVectorIter |
Vector iterator. | |
typedef RslIter< RtNormal > | RslNormalIter |
Normal iterator. | |
typedef RslIter< RtPoint > | RslPointIter |
Point iterator. | |
typedef RslIter< RtMatrix > | RslMatrixIter |
Matrix iterator. | |
typedef RslArrayIter< RtFloat > | RslFloatArrayIter |
Float array iterator. | |
typedef RslArrayIter< RtString > | RslStringArrayIter |
String array iterator. | |
typedef RslArrayIter< RtColor > | RslColorArrayIter |
Color array iterator. | |
typedef RslArrayIter< RtVector > | RslVectorArrayIter |
Vector array iterator. | |
typedef RslArrayIter< RtNormal > | RslNormalArrayIter |
Normal array iterator. | |
typedef RslArrayIter< RtPoint > | RslPointArrayIter |
Point array iterator. | |
typedef RslArrayIter< RtMatrix > | RslMatrixArrayIter |
Matrix array iterator. | |
typedef void(* | RslVoidFunc )(RixContext *context) |
A per-frame init/cleanup function takes a RixContext, which allows it to obtain interfaces for reporting errors, accessing global RixStorage, etc. |
|
Plugin API version number.
|
|
Color array iterator.
|
|
Color iterator.
|
|
An RSL plugin function takes a context, number of arguments, and an array of arguments. A non-zero return value indicates an error. |
|
Float array iterator.
|
|
Float iterator.
|
|
Iterators use an accelaration structure involving small increments.
|
|
Matrix array iterator.
|
|
Matrix iterator.
|
|
Normal array iterator.
|
|
Normal iterator.
|
|
Point array iterator.
|
|
Point iterator.
|
|
Most shadeops should use iterators to access data, but those that don't use runflags to determine which grid points are active.
|
|
String array iterator.
|
|
String iterator.
|
|
Vector array iterator.
|
|
Vector iterator.
|
|
A per-frame init/cleanup function takes a RixContext, which allows it to obtain interfaces for reporting errors, accessing global RixStorage, etc.
|