... is there some deeper story behind this?
GUI_PolySoupBox(const GR_RenderInfo *info, const char *cache_name, const GEO_Primitive *prim);
and then
GUI_PolySoupBox::GUI_PolySoupBox(const GR_RenderInfo *info, const char *cache_name, const GEO_Primitive *prim)
: GR_Primitive(info, cache_name, GA_PrimCompat::TypeMask(0))
?Still not ticking? Lets continue
GR_Primitive constructor takes
(const GR_RenderInfo* info, const char* cachename, GEO_PrimTypeCompat::TypeMask primitivetype)
GUI_PolySoupBox last argument is
const GEO_Primitive *prim
and we are setting GR_Primitive last argument as
GA_PrimCompat::TypeMask(0)
I don't see const GEO_Primitive *prim being used anywhere, but I could miss something, so what's the point?Maybe the point of this is to make something like
return new GUI_PolySoupBox(info, cache_name, GA_PrimCompat::TypeMask(prim->getTypeId().get()));
instead of
return new GUI_PolySoupBox(info, cache_name, prim);
?Every GUI example in HDK docs have this.
Thanks!
BTW:
What is this GA_PrimCompat::TypeMask? Is there some enum anywhere with values for this that I can use?
BTW2:
Looking at GUI_PolySoupBoxHook::createPrimitive(), there is a check for type of the GEO primitive, then we create new GUI_PolySoupBox() so it would be logical to set GA_PrimCompat::TypeMask instead of passing const GEO_Primitive.