HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GT_PackedAlembicArchive Class Referenceabstract

#include <GT_PackedAlembic.h>

+ Inheritance diagram for GT_PackedAlembicArchive:

Public Member Functions

 GT_PackedAlembicArchive (const UT_StringHolder &archive_name, const GT_GEODetailListHandle &source_list)
 
const UT_StringHolderarchiveName () const
 
const UT_StringArraygetAlembicObjects () const
 
const GA_OffsetArraygetAlembicOffsets () const
 
int getPrimitiveType () const override
 
void appendAlembic (GA_Offset alembic_prim_offset)
 
virtual bool bucketPrims (const GT_PackedAlembicArchive *prev_archive, const GT_RefineParms *ref_parms, bool force_update)=0
 
int getNumChildPrims () const
 
const UT_Array
< GT_PrimitiveHandle > & 
constantShapes () const
 
const UT_Array
< GT_PrimitiveHandle > & 
transformShapes () const
 
const UT_Array
< GT_PrimitiveHandle > & 
deformShapes () const
 
const UT_Array
< GT_PrimitiveHandle > & 
combinedShapes () const
 
void enlargeBounds (UT_BoundingBox boxes[], int nsegments) const override
 
int getMotionSegments () const override
 
int64 getMemoryUsage () const override
 
void setRefinedSubset (bool reduced_consts, UT_IntArray &const_prims, bool reduced_transforms, UT_IntArray &trans_prims)
 
bool hasConstantSubset () const
 
const UT_IntArraygetConstantSubset () const
 
bool hasTransformSubset () const
 
const UT_IntArraygetTransformSubset () const
 
int64 getAlembicVersion () const
 
const GU_ConstDetailHandleparentDetail () const
 
bool updateGeoPrim (const GU_ConstDetailHandle &dtl, const GT_RefineParms &refine) override
 update any cached data for geometry and its attributes More...
 
void setPrimIndex (int idx)
 
int primIndex () const
 
- Public Member Functions inherited from GT_Primitive
 GT_Primitive ()
 
 GT_Primitive (const GT_Primitive &src)
 
virtual ~GT_Primitive ()
 
virtual const char * className () const =0
 
virtual bool getUniqueID (int64 &id) const
 
virtual void enlargeRenderBounds (UT_BoundingBox boxes[], int nsegments) const
 
virtual void getVelocityRange (UT_Vector3 &min, UT_Vector3 &max, const UT_StringRef &attribute_name=GA_Names::v) const
 
virtual bool refine (GT_Refine &refiner, const GT_RefineParms *parms=NULL) const
 
const GT_TransformHandlegetPrimitiveTransform () const
 
void setPrimitiveTransform (const GT_TransformHandle &x)
 Set the transform for a the primitive. More...
 
GT_PrimitiveHandle clone () const
 
virtual bool hasDataArray (const UT_StringRef &name, GT_Owner owner_scope[], int num_owners, GT_Storage *storage=NULL, GT_Size *tuple_size=NULL) const
 
void setStaticGeometry (bool static_geo)
 Return true if the primitive represents geometry at frame 'fr'. More...
 
bool isStaticGeometry () const
 
bool isFrameInfoAvailable () const
 
bool getDataIdHash (int64 &hash, int segment=0, bool cache_data_id=false) const
 
virtual bool getTopologyVersion (int64 &version) const
 Returns the topology version for the primitive. More...
 
GT_DataArrayHandle findAttribute (const UT_StringRef &name, GT_Owner &owner, int segment) const
 
void dumpAttributeLists (const char *label, bool data_too) const
 print out all attribute lists More...
 
void dumpPrimitive () const
 
bool saveAttributeLists (UT_JSONWriter &w) const
 
virtual bool save (UT_JSONWriter &w) const
 
virtual const
GT_ViewportRefineOptions
viewportRefineOptions () const
 
GT_PrimitiveHandle harden () const
 
GT_PrimitiveHandle copyTransformed (const GT_TransformHandle &x, bool force=false) const
 
void refineCopyTransformFrom (const GT_Primitive &src)
 
GT_PrimitiveHandle attributeMerge (const GT_Primitive &src, const UT_StringMMPattern *vertex_pattern, const UT_StringMMPattern *point_pattern, const UT_StringMMPattern *uniform_pattern, const UT_StringMMPattern *detail_pattern) const
 
virtual GT_PrimitiveHandle doHarden () const
 
virtual GT_PrimitiveHandle doSoftCopy () const =0
 
virtual GT_PrimitiveHandle doAttributeMerge (const GT_Primitive &src, const UT_StringMMPattern *vertex, const UT_StringMMPattern *point, const UT_StringMMPattern *uniform, const UT_StringMMPattern *detail) const
 The virtual implementation of attribute merging. More...
 
bool enlargeWidth (UT_BoundingBox boxes[], int nsegments, fpreal defwidth=-1) const
 
virtual const
GT_AttributeListHandle
getPointAttributes () const
 
virtual const
GT_AttributeListHandle
getVertexAttributes () const
 
virtual const
GT_AttributeListHandle
getUniformAttributes () const
 
virtual const
GT_AttributeListHandle
getDetailAttributes () const
 
const GT_AttributeListHandlegetAttributeList (GT_Owner owner) const
 
virtual const GT_DataArrayHandlegetVertexList () const
 
virtual GT_DataArrayHandle createPointNormals (int segment=0, const UT_StringRef &P=GA_Names::P, bool normalize=true, const fpreal32 *pntdata=NULL, GT_Storage store=GT_STORE_REAL32) const
 
virtual fpreal computePerimeter (int seg=0) const
 
virtual fpreal computeSurfaceArea (int seg=0) const
 
virtual fpreal computeVolume (const UT_Vector3 &ref_P, int seg=0) const
 
- Public Member Functions inherited from UT_IntrusiveRefCounter< GT_Primitive >
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
 

Protected Member Functions

virtual bool archiveMatch (const GT_PackedAlembicArchive *archive) const =0
 
- Protected Member Functions inherited from GT_Primitive
void enlargeP (UT_BoundingBox &box, const GT_AttributeListHandle &list, int segment) const
 
void enlargeP (UT_BoundingBox &B, const GT_DataArrayHandle &P) const
 Convenience method to enlarge a bounding box given a position attribute. More...
 
void enlargePw (UT_BoundingBox &B, const GT_DataArrayHandle &P) const
 
- Protected Member Functions inherited from UT_IntrusiveRefCounter< GT_Primitive >
SYS_FORCE_INLINE ~UT_IntrusiveRefCounter ()
 Destructor: Only derived classes can destruct this. More...
 

Protected Attributes

UT_StringHolder myName
 
GT_GEODetailListHandle myDetailList
 
UT_StringArray myAlembicObjects
 
GA_OffsetArray myAlembicOffsets
 
UT_Array< GT_PrimitiveHandlemyConstShapes
 
UT_Array< GT_PrimitiveHandlemyTransformShapes
 
UT_Array< GT_PrimitiveHandlemyDeformShapes
 
UT_Array< GT_PrimitiveHandlemyCombinedShapes
 
UT_IntArray myConstSubset
 
UT_IntArray myTransSubset
 
unsigned myHasConstSubset: 1
 
unsigned myHasTransSubset: 1
 
int64 myAlembicVersion
 
int myPrimIndex
 

Additional Inherited Members

- Static Public Member Functions inherited from GT_Primitive
static int createPrimitiveTypeId ()
 
static GT_AttributeListHandle mergeAttributeLists (bool &changed, const GT_AttributeListHandle &src, const GT_AttributeListHandle &merge, const UT_StringMMPattern *pattern, const UT_StringMMPattern *alternate=NULL)
 
static bool computeVelocityRange (UT_Vector3 &vmin, UT_Vector3 &vmax, const GT_DataArrayHandle &v)
 
static GT_PrimitiveHandle refineDetail (const GU_ConstDetailHandle &detail, const GT_RefineParms *parms)
 
static GT_PrimitiveHandle refinePrimitive (const GT_PrimitiveHandle &primh, const GT_RefineParms *parms)
 
static voidoperator new (size_t size)
 
static voidoperator new (size_t size, void *p)
 
static void operator delete (void *p, size_t size)
 

Detailed Description

Collection class for a single archive's worth of Alembic primitives. This is generally only useful for the viewport.

Definition at line 23 of file GT_PackedAlembic.h.

Constructor & Destructor Documentation

GT_PackedAlembicArchive::GT_PackedAlembicArchive ( const UT_StringHolder archive_name,
const GT_GEODetailListHandle source_list 
)

Member Function Documentation

void GT_PackedAlembicArchive::appendAlembic ( GA_Offset  alembic_prim_offset)
inline

Definition at line 37 of file GT_PackedAlembic.h.

virtual bool GT_PackedAlembicArchive::archiveMatch ( const GT_PackedAlembicArchive archive) const
protectedpure virtual
const UT_StringHolder& GT_PackedAlembicArchive::archiveName ( ) const
inline

Definition at line 29 of file GT_PackedAlembic.h.

virtual bool GT_PackedAlembicArchive::bucketPrims ( const GT_PackedAlembicArchive prev_archive,
const GT_RefineParms ref_parms,
bool  force_update 
)
pure virtual
const UT_Array<GT_PrimitiveHandle>& GT_PackedAlembicArchive::combinedShapes ( ) const
inline

Definition at line 56 of file GT_PackedAlembic.h.

const UT_Array<GT_PrimitiveHandle>& GT_PackedAlembicArchive::constantShapes ( ) const
inline

Definition at line 50 of file GT_PackedAlembic.h.

const UT_Array<GT_PrimitiveHandle>& GT_PackedAlembicArchive::deformShapes ( ) const
inline

Definition at line 54 of file GT_PackedAlembic.h.

void GT_PackedAlembicArchive::enlargeBounds ( UT_BoundingBox  boxes[],
int  nsegments 
) const
overridevirtual

An array of bounding boxes is passed in. There is a bounding box for each segement. Each bounding box should be enlarged appropriately.

Implements GT_Primitive.

const UT_StringArray& GT_PackedAlembicArchive::getAlembicObjects ( ) const
inline

Definition at line 31 of file GT_PackedAlembic.h.

const GA_OffsetArray& GT_PackedAlembicArchive::getAlembicOffsets ( ) const
inline

Definition at line 32 of file GT_PackedAlembic.h.

int64 GT_PackedAlembicArchive::getAlembicVersion ( ) const
inline

Definition at line 73 of file GT_PackedAlembic.h.

const UT_IntArray& GT_PackedAlembicArchive::getConstantSubset ( ) const
inline

Definition at line 69 of file GT_PackedAlembic.h.

int64 GT_PackedAlembicArchive::getMemoryUsage ( ) const
overridevirtual

Return an approximate memory usage. Since data may be shared, this will always be an over-estimation.

Implements GT_Primitive.

int GT_PackedAlembicArchive::getMotionSegments ( ) const
inlineoverridevirtual

Return the number of motion segments defined on the geometry By default, this simply returns the number of segments on P.

Implements GT_Primitive.

Definition at line 61 of file GT_PackedAlembic.h.

int GT_PackedAlembicArchive::getNumChildPrims ( ) const
inline

Definition at line 44 of file GT_PackedAlembic.h.

int GT_PackedAlembicArchive::getPrimitiveType ( ) const
inlineoverridevirtual

Return the primitive type. By default this returns GT_PRIM_UNDEFINED,

Reimplemented from GT_Primitive.

Definition at line 34 of file GT_PackedAlembic.h.

const UT_IntArray& GT_PackedAlembicArchive::getTransformSubset ( ) const
inline

Definition at line 71 of file GT_PackedAlembic.h.

bool GT_PackedAlembicArchive::hasConstantSubset ( ) const
inline

Definition at line 68 of file GT_PackedAlembic.h.

bool GT_PackedAlembicArchive::hasTransformSubset ( ) const
inline

Definition at line 70 of file GT_PackedAlembic.h.

const GU_ConstDetailHandle& GT_PackedAlembicArchive::parentDetail ( ) const
inline

Definition at line 75 of file GT_PackedAlembic.h.

int GT_PackedAlembicArchive::primIndex ( ) const
inline

Definition at line 81 of file GT_PackedAlembic.h.

void GT_PackedAlembicArchive::setPrimIndex ( int  idx)
inline

Definition at line 80 of file GT_PackedAlembic.h.

void GT_PackedAlembicArchive::setRefinedSubset ( bool  reduced_consts,
UT_IntArray const_prims,
bool  reduced_transforms,
UT_IntArray trans_prims 
)
const UT_Array<GT_PrimitiveHandle>& GT_PackedAlembicArchive::transformShapes ( ) const
inline

Definition at line 52 of file GT_PackedAlembic.h.

bool GT_PackedAlembicArchive::updateGeoPrim ( const GU_ConstDetailHandle dtl,
const GT_RefineParms parms 
)
overridevirtual

update any cached data for geometry and its attributes

Reimplemented from GT_Primitive.

Member Data Documentation

UT_StringArray GT_PackedAlembicArchive::myAlembicObjects
protected

Definition at line 88 of file GT_PackedAlembic.h.

GA_OffsetArray GT_PackedAlembicArchive::myAlembicOffsets
protected

Definition at line 89 of file GT_PackedAlembic.h.

int64 GT_PackedAlembicArchive::myAlembicVersion
protected

Definition at line 99 of file GT_PackedAlembic.h.

UT_Array<GT_PrimitiveHandle> GT_PackedAlembicArchive::myCombinedShapes
protected

Definition at line 94 of file GT_PackedAlembic.h.

UT_Array<GT_PrimitiveHandle> GT_PackedAlembicArchive::myConstShapes
protected

Definition at line 91 of file GT_PackedAlembic.h.

UT_IntArray GT_PackedAlembicArchive::myConstSubset
protected

Definition at line 95 of file GT_PackedAlembic.h.

UT_Array<GT_PrimitiveHandle> GT_PackedAlembicArchive::myDeformShapes
protected

Definition at line 93 of file GT_PackedAlembic.h.

GT_GEODetailListHandle GT_PackedAlembicArchive::myDetailList
protected

Definition at line 87 of file GT_PackedAlembic.h.

unsigned GT_PackedAlembicArchive::myHasConstSubset
protected

Definition at line 97 of file GT_PackedAlembic.h.

unsigned GT_PackedAlembicArchive::myHasTransSubset
protected

Definition at line 97 of file GT_PackedAlembic.h.

UT_StringHolder GT_PackedAlembicArchive::myName
protected

Definition at line 86 of file GT_PackedAlembic.h.

int GT_PackedAlembicArchive::myPrimIndex
protected

Definition at line 100 of file GT_PackedAlembic.h.

UT_Array<GT_PrimitiveHandle> GT_PackedAlembicArchive::myTransformShapes
protected

Definition at line 92 of file GT_PackedAlembic.h.

UT_IntArray GT_PackedAlembicArchive::myTransSubset
protected

Definition at line 96 of file GT_PackedAlembic.h.


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