37 #ifndef Alembic_AbcMaterial_MaterialFlatten_h
38 #define Alembic_AbcMaterial_MaterialFlatten_h
44 namespace AbcMaterial {
88 void getTargetNames( std::vector<std::string> & oTargetNames );
92 void getShaderTypesForTarget(
const std::string & iTargetName,
93 std::vector<std::string> & oShaderTypeNames );
137 void getShaderParameters(
const std::string & iTarget,
144 void getNetworkTerminalTargetNames(std::vector<std::string> & iTargetNames);
145 void getNetworkTerminalShaderTypesForTarget(
147 std::vector<std::string> & oShaderTypeNames );
149 bool getNetworkTerminal(
const std::string & iTarget,
176 : inputName( iInputName )
177 , connectedNodeName( iConnectedNodeName )
178 , connectedOutputName( iConnectedOutputName )
207 std::vector<IMaterialSchema::NetworkNode> m_nodes;
208 std::vector<Abc::ICompoundProperty> m_networkParameters;
212 size_t getNumNetworkNodes();
222 void flattenNetwork();
224 bool m_networkFlattened;
226 std::vector<std::string> m_nodeNames;
227 typedef std::map<std::string, StringMapPtr> StringMapMap;
228 StringMapMap m_nodesToInterfaceMappings;
std::vector< Connection > ConnectionVector
std::vector< ParameterEntry > ParameterEntryVector
GLsizei const GLchar *const * string
ParameterEntry(const std::string &iName, Abc::ICompoundProperty iParent, const AbcCoreAbstract::PropertyHeader *iHeader)
PXL_API const char * getName(const ColorSpace *space)
Return the name of the color space.
bool operator==(const ParameterEntry &iRhs) const
std::vector< IMaterialSchema > SchemaVector
GLuint const GLchar * name
Alembic::Util::shared_ptr< StringMap > StringMapPtr
std::string connectedOutputName
bool operator==(const Connection &iRhs) const
std::string connectedNodeName
const AbcCoreAbstract::PropertyHeader * header
std::map< std::string, std::string > StringMap
Connection(const std::string &iInputName, const std::string &iConnectedNodeName, const std::string &iConnectedOutputName)
Abc::ICompoundProperty parent
#define ALEMBIC_VERSION_NS