11 #ifndef __GU_PackedSequence__
12 #define __GU_PackedSequence__
75 {
return myString== k.myString; }
109 SYShashCombine(h, myKey[1].hash());
110 SYShashCombine(h, myT);
116 && myKey[0] == k.myKey[0]
117 && myKey[1] == k.myKey[1];
127 , myIndex(src.myIndex)
134 virtual exint sequenceSize()
const = 0;
137 {
return sequenceSize(); }
145 virtual InstanceKey getInstanceKey(
exint quantize_steps)
const;
149 InstanceKey getUniqueInstanceKey(
exint quantize_steps)
const;
173 bool valid = getTimeSample(s,myIndex);
174 return valid ? s.
i0() : -1;
179 {
return wrapModeLabel(); }
190 bool getTimeSample(TimeSample &sample,
fpreal t)
const;
192 {
return getTimeSample(sample, myIndex); }
199 virtual bool sequenceVisibleBounds(
exint index,
201 virtual void sequenceVelocityRange(
exint index,
virtual void getVelocityRange(UT_Vector3 &min, UT_Vector3 &max) const =0
The base class for a sequence of packed geometry.
const SingleItemKey & key0() const
exint wrappedIndex() const
UT_JSONValueMap stores a map/dictionary of UT_JSONValue objects.
void singleIndex(exint i)
void setKey1(const SingleItemKey &k)
exint intrinsicSequenceSize(const GU_PrimPacked *prim) const
GT_API const UT_StringHolder time
exint conditionalIndex() const
SYS_HashType hash() const
std::size_t SYS_HashType
Define the type for hash values.
SYS_HashType hash() const
ImageBuf OIIO_API min(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
virtual bool getBounds(UT_BoundingBox &box) const =0
Get the bounding box for the geometry (not including transforms)
UT_StringHolder intrinsicWrapModeLabel(const GU_PrimPacked *prim) const
fpreal intrinsicIndex(const GU_PrimPacked *prim) const
virtual bool getRenderingBounds(UT_BoundingBox &box) const =0
bool operator==(const SingleItemKey &k) const
fpreal qt(exint nsteps) const
virtual GU_ConstDetailHandle getPackedDetail(GU_PackedContext *context=0) const
void setString(const UT_StringHolder &s)
const UT_StringHolder & string() const
SingleItemKey(const UT_StringHolder &k)
GA_API const UT_StringHolder transform
WrapMode wrapMode() const
virtual bool isValid() const =0
Test whether the deferred load primitive data is valid.
GU_PackedSequence(const GU_PackedSequence &src)
GLfloat GLfloat GLfloat GLfloat h
void set(const SingleItemKey &k0, const SingleItemKey &k1, fpreal t)
A map of string to various well defined value types.
bool unpack(GU_Detail &destgdp, const GU_PrimPacked *prim) const
ImageBuf OIIO_API max(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
bool operator==(const InstanceKey &k) const
GLubyte GLubyte GLubyte GLubyte w
InstanceKey(const SingleItemKey &k0, const SingleItemKey &k1, fpreal t)
const SingleItemKey & key1() const
void setKey0(const SingleItemKey &k)
bool getTimeSample(TimeSample &sample) const
virtual void getWidthRange(fpreal &wmin, fpreal &wmax) const =0