24 #ifndef __GUSD_PRIMWRAPPER_H__
25 #define __GUSD_PRIMWRAPPER_H__
107 typedef std::function<bool
122 const UsdStagePtr& stage,
137 getUsdName(
int gtPrimId );
142 isGroupType(
int gtPrimId );
163 static bool registerPrimDefinitionFuncForWrite(
int gtPrimId,
166 bool isGroupType =
false,
167 const char* usdName = NULL );
170 static bool registerPrimDefinitionFuncForRead(
const TfToken& usdTypeName,
183 virtual bool isValid()
const;
193 const char * viewportLod,
203 virtual bool redefine(
204 const UsdStagePtr& stage,
214 virtual bool updateFromGTPrim(
224 virtual void addLeadingBookend(
double curFrame,
double startFrame );
227 virtual void addTrailingBookend(
double curFrame );
279 bool forceWrite =
true );
288 bool updateAttributeFromGTPrim(
GT_Owner owner,
294 bool updatePrimvarFromGTPrim(
366 const char * templateName;
370 primNameFunc( NULL ),
371 isGroupType(
false ),
372 templateName(NULL) {}
377 const char * templateName_ ) :
378 writeFunc( writeFunc_ ),
379 primNameFunc( primNameFunc_ ),
380 isGroupType( isGroupType_ ),
381 templateName( templateName_ ) {}
384 struct TfTokenHashCmp {
388 static size_t hash(
const TfToken& key)
389 {
return key.
Hash(); }
395 TfToken, DefinitionForReadFunction, TfTokenHashCmp>
396 USDTypeToDefineFuncMap;
398 static GTTypeInfoMap s_gtTypeInfoMap;
399 static USDTypeToDefineFuncMap s_usdTypeToFuncMap;
400 static GTTypeSet s_supportedNativeGTTypes;
405 #endif // __GUSD_PRIMWRAPPER_H__
void markVisible(bool in)
Keep track of the visibility state of the prim for book marks.
A GT_Primitive that wraps a USD Prim.
GLboolean GLboolean GLboolean b
UsdTimeCode m_lastXformSet
AttrLastValueDict m_lastAttrValueDict
GT_API const UT_StringHolder time
GLsizei const GLchar *const * path
std::function< GT_PrimitiveHandle(const GT_PrimitiveHandle &, const UsdStagePtr &, const SdfPath &, const GusdContext &)> DefinitionForWriteFunction
AttrLastValueEntry(const UsdTimeCode &time, GT_DataArrayHandle data_)
std::pair< GT_Owner, std::string > AttrLastValueKeyType
static std::map< GT_Owner, TfToken > s_ownerToUsdInterp
GLuint const GLchar * name
std::function< bool(const GT_PrimitiveHandle &, std::string &primName)> GetPrimNameFunction
GusdPurposeSet m_purposes
UT_IntrusivePtr< GT_DataArray > GT_DataArrayHandle
GLboolean GLboolean GLboolean GLboolean a
GLsizei const GLchar *const * string
std::function< GT_DataArrayHandle(const GT_DataArrayHandle &)> ResampleArrayFunction
The base class for all GT primitive types.
#define UT_ConcurrentHashMap
UsdTimeCode m_lastXformCompared
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
#define PXR_NAMESPACE_CLOSE_SCOPE
bool equal(T1 a, T2 b, T3 t)
std::function< GT_PrimitiveHandle(const UsdGeomImageable &, UsdTimeCode, GusdPurposeSet)> DefinitionForReadFunction
UT_IntrusivePtr< GT_Primitive > GT_PrimitiveHandle
static std::map< GT_Owner, TfToken > s_ownerToUsdInterpCurve
size_t Hash() const
Return a size_t hash for this token.
std::map< SdfPath, UT_Matrix4D > GusdSimpleXformCache
UT_Map< AttrLastValueKeyType, AttrLastValueEntry > AttrLastValueDict