HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema Class Reference

#include <IMaterial.h>

+ Inheritance diagram for Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema:

Classes

class  NetworkNode
 

Public Types

typedef IMaterialSchema this_type
 
- Public Types inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< MaterialSchemaInfo >
typedef MaterialSchemaInfo info_type
 
typedef ISchema
< MaterialSchemaInfo > 
this_type
 
- Public Types inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ICompoundProperty
typedef ICompoundProperty this_type
 

Public Member Functions

 IMaterialSchema ()
 
 IMaterialSchema (const ICompoundProperty &iParent, const std::string &iName, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
 
 IMaterialSchema (const ICompoundProperty &iProp, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
 
 IMaterialSchema (const IMaterialSchema &iCopy)
 Copy constructor. More...
 
void getTargetNames (std::vector< std::string > &iTargetNames)
 
void getShaderTypesForTarget (const std::string &iTargetName, std::vector< std::string > &oShaderTypeNames)
 
bool getShader (const std::string &iTarget, const std::string &iShaderType, std::string &oResult)
 
Abc::ICompoundProperty getShaderParameters (const std::string &iTarget, const std::string &iShaderType)
 
size_t getNumNetworkNodes ()
 
void getNetworkNodeNames (std::vector< std::string > &oNames)
 
NetworkNode getNetworkNode (size_t iIndex)
 
NetworkNode getNetworkNode (const std::string &iNodeName)
 
void getNetworkTerminalTargetNames (std::vector< std::string > &oTargetNames)
 
void getNetworkTerminalShaderTypesForTarget (const std::string &iTargetName, std::vector< std::string > &oShaderTypeNames)
 
bool getNetworkTerminal (const std::string &iTarget, const std::string &iShaderType, std::string &oNodeName, std::string &oOutputName)
 
size_t getNumNetworkInterfaceParameterMappings ()
 
bool getNetworkInterfaceParameterMapping (size_t iIndex, std::string &oInterfaceParamName, std::string &oMapToNodeName, std::string &oMapToParamName)
 
void getNetworkInterfaceParameterMappingNames (std::vector< std::string > &oNames)
 
bool getNetworkInterfaceParameterMapping (const std::string &iInterfaceParamName, std::string &oMapToNodeName, std::string &oMapToParamName)
 
Abc::ICompoundProperty getNetworkInterfaceParameters ()
 
- Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< MaterialSchemaInfo >
 ISchema ()
 
 ISchema (const ICompoundProperty &iParent, const std::string &iName, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
 ISchema (const ICompoundProperty &iProperty, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
 ISchema (const ICompoundProperty &iProperty, WrapExistingFlag iFlag, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
virtual ~ISchema ()
 
- Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ICompoundProperty
 ICompoundProperty ()
 
 ICompoundProperty (const ICompoundProperty &iParent, const std::string &iName, const Argument &iArg0=Argument())
 
 ICompoundProperty (AbcA::CompoundPropertyReaderPtr iPtr, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
 ICompoundProperty (AbcA::CompoundPropertyReaderPtr iPtr, WrapExistingFlag, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
 ICompoundProperty (const IObject &iObject, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
 ICompoundProperty (const IObject &iObject, TopFlag, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
 
 ~ICompoundProperty ()
 
size_t getNumProperties () const
 Returns the number of properties contained in this ICompoundProperty. More...
 
const AbcA::PropertyHeadergetPropertyHeader (size_t i) const
 
const AbcA::PropertyHeadergetPropertyHeader (const std::string &iName) const
 
ICompoundProperty getParent () const
 
- Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
const AbcA::PropertyHeadergetHeader () const
 
const std::stringgetName () const
 
AbcA::PropertyType getPropertyType () const
 
bool isScalar () const
 
bool isArray () const
 
bool isCompound () const
 
bool isSimple () const
 
const AbcA::MetaDatagetMetaData () const
 
const AbcA::DataTypegetDataType () const
 
AbcA::TimeSamplingPtr getTimeSampling () const
 
IObject getObject () const
 
AbcA::CompoundPropertyReaderPtr getPtr () const
 
void reset ()
 
bool valid () const
 
 ALEMBIC_OPERATOR_BOOL (valid())
 
- Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::Base
ErrorHandlergetErrorHandler () const
 
ErrorHandler::Policy getErrorHandlerPolicy () const
 

Additional Inherited Members

- Static Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< MaterialSchemaInfo >
static const char * getSchemaTitle ()
 
static const char * getDefaultSchemaName ()
 
static bool matches (const AbcA::MetaData &iMetaData, SchemaInterpMatching iMatching=kStrictMatching)
 
static bool matches (const AbcA::PropertyHeader &iHeader, SchemaInterpMatching iMatching=kStrictMatching)
 
- Protected Types inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
typedef IBasePropertyT
< AbcA::CompoundPropertyReaderPtr
this_type
 
typedef IBasePropertyT
< AbcA::CompoundPropertyReaderPtr
operator_bool_base_type
 
- Protected Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
 IBasePropertyT ()
 
 IBasePropertyT (AbcA::CompoundPropertyReaderPtriPtr, ErrorHandler::Policy iPolicy)
 
- Protected Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::Base
 Base ()
 
 Base (ErrorHandler::Policy iPolicy)
 
 Base (const Base &iCopy)
 
Baseoperator= (const Base &iCopy)
 
bool valid () const
 
void reset ()
 
- Protected Attributes inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
AbcA::CompoundPropertyReaderPtr m_property
 

Detailed Description

Schema for reading and querying shader definitions from either an object or compound property. Only "monolithic" shader definitions (i.e. non network) are presently supported in this implementation.

Definition at line 52 of file IMaterial.h.

Member Typedef Documentation

Constructor & Destructor Documentation

Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::IMaterialSchema ( )
inline

Definition at line 62 of file IMaterial.h.

Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::IMaterialSchema ( const ICompoundProperty iParent,
const std::string iName,
const Abc::Argument iArg0 = Abc::Argument(),
const Abc::Argument iArg1 = Abc::Argument() 
)
inline

This constructor creates a new material reader. The first argument is the parent ICompoundProperty, from which the error handler policy for is derived. The second argument is the name of the ICompoundProperty that contains this schemas properties. The remaining optional arguments can be used to override the ErrorHandlerPolicy and to specify schema interpretation matching.

Definition at line 70 of file IMaterial.h.

Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::IMaterialSchema ( const ICompoundProperty iProp,
const Abc::Argument iArg0 = Abc::Argument(),
const Abc::Argument iArg1 = Abc::Argument() 
)
inline

This constructor wraps an existing ICompoundProperty as the material reader, and the error handler policy is derived from it. The remaining optional arguments can be used to override the ErrorHandlerPolicy and to specify schema interpretation matching.

Definition at line 84 of file IMaterial.h.

Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::IMaterialSchema ( const IMaterialSchema iCopy)
inline

Copy constructor.

Definition at line 93 of file IMaterial.h.

Member Function Documentation

bool Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkInterfaceParameterMapping ( size_t  iIndex,
std::string oInterfaceParamName,
std::string oMapToNodeName,
std::string oMapToParamName 
)
bool Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkInterfaceParameterMapping ( const std::string iInterfaceParamName,
std::string oMapToNodeName,
std::string oMapToParamName 
)
void Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkInterfaceParameterMappingNames ( std::vector< std::string > &  oNames)
Abc::ICompoundProperty Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkInterfaceParameters ( )
NetworkNode Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkNode ( size_t  iIndex)
NetworkNode Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkNode ( const std::string iNodeName)
void Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkNodeNames ( std::vector< std::string > &  oNames)
bool Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkTerminal ( const std::string iTarget,
const std::string iShaderType,
std::string oNodeName,
std::string oOutputName 
)
void Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkTerminalShaderTypesForTarget ( const std::string iTargetName,
std::vector< std::string > &  oShaderTypeNames 
)
void Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNetworkTerminalTargetNames ( std::vector< std::string > &  oTargetNames)
size_t Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNumNetworkInterfaceParameterMappings ( )
size_t Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getNumNetworkNodes ( )
bool Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getShader ( const std::string iTarget,
const std::string iShaderType,
std::string oResult 
)

Returns true and fills result with the shader name for a given target and shaderType if locally defined

Abc::ICompoundProperty Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getShaderParameters ( const std::string iTarget,
const std::string iShaderType 
)

Returns the enclosing compound property for the given target and shader type. Call .valid() on the result to determine whether it's locally defined or not.

void Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getShaderTypesForTarget ( const std::string iTargetName,
std::vector< std::string > &  oShaderTypeNames 
)

Fills a list of shader type strings for which either shader or parameter definitions are locally present for a given target. Shader type names match an agreed upon convention for shader terminals such as "surface," "displacement," "light", "coshader_somename."

void Alembic::AbcMaterial::ALEMBIC_VERSION_NS::IMaterialSchema::getTargetNames ( std::vector< std::string > &  iTargetNames)

Fills a list of target name strings for which either shader or parameter definitions are locally present. Target name values match an upon convention for a renderer or application (i.e. "prman") This gets the target names for the monolithic shaders


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