35 #ifndef IECOREHOUDINI_FROMHOUDINIGROUPCONVERTER_H
36 #define IECOREHOUDINI_FROMHOUDINIGROUPCONVERTER_H
38 #include "IECore/Group.h"
40 #include "IECoreHoudini/TypeIds.h"
41 #include "IECoreHoudini/FromHoudiniGeometryConverter.h"
60 static FromHoudiniGeometryConverter::Convertability
canConvert(
const GU_Detail *geo );
71 virtual IECore::ObjectPtr
doConversion( IECore::ConstCompoundObjectPtr operands )
const;
78 typedef std::map<unsigned, GA_PrimitiveGroup*> PrimIdGroupMap;
79 typedef PrimIdGroupMap::value_type PrimIdGroupPair;
80 typedef PrimIdGroupMap::iterator PrimIdGroupMapIterator;
82 typedef std::pair<std::string, unsigned> AttributePrimIdPair;
83 typedef std::map<AttributePrimIdPair, GA_PrimitiveGroup*> AttributePrimIdGroupMap;
84 typedef AttributePrimIdGroupMap::value_type AttributePrimIdGroupPair;
85 typedef AttributePrimIdGroupMap::iterator AttributePrimIdGroupMapIterator;
88 void constructCommon();
91 size_t doGroupConversion(
const GU_Detail *geo, GA_PrimitiveGroup *group, IECore::VisibleRenderablePtr &result,
const IECore::CompoundObject *operands )
const;
94 void convertAndAddPrimitive( GU_Detail *geo, GA_PrimitiveGroup *group, IECore::GroupPtr &result,
const IECore::CompoundObject *operands,
const std::string &name =
"" )
const;
100 size_t regroup( GU_Detail *geo, PrimIdGroupMap &groupMap )
const;
113 #endif // IECOREHOUDINI_FROMHOUDINIGROUPCONVERTER_H
Definition: FromHoudiniGroupConverter.h:48
The IECoreHoudini namespace holds all the functionality of libIECoreHoudini.
Definition: CoreHoudini.h:51
Definition: FromHoudiniGeometryConverter.h:65
const GU_DetailHandle & handle() const
returns a reference to the GU_DetailHandle
Definition: CompoundObject.h:46
Definition: FromHoudiniGeometryConverter.h:123
static FromHoudiniGeometryConverter::Convertability canConvert(const GU_Detail *geo)
Determines if the given GU_Detail can be converted.
virtual IECore::ObjectPtr doConversion(IECore::ConstCompoundObjectPtr operands) const
Re-implemented to perform conversion to an IECore::Group.
virtual IECore::ObjectPtr doDetailConversion(const GU_Detail *geo, const IECore::CompoundObject *operands) const
Uses the factory mechanism to find the best converter for the given GU_Detail.