|
static void | supportedTypes (std::set< IECore::TypeId > &types) |
|
static GU_DetailHandle | extract (const GU_Detail *geo, const UT_StringMMPattern &nameFilter) |
|
|
static FromHoudiniGeometryConverterPtr | create (const GU_DetailHandle &handle, IECore::TypeId resultType=IECore::InvalidTypeId) |
|
static FromHoudiniGeometryConverterPtr | create (const GU_DetailHandle &handle, const std::set< IECore::TypeId > &resultTypes) |
|
static TypeId | staticTypeId () |
| Returns the TypeId for this class, without needing an instance.
|
|
static const char * | staticTypeName () |
| Returns the type name for this class, without needing an instance.
|
|
static TypeId | baseTypeId () |
|
static const char * | baseTypeName () |
|
static bool | inheritsFrom (TypeId typeId) |
| Returns true if this class inherits from the specified type.
|
|
static bool | inheritsFrom (const char *typeName) |
| Returns true if this class inherits from the specified type.
|
|
static bool | inheritsFrom (TypeId type, TypeId baseType) |
| Returns true if type inherits from baseType.
|
|
static bool | inheritsFrom (const char *typeName, const char *baseTypeName) |
| Returns true if typeName inherits from baseTypeName.
|
|
static TypeId | baseTypeId (TypeId typeId) |
| Returns the base type of the given type, or InvalidTypeId if no such base exists.
|
|
static const std::vector< TypeId > & | baseTypeIds (TypeId typeId) |
|
static const std::set< TypeId > & | derivedTypeIds (TypeId typeId) |
|
static TypeId | typeIdFromTypeName (const char *typeName) |
|
static const char * | typeNameFromTypeId (TypeId typeId) |
|
static void | registerType (TypeId derivedTypeId, const char *derivedTypeName, TypeId baseTypeId) |
| Allows external modules to register their own type ids.
|
|
|
typedef FromHoudiniGeometryConverterPtr(* | CreatorFn) (const GU_DetailHandle &handle) |
|
typedef Convertability(* | ConvertabilityFn) (const GU_DetailHandle &handle) |
|
typedef std::map< std::string, std::vector< RemapInfo > > | AttributeMap |
| Attribute remapping.
|
|
typedef std::map< TypeId, TypeId > | BaseTypeRegistryMap |
|
typedef std::map< TypeId, std::vector< TypeId > > | BaseTypesRegistryMap |
|
typedef std::map< TypeId, std::set< TypeId > > | DerivedTypesRegistryMap |
|
typedef tbb::spin_rw_mutex | Mutex |
|
typedef std::map< TypeId, std::string > | TypeIdsToTypeNamesMap |
|
typedef std::map< std::string, TypeId > | TypeNamesToTypeIdsMap |
|
|
| FromHoudiniGeometryConverter (const GU_DetailHandle &handle, const std::string &description) |
|
| FromHoudiniGeometryConverter (const SOP_Node *sop, const std::string &description) |
|
virtual IECore::ObjectPtr | doConversion (IECore::ConstCompoundObjectPtr operands) const |
|
virtual IECore::ObjectPtr | doDetailConversion (const GU_Detail *geo, const IECore::CompoundObject *operands) const =0 |
| Must be implemented by derived classes to return an IECore::Object created to represent the specified GU_Detail.
|
|
const GU_DetailHandle & | handle () const |
| returns a reference to the GU_DetailHandle
|
|
void | transferAttribs (const GU_Detail *geo, IECore::Primitive *result, const IECore::CompoundObject *operands, IECore::PrimitiveVariable::Interpolation vertexInterpolation=IECore::PrimitiveVariable::FaceVarying, IECore::PrimitiveVariable::Interpolation primitiveInterpolation=IECore::PrimitiveVariable::Uniform, IECore::PrimitiveVariable::Interpolation pointInterpolation=IECore::PrimitiveVariable::Vertex, IECore::PrimitiveVariable::Interpolation detailInterpolation=IECore::PrimitiveVariable::Constant) const |
|
void | remapAttributes (const GU_Detail *geo, AttributeMap &pointAttributeMap, AttributeMap &primitiveAttributeMap) const |
|
void | transferDetailAttribs (const GU_Detail *geo, const UT_StringMMPattern &attribFilter, IECore::Primitive *result, IECore::PrimitiveVariable::Interpolation interpolation) const |
| Utility functions for transfering each attrib type from Houdini onto the IECore::Primitive provided.
|
|
void | transferElementAttribs (const GU_Detail *geo, const GA_Range &range, const GA_AttributeDict &attribs, const UT_StringMMPattern &attribFilter, AttributeMap &attributeMap, IECore::Primitive *result, IECore::PrimitiveVariable::Interpolation interpolation) const |
|
void | transferAttribData (IECore::Primitive *result, IECore::PrimitiveVariable::Interpolation interpolation, const GA_ROAttributeRef &attrRef, const GA_Range &range, const RemapInfo *remapInfo=0) const |
|
template<typename T > |
T::Ptr | extractData (const GA_Attribute *attr, const GA_Range &range, int elementIndex=-1) const |
|
template<typename T > |
T::Ptr | extractData (const GA_Attribute *attr) const |
|
IECore::DataPtr | extractStringVectorData (const GA_Attribute *attr, const GA_Range &range, IECore::IntVectorDataPtr &indexData) const |
|
IECore::DataPtr | extractStringData (const GU_Detail *geo, const GA_Attribute *attr) const |
|
| FromHoudiniConverter (const std::string &description) |
|
| ToCoreConverter (const std::string &description) |
|
| Converter (const std::string &description) |
|
|
static void | registerConverter (IECore::TypeId resultType, CreatorFn creator, ConvertabilityFn canConvert) |
|
static const GU_DetailHandle | handle (const SOP_Node *sop) |
| extracts the GU_DetailHandle from a SOP_Node
|
|
static BaseTypeRegistryMap & | baseTypeRegistry () |
|
static DerivedTypesRegistryMap & | derivedTypesRegistry () |
|
static BaseTypesRegistryMap & | completeBaseTypesRegistry () |
|
static DerivedTypesRegistryMap & | completeDerivedTypesRegistry () |
|
static void | derivedTypeIdsWalk (TypeId typeId, std::set< TypeId > &) |
|
static TypeIdsToTypeNamesMap & | typeIdsToTypeNames () |
|
static TypeNamesToTypeIdsMap & | typeNamesToTypeIds () |
|
The FromHoudiniGeometryConverter class forms a base class for all classes able to perform some kind of conversion from a Houdini GU_Detail to an IECore::Object. The most common use is conversion to an IECore::Primitive, but any Object could be supported.