HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GABC_NAMESPACE::GABC_PackedImpl Class Reference

#include <GABC_PackedImpl.h>

+ Inheritance diagram for GABC_NAMESPACE::GABC_PackedImpl:

Classes

class  GTCache
 

Public Member Functions

 GABC_PackedImpl ()
 
 GABC_PackedImpl (const GABC_PackedImpl &src)
 
 ~GABC_PackedImpl () override
 
GU_PackedFactorygetFactory () const override
 Get the factory associated with this procedural. More...
 
GU_PackedImplcopy () const override
 Create a copy of this resolver. More...
 
int64 getMemoryUsage (bool inclusive) const override
 Report memory usage (includes all shared memory) More...
 
void countMemory (UT_MemoryCounter &counter, bool inclusive) const override
 
bool isValid () const override
 Test whether the deferred load primitive data is valid. More...
 
void clearData () override
 
bool load (GU_PrimPacked *prim, const UT_Options &options, const GA_LoadMap &map) override
 Give a UT_Options of load data, create resolver data for the primitive. More...
 
bool supportsJSONLoad () const override
 
bool loadFromJSON (GU_PrimPacked *prim, const UT_JSONValueMap &options, const GA_LoadMap &map) override
 
void update (GU_PrimPacked *prim, const UT_Options &options) override
 
bool save (UT_Options &options, const GA_SaveMap &map) const override
 Copy the resolver data into the UT_Options for saving. More...
 
bool loadUnknownToken (const char *token, UT_JSONParser &p, const GA_LoadMap &map) override
 
bool getBounds (UT_BoundingBox &box) const override
 Get the bounding box for the geometry (not including transforms) More...
 
bool getRenderingBounds (UT_BoundingBox &box) const override
 
void getVelocityRange (UT_Vector3 &min, UT_Vector3 &max) const override
 
void getWidthRange (fpreal &min, fpreal &max) const override
 
void getPrimitiveName (const GU_PrimPacked *prim, UT_WorkBuffer &wbuf) const override
 
bool getLocalTransform (UT_Matrix4D &m) const override
 
bool unpack (GU_Detail &destgdp, const UT_Matrix4D *transform) const override
 
bool unpackUsingPolygons (GU_Detail &destgdp, const GU_PrimPacked *prim) const override
 Unpack without using polygon soups. More...
 
void setFacesetAttribute (const UT_StringHolder &s) override
 Alembic packed primitives do have a faceset attribute, so set it. More...
 
const UT_StringHolderfacesetAttribute () const override
 Alembic packed primitives do have a faceset attribute, so return it. More...
 
void setAttributeNameMap (const GEO_PackedNameMapPtr &m) override
 
const GEO_PackedNameMapPtrattributeNameMap () const override
 
void setSharedNameMapData (GA_SharedDataHandlePtr s) override
 This should only be called during load. More...
 
GT_PrimitiveHandle instanceGT (bool ignore_visibility=false) const
 
GT_TransformHandle xformGT (const GU_PrimPacked *packed) const
 
const GABC_IObjectobject () const
 
const UT_StringArrayfilenames () const
 
UT_StringHolder filenamesJSON () const
 
UT_StringHolder intrinsicFilename (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicFilenamesJSON (const GU_PrimPacked *prim) const
 
const UT_StringHolderobjectPath () const
 
UT_StringHolder intrinsicObjectPath (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicSourcePath (const GU_PrimPacked *prim) const
 
int64 intrinsicPointCount (const GU_PrimPacked *prim) const
 
fpreal frame () const
 
fpreal intrinsicFrame (const GU_PrimPacked *prim) const
 
bool useTransform () const
 
bool intrinsicUseTransform (const GU_PrimPacked *prim) const
 
bool useVisibility () const
 
bool intrinsicUseVisibility (const GU_PrimPacked *prim) const
 
GABC_NodeType nodeType () const
 
GEO_AnimationType animationType () const
 
int currentLoadStyle () const
 
bool isConstant () const
 
const char * intrinsicAnimation (const GU_PrimPacked *prim) const
 
const char * intrinsicNodeType (const GU_PrimPacked *prim) const
 
int64 intrinsicVisibility (const GU_PrimPacked *prim) const
 
int64 intrinsicFullVisibility (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicPoint (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicVertex (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicPrimitive (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicDetail (const GU_PrimPacked *prim) const
 
UT_StringHolder intrinsicFaceSet (const GU_PrimPacked *prim) const
 
int64 getPropertiesHash () const
 
void setObject (const GABC_IObject &v)
 
void setFilename (GU_PrimPacked *prim, const UT_StringHolder &v)
 
void setFilenames (GU_PrimPacked *prim, const UT_StringArray &v)
 
void setFilenamesJSON (GU_PrimPacked *prim, const UT_StringHolder &v)
 
void setObjectPath (GU_PrimPacked *prim, const UT_StringHolder &v)
 
void setFrame (GU_PrimPacked *prim, fpreal f)
 
void setUseTransform (GU_PrimPacked *prim, bool v)
 
void setUseVisibility (GU_PrimPacked *prim, bool v)
 
bool visibleGT (bool *is_animated=NULL) const
 
GT_PrimitiveHandle fullGT (const GU_PrimPacked *packed, int load_style=GABC_IObject::GABC_LOAD_FULL) const
 
GT_PrimitiveHandle pointGT (const GU_PrimPacked *packed) const
 
GT_PrimitiveHandle boxGT (const GU_PrimPacked *packed) const
 
GT_PrimitiveHandle centroidGT (const GU_PrimPacked *packed) const
 
- Public Member Functions inherited from GU_PackedImpl
 GU_PackedImpl ()
 
virtual ~GU_PackedImpl ()
 
 GU_PackedImpl (const GU_PackedImpl &src)=default
 
GU_PackedImploperator= (const GU_PackedImpl &src)=default
 
virtual bool saveSharedData (UT_JSONWriter &w, GA_SaveMap &map, GA_GeometryIndex *geo_index) const
 
virtual bool loadSharedData (int load_data_type, const GA_SharedLoadData *item)
 
bool getBoundsCached (UT_BoundingBox &box) const
 
virtual bool getVisibleBounds (UT_BoundingBox &box) const
 
bool getVisibleBoundsCached (UT_BoundingBox &box) const
 
virtual bool unpackWithContext (GU_Detail &destgdp, GU_PackedContext &context, const GU_PrimPacked *prim) const
 
bool unpack (GU_Detail &destgdp, const GU_PrimPacked *prim) const
 
virtual bool unpackWithStyler (GU_Detail &destgdp, STY_StylerGroup &prim_styler_group, const STY_Styler &parent_styler, const GU_PrimPacked *prim) const
 
virtual void forceLoad () const
 
virtual bool isLoaded () const
 
virtual GU_ConstDetailHandle getPackedDetail (GU_PackedContext *context=0) const
 
bool pointInstanceTransform () const
 
bool intrinsicPointInstanceTransform (const GU_PrimPacked *prim) const
 
void setPointInstanceTransform (GU_PrimPacked *prim, bool b)
 Set whether point instancing should be used. More...
 
virtual bool saveCachedBBox () const
 
SYS_FORCE_INLINE bool isShared () const
 
SYS_FORCE_INLINE GU_PackedImplcopyIfShared ()
 
int64 intrinsic3Tuple (const GU_PrimPacked *prim) const
 
int64 intrinsic6Tuple (const GU_PrimPacked *prim) const
 
int64 intrinsic9Tuple (const GU_PrimPacked *prim) const
 
int64 intrinsic16Tuple (const GU_PrimPacked *prim) const
 
std::string intrinsicPrimitiveName (const GU_PrimPacked *prim) const
 
const char * intrinsicFactoryName (const GU_PrimPacked *prim) const
 
const char * intrinsicFactoryLabel (const GU_PrimPacked *prim) const
 
void intrinsicPackedBox (const GU_PrimPacked *prim, fpreal64 *vals, exint sz) const
 
void intrinsicPackedRenderBox (const GU_PrimPacked *prim, fpreal64 *vals, exint sz) const
 
void intrinsicPivot (const GU_PrimPacked *prim, fpreal64 *vals, exint sz) const
 
void intrinsicSetPivot (GU_PrimPacked *prim, const fpreal64 *vals, exint sz)
 
void intrinsicPrimTransform (const GU_PrimPacked *prim, fpreal64 *vals, exint sz) const
 
void intrinsicSetPrimTransform (GU_PrimPacked *prim, const fpreal64 *v, exint sz)
 
void intrinsicPackedTransform (const GU_PrimPacked *prim, fpreal64 *v, exint sz) const
 
void intrinsicFullTransform (const GU_PrimPacked *prim, fpreal64 *v, exint sz) const
 
const char * intrinsicViewportLOD (const GU_PrimPacked *prim) const
 
void intrinsicSetViewportLOD (GU_PrimPacked *prim, const char *lod)
 
- Public Member Functions inherited from UT_IntrusiveRefCounter< GU_PackedImpl >
SYS_FORCE_INLINE UT_IntrusiveRefCounter () noexcept
 Default constructor: Sets counter to 0. More...
 
SYS_FORCE_INLINE UT_IntrusiveRefCounter (const UT_IntrusiveRefCounter &) noexcept
 Copy constructor: Sets counter to 0. More...
 
UT_IntrusiveRefCounteroperator= (const UT_IntrusiveRefCounter &) noexcept
 Assignment operator: Does not modify counter. More...
 
SYS_FORCE_INLINE uint32 use_count () const noexcept
 Return current counter. More...
 
SYS_FORCE_INLINE bool conditionalAddRef () noexcept
 

Static Public Member Functions

static void install (GA_PrimitiveFactory *fact)
 
static bool isInstalled ()
 
static GA_PrimitiveTypeId typeId ()
 
static GU_PrimPackedbuild (GU_Detail &gdp, const UT_StringArray &filenames, const GABC_IObject &obj, fpreal frame, bool useTransform, bool useVisibility)
 
- Static Public Member Functions inherited from GU_PackedImpl
static bool computeVelocityRange (const GU_Detail *gdp, UT_Vector3 &vmin, UT_Vector3 &vmax)
 
static bool computeWidthRange (const GU_Detail *gdp, fpreal &wmin, fpreal &wmax)
 

Protected Member Functions

bool unpackWithPrim (GU_Detail &destgdp, const UT_Matrix4D *transform, const GU_PrimPacked *prim) const override
 
template<typename T >
bool loadFrom (GU_PrimPacked *prim, const T &options, const GA_LoadMap &map)
 Method to load from either UT_Options or UT_JSONValueMap. More...
 
- Protected Member Functions inherited from GU_PackedImpl
const UT_BoundingBoxboxCache () const
 
void setBoxCache (const UT_BoundingBox &b)
 
template<typename T >
void setBoxCache (const T b[6])
 
void clearBoxCache ()
 
bool unpackToDetail (GU_Detail &destgdp, GU_Detail *src, const UT_Matrix4D *transform) const
 
bool unpackToDetail (GU_Detail &destgdp, const GU_Detail *src, const UT_Matrix4D *transform) const
 
bool unpackToDetail (GU_Detail &destgdp, const GU_ConstDetailHandle &gdh, const UT_Matrix4D *transform) const
 Unpack the source detail handle. More...
 
virtual UT_Vector3 getBaryCenter () const
 Optional method to compute centroid (default uses bounding box) More...
 
virtual fpreal computeVolume (const UT_Vector3 &refpt) const
 Optional method to calculate volume (default uses bounding box) More...
 
virtual fpreal computeArea () const
 Optional method to calculate surface area (default uses bounding box) More...
 
virtual fpreal computePerimeter () const
 Optional method to calculate perimeter (default uses bounding box) More...
 
- Protected Member Functions inherited from UT_IntrusiveRefCounter< GU_PackedImpl >
SYS_FORCE_INLINE ~UT_IntrusiveRefCounter ()
 Destructor: Only derived classes can destruct this. More...
 

Additional Inherited Members

- Public Types inherited from GU_PackedImpl
typedef fpreal(GU_PackedImpl::* FloatGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* FloatSetter )(const GU_PrimPacked *, fpreal)
 
typedef GA_Size(GU_PackedImpl::* IntGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* IntSetter )(GU_PrimPacked *, GA_Size)
 
typedef bool(GU_PackedImpl::* BoolGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* BoolSetter )(GU_PrimPacked *, bool)
 
typedef const char
*(GU_PackedImpl::* 
StringGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* StringSetter )(GU_PrimPacked *, const char *)
 
typedef UT_OptionsHolder(GU_PackedImpl::* DictGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* DictSetter )(GU_PrimPacked *, const UT_OptionsHolder &)
 
typedef std::string(GU_PackedImpl::* StdStringGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* StdStringSetter )(GU_PrimPacked *, const std::string &)
 
typedef UT_StringHolder(GU_PackedImpl::* StringHolderGetter )(const GU_PrimPacked *) const
 
typedef void(GU_PackedImpl::* StringHolderSetter )(GU_PrimPacked *, const UT_StringHolder &)
 
typedef fpreal(GU_PackedImpl::* FloatTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* FloatTupleSetter )(GU_PrimPacked *, exint, fpreal)
 
typedef GA_Size(GU_PackedImpl::* IntTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* IntTupleSetter )(GU_PrimPacked *, exint, GA_Size)
 
typedef bool(GU_PackedImpl::* BoolTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* BoolTupleSetter )(GU_PrimPacked *, exint, bool)
 
typedef const char
*(GU_PackedImpl::* 
StringTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* StringTupleSetter )(GU_PrimPacked *, exint, const char *)
 
typedef UT_OptionsHolder(GU_PackedImpl::* DictTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* DictTupleSetter )(GU_PrimPacked *, exint, const UT_OptionsHolder &)
 
typedef const std::string
&(GU_PackedImpl::* 
StdStringTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* StdStringTupleSetter )(GU_PrimPacked *, exint, const std::string &)
 
typedef const UT_StringHolder
&(GU_PackedImpl::* 
StringHolderTupleGetter )(const GU_PrimPacked *, exint) const
 
typedef void(GU_PackedImpl::* StringHolderTupleSetter )(GU_PrimPacked *, exint, const UT_StringHolder &)
 
typedef void(GU_PackedImpl::* F32VectorGetter )(const GU_PrimPacked *, fpreal32 *, exint) const
 
typedef void(GU_PackedImpl::* F32VectorSetter )(GU_PrimPacked *, const fpreal32 *, exint)
 
typedef void(GU_PackedImpl::* F64VectorGetter )(const GU_PrimPacked *, fpreal64 *, exint) const
 
typedef void(GU_PackedImpl::* F64VectorSetter )(GU_PrimPacked *, const fpreal64 *, exint)
 
typedef void(GU_PackedImpl::* I32VectorGetter )(const GU_PrimPacked *, int32 *, exint) const
 
typedef void(GU_PackedImpl::* I32VectorSetter )(GU_PrimPacked *, const int32 *, exint)
 
typedef void(GU_PackedImpl::* I64VectorGetter )(const GU_PrimPacked *, int64 *, exint) const
 
typedef void(GU_PackedImpl::* I64VectorSetter )(GU_PrimPacked *, const int64 *, exint)
 
typedef void(GU_PackedImpl::* BVectorGetter )(const GU_PrimPacked *, bool *, exint) const
 
typedef void(GU_PackedImpl::* BVectorSetter )(GU_PrimPacked *, const bool *, exint)
 
typedef void(GU_PackedImpl::* StringArrayGetter )(const GU_PrimPacked *, UT_StringArray &) const
 
typedef void(GU_PackedImpl::* StringArraySetter )(GU_PrimPacked *, const UT_StringArray &)
 
typedef void(GU_PackedImpl::* DictArrayGetter )(const GU_PrimPacked *, UT_Array< UT_OptionsHolder > &) const
 
typedef void(GU_PackedImpl::* DictArraySetter )(GU_PrimPacked *, const UT_Array< UT_OptionsHolder > &)
 
- Static Protected Member Functions inherited from GU_PackedImpl
static void copyPrimitiveGroups (GU_Detail &dest, const GU_Detail &src, GA_Offset src_offset, bool force=false)
 
template<typename T >
static bool import (const UT_JSONValueMap &options, const UT_StringRef &key, T &value)
 
template<typename T >
static bool import (const UT_Options &options, const UT_StringRef &key, T &value)
 
- Static Protected Attributes inherited from GU_PackedImpl
static const GEO_PackedNameMapPtr theNullPackedNameMapPtr
 

Detailed Description

Definition at line 41 of file GABC_PackedImpl.h.

Constructor & Destructor Documentation

GABC_NAMESPACE::GABC_PackedImpl::GABC_PackedImpl ( )
GABC_NAMESPACE::GABC_PackedImpl::GABC_PackedImpl ( const GABC_PackedImpl src)
GABC_NAMESPACE::GABC_PackedImpl::~GABC_PackedImpl ( )
override

Member Function Documentation

GEO_AnimationType GABC_NAMESPACE::GABC_PackedImpl::animationType ( ) const
const GEO_PackedNameMapPtr& GABC_NAMESPACE::GABC_PackedImpl::attributeNameMap ( ) const
inlineoverridevirtual

Default implementation just returns the default null name map.

Reimplemented from GU_PackedImpl.

Definition at line 178 of file GABC_PackedImpl.h.

GT_PrimitiveHandle GABC_NAMESPACE::GABC_PackedImpl::boxGT ( const GU_PrimPacked packed) const

Return GT representations of geometry

static GU_PrimPacked* GABC_NAMESPACE::GABC_PackedImpl::build ( GU_Detail gdp,
const UT_StringArray filenames,
const GABC_IObject obj,
fpreal  frame,
bool  useTransform,
bool  useVisibility 
)
static

Note: The caller is responsible for setting the vertex/point for the primitive. In non-Alembic packed primitive code, you probably just want to call GU_PrimPacked::build(gdp, "AlembicRef") which handles the point creation automatically (see the packedsphere HDK sample code).

GT_PrimitiveHandle GABC_NAMESPACE::GABC_PackedImpl::centroidGT ( const GU_PrimPacked packed) const

Return GT representations of geometry

void GABC_NAMESPACE::GABC_PackedImpl::clearData ( )
overridevirtual

Method to clear any data associated with the implementation. It's possible that the implementation may need to re-construct the data, but this should clear what it can.

Implements GU_PackedImpl.

GU_PackedImpl* GABC_NAMESPACE::GABC_PackedImpl::copy ( ) const
overridevirtual

Create a copy of this resolver.

Implements GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::countMemory ( UT_MemoryCounter counter,
bool  inclusive 
) const
overridevirtual

Count memory usage using a UT_MemoryCounter in order to count shared memory correctly.

Implements GU_PackedImpl.

int GABC_NAMESPACE::GABC_PackedImpl::currentLoadStyle ( ) const
inline

Definition at line 234 of file GABC_PackedImpl.h.

const UT_StringHolder& GABC_NAMESPACE::GABC_PackedImpl::facesetAttribute ( ) const
inlineoverridevirtual

Alembic packed primitives do have a faceset attribute, so return it.

Reimplemented from GU_PackedImpl.

Definition at line 173 of file GABC_PackedImpl.h.

const UT_StringArray& GABC_NAMESPACE::GABC_PackedImpl::filenames ( ) const
inline

Definition at line 211 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::filenamesJSON ( ) const
fpreal GABC_NAMESPACE::GABC_PackedImpl::frame ( ) const
inline

Definition at line 226 of file GABC_PackedImpl.h.

GT_PrimitiveHandle GABC_NAMESPACE::GABC_PackedImpl::fullGT ( const GU_PrimPacked packed,
int  load_style = GABC_IObject::GABC_LOAD_FULL 
) const

Return GT representations of geometry

bool GABC_NAMESPACE::GABC_PackedImpl::getBounds ( UT_BoundingBox box) const
overridevirtual

Get the bounding box for the geometry (not including transforms)

Implements GU_PackedImpl.

GU_PackedFactory* GABC_NAMESPACE::GABC_PackedImpl::getFactory ( ) const
overridevirtual

Get the factory associated with this procedural.

Implements GU_PackedImpl.

bool GABC_NAMESPACE::GABC_PackedImpl::getLocalTransform ( UT_Matrix4D m) const
overridevirtual

Some procedurals have an "intrinsic" transform. These are combined with the local transform on the geometry primitive.

The default method returns false and leaves the transform unchanged.

Reimplemented from GU_PackedImpl.

int64 GABC_NAMESPACE::GABC_PackedImpl::getMemoryUsage ( bool  inclusive) const
overridevirtual

Report memory usage (includes all shared memory)

Implements GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::getPrimitiveName ( const GU_PrimPacked prim,
UT_WorkBuffer wbuf 
) const
overridevirtual

Return the primitive's "description". This should be a unique identifier for the primitive and defaults to: "%s.%d" % (getFactory()->name(), prim->getMapIndex())

Reimplemented from GU_PackedImpl.

int64 GABC_NAMESPACE::GABC_PackedImpl::getPropertiesHash ( ) const

Returns a sys_wang64 hash of the sum of 64B values making up the Alembic property hash.

bool GABC_NAMESPACE::GABC_PackedImpl::getRenderingBounds ( UT_BoundingBox box) const
overridevirtual

Get the rendering bounding box for the geometry (not including transforms). For curve and point geometry, this needs to include any "width" attributes.

Implements GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::getVelocityRange ( UT_Vector3 min,
UT_Vector3 max 
) const
overridevirtual

When rendering with velocity blur, the renderer needs to know the bounds on velocity to accurately compute the bounding box.

Implements GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::getWidthRange ( fpreal wmin,
fpreal wmax 
) const
overridevirtual

When rendering points or curves, the renderer needs to know the bounds on the width attribute to accurately compute the bounding box.

Implements GU_PackedImpl.

static void GABC_NAMESPACE::GABC_PackedImpl::install ( GA_PrimitiveFactory fact)
static
GT_PrimitiveHandle GABC_NAMESPACE::GABC_PackedImpl::instanceGT ( bool  ignore_visibility = false) const

Get the geometry for "instancing". This geometry doesn't have the transform to world space, nor does it have the Houdini attributes from the primitive.

const char* GABC_NAMESPACE::GABC_PackedImpl::intrinsicAnimation ( const GU_PrimPacked prim) const
inline

Definition at line 239 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicDetail ( const GU_PrimPacked prim) const
inline

Definition at line 254 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicFaceSet ( const GU_PrimPacked prim) const
inline

Definition at line 256 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicFilename ( const GU_PrimPacked prim) const
inline

Definition at line 213 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicFilenamesJSON ( const GU_PrimPacked prim) const
fpreal GABC_NAMESPACE::GABC_PackedImpl::intrinsicFrame ( const GU_PrimPacked prim) const
inline

Definition at line 227 of file GABC_PackedImpl.h.

int64 GABC_NAMESPACE::GABC_PackedImpl::intrinsicFullVisibility ( const GU_PrimPacked prim) const
inline

Definition at line 245 of file GABC_PackedImpl.h.

const char* GABC_NAMESPACE::GABC_PackedImpl::intrinsicNodeType ( const GU_PrimPacked prim) const
inline

Definition at line 241 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicObjectPath ( const GU_PrimPacked prim) const
inline

Definition at line 221 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicPoint ( const GU_PrimPacked prim) const
inline

Definition at line 248 of file GABC_PackedImpl.h.

int64 GABC_NAMESPACE::GABC_PackedImpl::intrinsicPointCount ( const GU_PrimPacked prim) const
inline

Definition at line 224 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicPrimitive ( const GU_PrimPacked prim) const
inline

Definition at line 252 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicSourcePath ( const GU_PrimPacked prim) const
inline

Definition at line 222 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::intrinsicUseTransform ( const GU_PrimPacked prim) const
inline

Definition at line 229 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::intrinsicUseVisibility ( const GU_PrimPacked prim) const
inline

Definition at line 231 of file GABC_PackedImpl.h.

UT_StringHolder GABC_NAMESPACE::GABC_PackedImpl::intrinsicVertex ( const GU_PrimPacked prim) const
inline

Definition at line 250 of file GABC_PackedImpl.h.

int64 GABC_NAMESPACE::GABC_PackedImpl::intrinsicVisibility ( const GU_PrimPacked prim) const
inline

Definition at line 243 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::isConstant ( ) const
inline

Definition at line 235 of file GABC_PackedImpl.h.

static bool GABC_NAMESPACE::GABC_PackedImpl::isInstalled ( )
static
bool GABC_NAMESPACE::GABC_PackedImpl::isValid ( ) const
overridevirtual

Test whether the deferred load primitive data is valid.

Implements GU_PackedImpl.

bool GABC_NAMESPACE::GABC_PackedImpl::load ( GU_PrimPacked prim,
const UT_Options options,
const GA_LoadMap map 
)
inlineoverridevirtual

Give a UT_Options of load data, create resolver data for the primitive.

Implements GU_PackedImpl.

Definition at line 92 of file GABC_PackedImpl.h.

template<typename T >
bool GABC_NAMESPACE::GABC_PackedImpl::loadFrom ( GU_PrimPacked prim,
const T &  options,
const GA_LoadMap map 
)
protected

Method to load from either UT_Options or UT_JSONValueMap.

bool GABC_NAMESPACE::GABC_PackedImpl::loadFromJSON ( GU_PrimPacked prim,
const UT_JSONValueMap options,
const GA_LoadMap map 
)
inlineoverridevirtual

The JSONValueMap represents a UT_Options. The options may be saved in compact form, but also may be saved in expanded form. If in expanded form, the value for each key's value is a UT_JSONValueMap storing the value in the "value" key. It's highly suggested you just use the protected import() convenience method which deals with this for you.

Reimplemented from GU_PackedImpl.

Definition at line 97 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::loadUnknownToken ( const char *  token,
UT_JSONParser p,
const GA_LoadMap map 
)
overridevirtual

Handle unknown token/value pairs when loading the primitive. By default, this adds a warning and skips the next object. Return false if there was a critical error.

Reimplemented from GU_PackedImpl.

GABC_NodeType GABC_NAMESPACE::GABC_PackedImpl::nodeType ( ) const
inline

Definition at line 232 of file GABC_PackedImpl.h.

const GABC_IObject& GABC_NAMESPACE::GABC_PackedImpl::object ( ) const
const UT_StringHolder& GABC_NAMESPACE::GABC_PackedImpl::objectPath ( ) const
inline

Definition at line 220 of file GABC_PackedImpl.h.

GT_PrimitiveHandle GABC_NAMESPACE::GABC_PackedImpl::pointGT ( const GU_PrimPacked packed) const

Return GT representations of geometry

bool GABC_NAMESPACE::GABC_PackedImpl::save ( UT_Options options,
const GA_SaveMap map 
) const
overridevirtual

Copy the resolver data into the UT_Options for saving.

Implements GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::setAttributeNameMap ( const GEO_PackedNameMapPtr m)
overridevirtual

Default implementation does nothing and asserts, since only relevant subclasses (GABC_PackedImpl) should be getting an attribute name map.

Reimplemented from GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::setFacesetAttribute ( const UT_StringHolder s)
inlineoverridevirtual

Alembic packed primitives do have a faceset attribute, so set it.

Reimplemented from GU_PackedImpl.

Definition at line 167 of file GABC_PackedImpl.h.

void GABC_NAMESPACE::GABC_PackedImpl::setFilename ( GU_PrimPacked prim,
const UT_StringHolder v 
)
void GABC_NAMESPACE::GABC_PackedImpl::setFilenames ( GU_PrimPacked prim,
const UT_StringArray v 
)
void GABC_NAMESPACE::GABC_PackedImpl::setFilenamesJSON ( GU_PrimPacked prim,
const UT_StringHolder v 
)
void GABC_NAMESPACE::GABC_PackedImpl::setFrame ( GU_PrimPacked prim,
fpreal  f 
)
void GABC_NAMESPACE::GABC_PackedImpl::setObject ( const GABC_IObject v)
void GABC_NAMESPACE::GABC_PackedImpl::setObjectPath ( GU_PrimPacked prim,
const UT_StringHolder v 
)
void GABC_NAMESPACE::GABC_PackedImpl::setSharedNameMapData ( GA_SharedDataHandlePtr  s)
inlineoverridevirtual

This should only be called during load.

Reimplemented from GU_PackedImpl.

Definition at line 188 of file GABC_PackedImpl.h.

void GABC_NAMESPACE::GABC_PackedImpl::setUseTransform ( GU_PrimPacked prim,
bool  v 
)
void GABC_NAMESPACE::GABC_PackedImpl::setUseVisibility ( GU_PrimPacked prim,
bool  v 
)
bool GABC_NAMESPACE::GABC_PackedImpl::supportsJSONLoad ( ) const
inlineoverridevirtual

Determines if we support loading from a JSONParser directly rather than just from a UT_Options. Loading from JSON is typically more efficient than loading from a UT_Options since the file loader doesn't have to convert the JSON map to a UT_Options.

Reimplemented from GU_PackedImpl.

Definition at line 95 of file GABC_PackedImpl.h.

static GA_PrimitiveTypeId GABC_NAMESPACE::GABC_PackedImpl::typeId ( )
inlinestatic

Definition at line 46 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::unpack ( GU_Detail destgdp,
const UT_Matrix4D transform 
) const
overridevirtual

Unpack the procedural into a GU_Detail. By default, this calls getGTFull() and converts the GT geometry to a GU_Detail.

Implements GU_PackedImpl.

bool GABC_NAMESPACE::GABC_PackedImpl::unpackUsingPolygons ( GU_Detail destgdp,
const GU_PrimPacked prim 
) const
overridevirtual

Unpack without using polygon soups.

Reimplemented from GU_PackedImpl.

bool GABC_NAMESPACE::GABC_PackedImpl::unpackWithPrim ( GU_Detail destgdp,
const UT_Matrix4D transform,
const GU_PrimPacked prim 
) const
overrideprotectedvirtual

Unpack the procedural into a GU_Detail. By default, this calls getGTFull() and converts the GT geometry to a GU_Detail. This signature is just for the questionable purpose of copying primitive group membership from prim, so it might be removed in the future.

Reimplemented from GU_PackedImpl.

void GABC_NAMESPACE::GABC_PackedImpl::update ( GU_PrimPacked prim,
const UT_Options options 
)
overridevirtual

Depending on the update, the procedural should call one of:

  • prim->transformDirty()
  • prim->attributeDirty()
  • prim->topologyDirty()

Implements GU_PackedImpl.

bool GABC_NAMESPACE::GABC_PackedImpl::useTransform ( ) const
inline

Definition at line 228 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::useVisibility ( ) const
inline

Definition at line 230 of file GABC_PackedImpl.h.

bool GABC_NAMESPACE::GABC_PackedImpl::visibleGT ( bool *  is_animated = NULL) const

Return GT representations of geometry

GT_TransformHandle GABC_NAMESPACE::GABC_PackedImpl::xformGT ( const GU_PrimPacked packed) const

The xformGT will return the transform for the primitive, regardless of whether the load_style for full geometry was set to force untransformed geometry.


The documentation for this class was generated from the following file: