Cortex  10.0.0-a4
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
IECoreHoudini::GEO_CortexPrimitive Class Reference

Wrapper for hosting IECore::Objects natively in Houdini. More...

#include <GEO_CortexPrimitive.h>

+ Inheritance diagram for IECoreHoudini::GEO_CortexPrimitive:

Public Member Functions

 GEO_CortexPrimitive (GA_Detail *detail, GA_Offset offset=GA_INVALID_OFFSET)
 
 GEO_CortexPrimitive (GEO_Detail *detail, GA_Offset offset=GA_INVALID_OFFSET)
 
 GEO_CortexPrimitive (const GA_MergeMap &map, GA_Detail &detail, GA_Offset offset, const GA_Primitive &src)
 
virtual void swapVertexOffsets (const GA_Defragment &defrag)
 
virtual GA_Size getVertexCount () const
 
virtual GA_Offset getVertexOffset (GA_Size index) const
 
virtual GA_DereferenceStatus dereferencePoint (GA_Offset point, bool dry_run=false)
 
virtual GA_DereferenceStatus dereferencePoints (const GA_RangeMemberQuery &pt_q, bool dry_run=false)
 
virtual void stashed (int onoff, GA_Offset offset=GA_INVALID_OFFSET)
 
virtual void clearForDeletion ()
 
virtual bool isDegenerate () const
 
virtual void copyUnwiredForMerge (const GA_Primitive *src, const GA_MergeMap &map)
 
virtual void transform (const UT_Matrix4 &xform)
 
virtual const GA_PrimitiveJSON * getJSON () const
 
virtual void reverse ()
 
virtual GEO_Primitive * copy (int preserve_shared_pts) const
 
virtual void copyPrimitive (const GEO_Primitive *src, GEO_Point **ptredirect)
 
virtual int getBBox (UT_BoundingBox *bbox) const
 
virtual void enlargePointBounds (UT_BoundingBox &box) const
 
virtual UT_Vector3 computeNormal () const
 
virtual int detachPoints (GA_PointGroup &grp)
 
virtual int64 getMemoryUsage () const
 
virtual void countMemory (UT_MemoryCounter &counter) const
 
virtual void copyPrimitive (const GEO_Primitive *src)
 
virtual const GA_PrimitiveDefinition & getTypeDef () const
 
virtual GEO_Primitive * convert (ConvertParms &parms, GA_PointGroup *usedpts=0)
 
virtual GEO_Primitive * convertNew (ConvertParms &parms)
 
virtual void normal (NormalComp &output) const
 
virtual int intersectRay (const UT_Vector3 &o, const UT_Vector3 &d, float tmax=1E17F, float tol=1E-12F, float *distance=0, UT_Vector3 *pos=0, UT_Vector3 *nml=0, int accurate=0, float *u=0, float *v=0, int ignoretrim=1) const
 
void setObject (const IECore::Object *object)
 
const IECore::ObjectgetObject () const
 Get the IECore::Object contained by this GEO_Primitive.
 
IECore::ObjectgetObject ()
 

Static Public Member Functions

static GEO_CortexPrimitivebuild (GU_Detail *geo, const IECore::Object *object)
 
static void setTypeDef (GA_PrimitiveDefinition *def)
 
static GA_PrimitiveTypeId typeId ()
 
static void infoText (const GU_Detail *geo, OP_Context &context, OP_NodeInfoParms &parms)
 

Static Public Attributes

static const char * typeName
 

Protected Member Functions

virtual void copyOffsetPrimitive (const GEO_Primitive *src, int basept)
 
virtual bool evaluatePointRefMap (GA_Offset result_vtx, GA_AttributeRefMap &map, fpreal u, fpreal v=0, uint du=0, uint dv=0) const
 

Protected Attributes

IECore::ObjectPtr m_object
 
GA_Offset m_offset
 

Detailed Description

Wrapper for hosting IECore::Objects natively in Houdini.

Member Function Documentation

IECore::Object* IECoreHoudini::GEO_CortexPrimitive::getObject ( )

Allowing non-const access to the IECore::Object so it can be updated in-place. Most users should prefer the const method above.

static void IECoreHoudini::GEO_CortexPrimitive::infoText ( const GU_Detail *  geo,
OP_Context &  context,
OP_NodeInfoParms &  parms 
)
static

Convenience method to inspect a GU_Detail and return some information about the GU_CortexPrimitives within, if there are any.

void IECoreHoudini::GEO_CortexPrimitive::setObject ( const IECore::Object object)

Set the IECore::Object contained by this GEO_Primitive. Note that in most situations this method takes a copy of the object. However, for ParameterisedProcedurals it does not, and it is the users responsibility to treat the contained object as const.

static void IECoreHoudini::GEO_CortexPrimitive::setTypeDef ( GA_PrimitiveDefinition *  def)
static
Todo:
: setTypeDef is called once by the plugin. Seems quite silly to expose. Maybe we should just give up registration in the plugin and do it all here.

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