Cortex  10.0.0-a4
Public Member Functions | List of all members
IECoreRI::ParameterList Class Reference

#include <ParameterList.h>

Public Member Functions

 ParameterList (const IECore::CompoundDataMap &parameters, const std::map< std::string, std::string > *typeHints=nullptr)
 
 ParameterList (const IECore::CompoundDataMap &parameters, const std::string &prefix, const std::map< std::string, std::string > *typeHints=nullptr)
 
 ParameterList (const std::string &name, const IECore::Data *parameter, const std::map< std::string, std::string > *typeHints=nullptr)
 Convenience function for constructing a ParameterList of length 1.
 
int n ()
 
char ** tokens ()
 
void ** values ()
 

Detailed Description

This class provides a means of converting from an IECore::CompoundDataMap to the form passable through the Renderman Interface.

Constructor & Destructor Documentation

IECoreRI::ParameterList::ParameterList ( const IECore::CompoundDataMap parameters,
const std::map< std::string, std::string > *  typeHints = nullptr 
)

Construct a new ParameterList given some parameters in a map. Note that the ParameterList refers to data within the parameters object, and expects that data to exist for as long as you still use the ParameterList (it doesn't copy the list for efficiency reasons). If provided, the typeHints map is used to resolve the type of ambiguous types such as V3fData, which could represent points, normals or vectors. The typeHints map simply maps from the name of the primitive variable to the Renderman type token. It too is expected to exist for as long as you still use the ParameterList.

IECoreRI::ParameterList::ParameterList ( const IECore::CompoundDataMap parameters,
const std::string &  prefix,
const std::map< std::string, std::string > *  typeHints = nullptr 
)

As above but uses only parameters beginning with the specified prefix, and strips the prefix off when creating the parameter names.

Member Function Documentation

int IECoreRI::ParameterList::n ( )

Returns the number of parameters, to be passed as the n argument to the Ri call.

char** IECoreRI::ParameterList::tokens ( )

Returns the tokens to be passed to the Ri call. Note that these have been cast to a non-const form to fit the Ri interface, but you must absolutely not modify the data.

void** IECoreRI::ParameterList::values ( )

Returns the values to be passed to the Ri call. Note that these have been cast to a non-const form to fit the Ri interface, but you must absolutely not modify the data.


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