12 #ifndef __GU_PrimChannel_h__
13 #define __GU_PrimChannel_h__
44 myPrimitive = other.myPrimitive;
45 myChannel = other.myChannel;
46 other.myPrimitive =
nullptr;
47 other.myChannel =
nullptr;
53 myPrimitive = other.myPrimitive;
54 myChannel = other.myChannel;
55 other.myPrimitive =
nullptr;
56 other.myChannel =
nullptr;
121 return *theDefinition;
127 return theDefinition->getId();
135 void normal(NormalComp &output)
const override;
136 void normal(NormalCompD &output)
const override;
139 float tmax = 1E17F,
float tol = 1E-12F,
143 float *u =
nullptr,
float *
v =
nullptr,
144 int ignoretrim = 1)
const override;
159 friend class GU_PrimitiveFactory;
CL_SimpleChannel * operator->() const
~GU_PrimChannelReadHandle()
GU_PrimChannelWriteHandle & operator=(GU_PrimChannelWriteHandle &&other) noexcept
static GA_PrimitiveTypeId typeId()
#define SYS_DEPRECATED_PUSH_DISABLE()
#define SYS_DEPRECATED_POP_DISABLE()
virtual int64 getMemoryUsage() const
#define GA_INVALID_OFFSET
void normal(NormalComp &output) const override
static GEO_PrimChannel * build(GA_Detail *gdp, fpreal value, const UT_SharedPtr< CL_SimpleChannel > &channel)
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
virtual void countMemory(UT_MemoryCounter &counter) const
~GU_PrimChannel() override
const CL_SimpleChannel * operator->() const
GU_PrimChannelWriteHandle(GU_PrimChannelWriteHandle &&other) noexcept
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
LeafData & operator=(const LeafData &)=delete
const GA_PrimitiveDefinition & getTypeDef() const override
virtual GEO_Primitive * convert(GEO_ConvertParms &parms, GA_PointGroup *usedpts=0)=0
Definition of a geometric primitive.
GU_PrimChannelWriteHandle()
SIM_API const UT_StringHolder distance
virtual GEO_Primitive * convertNew(GEO_ConvertParms &parms)=0