23 namespace SOP_AttribTransferEnums
34 using namespace UT::Literal;
51 using namespace UT::Literal;
69 mySrcgroups =
""_UTsh;
71 myDstgroups =
""_UTsh;
73 myDetailattribs =
false;
74 myDetailattriblist =
""_UTsh;
75 myPrimitiveattribs =
true;
76 myPrimattriblist =
""_UTsh;
77 myPointattribs =
true;
78 myPointattriblist =
""_UTsh;
79 myVertexattribs =
false;
80 myVertexattriblist =
""_UTsh;
81 myCopyvariable =
true;
82 myMatchpattrib =
false;
83 myKernel =
"elendt"_UTsh;
102 if (mySrcgroups != src.mySrcgroups)
return false;
103 if (mySrcgrouptype != src.mySrcgrouptype)
return false;
104 if (myDstgroups != src.myDstgroups)
return false;
105 if (myDstgrouptype != src.myDstgrouptype)
return false;
106 if (myDetailattribs != src.myDetailattribs)
return false;
107 if (myDetailattriblist != src.myDetailattriblist)
return false;
108 if (myPrimitiveattribs != src.myPrimitiveattribs)
return false;
109 if (myPrimattriblist != src.myPrimattriblist)
return false;
110 if (myPointattribs != src.myPointattribs)
return false;
111 if (myPointattriblist != src.myPointattriblist)
return false;
112 if (myVertexattribs != src.myVertexattribs)
return false;
113 if (myVertexattriblist != src.myVertexattriblist)
return false;
114 if (myCopyvariable != src.myCopyvariable)
return false;
115 if (myMatchpattrib != src.myMatchpattrib)
return false;
116 if (myKernel != src.myKernel)
return false;
117 if (myKernelradius != src.myKernelradius)
return false;
118 if (myMaxsamplecount != src.myMaxsamplecount)
return false;
119 if (myThreshold != src.myThreshold)
return false;
120 if (myThresholddist != src.myThresholddist)
return false;
121 if (myBlendwidth != src.myBlendwidth)
return false;
122 if (myUniformbias != src.myUniformbias)
return false;
137 mySrcgroups =
""_UTsh;
139 graph->
evalOpParm(mySrcgroups, nodeidx,
"srcgroups", time, 0);
142 graph->
evalOpParm(mySrcgrouptype, nodeidx,
"srcgrouptype", time, 0);
143 myDstgroups =
""_UTsh;
145 graph->
evalOpParm(myDstgroups, nodeidx,
"dstgroups", time, 0);
148 graph->
evalOpParm(myDstgrouptype, nodeidx,
"dstgrouptype", time, 0);
149 myDetailattribs =
false;
151 graph->
evalOpParm(myDetailattribs, nodeidx,
"detailattribs", time, 0);
152 myDetailattriblist =
""_UTsh;
153 if (
true && ( (
true&&!(((getDetailattribs()==0)))) ) )
154 graph->
evalOpParm(myDetailattriblist, nodeidx,
"detailattriblist", time, 0);
155 myPrimitiveattribs =
true;
157 graph->
evalOpParm(myPrimitiveattribs, nodeidx,
"primitiveattribs", time, 0);
158 myPrimattriblist =
""_UTsh;
159 if (
true && ( (
true&&!(((getPrimitiveattribs()==0)))) ) )
160 graph->
evalOpParm(myPrimattriblist, nodeidx,
"primattriblist", time, 0);
161 myPointattribs =
true;
163 graph->
evalOpParm(myPointattribs, nodeidx,
"pointattribs", time, 0);
164 myPointattriblist =
""_UTsh;
165 if (
true && ( (
true&&!(((getPointattribs()==0)))) ) )
166 graph->
evalOpParm(myPointattriblist, nodeidx,
"pointattriblist", time, 0);
167 myVertexattribs =
false;
169 graph->
evalOpParm(myVertexattribs, nodeidx,
"vertexattribs", time, 0);
170 myVertexattriblist =
""_UTsh;
171 if (
true && ( (
true&&!(((getVertexattribs()==0)))) ) )
172 graph->
evalOpParm(myVertexattriblist, nodeidx,
"vertexattriblist", time, 0);
173 myCopyvariable =
true;
175 graph->
evalOpParm(myCopyvariable, nodeidx,
"copyvariable", time, 0);
176 myMatchpattrib =
false;
178 graph->
evalOpParm(myMatchpattrib, nodeidx,
"matchpattrib", time, 0);
179 myKernel =
"elendt"_UTsh;
181 graph->
evalOpParm(myKernel, nodeidx,
"kernel", time, 0);
183 if (
true && ( (
true&&!(((getKernel()==
"uniform")))) ) )
184 graph->
evalOpParm(myKernelradius, nodeidx,
"kernelradius", time, 0);
185 myMaxsamplecount = 1;
187 graph->
evalOpParm(myMaxsamplecount, nodeidx,
"maxsamplecount", time, 0);
190 graph->
evalOpParm(myThreshold, nodeidx,
"threshold", time, 0);
191 myThresholddist = 10;
192 if (
true && ( (
true&&!(((getThreshold()==0)))) ) )
193 graph->
evalOpParm(myThresholddist, nodeidx,
"thresholddist", time, 0);
195 if (
true && ( (
true&&!(((getThreshold()==0)))) ) )
196 graph->
evalOpParm(myBlendwidth, nodeidx,
"blendwidth", time, 0);
198 if (
true && ( (
true&&!(((getThreshold()==0))||((getKernel()!=
"uniform")))) ) )
199 graph->
evalOpParm(myUniformbias, nodeidx,
"uniformbias", time, 0);
215 template <
typename T>
222 if (idx.
size() != instance.
size()+1)
227 coerceValue(value, mySrcgroups);
230 coerceValue(value, mySrcgrouptype);
233 coerceValue(value, myDstgroups);
236 coerceValue(value, myDstgrouptype);
239 coerceValue(value, myDetailattribs);
242 coerceValue(value, myDetailattriblist);
245 coerceValue(value, myPrimitiveattribs);
248 coerceValue(value, myPrimattriblist);
251 coerceValue(value, myPointattribs);
254 coerceValue(value, myPointattriblist);
257 coerceValue(value, myVertexattribs);
260 coerceValue(value, myVertexattriblist);
263 coerceValue(value, myCopyvariable);
266 coerceValue(value, myMatchpattrib);
269 coerceValue(value, myKernel);
272 coerceValue(value, myKernelradius);
275 coerceValue(value, myMaxsamplecount);
278 coerceValue(value, myThreshold);
281 coerceValue(value, myThresholddist);
284 coerceValue(value, myBlendwidth);
287 coerceValue(value, myUniformbias);
303 { doGetParmValue(idx, instance, value); }
305 { doGetParmValue(idx, instance, value); }
307 { doGetParmValue(idx, instance, value); }
309 { doGetParmValue(idx, instance, value); }
311 { doGetParmValue(idx, instance, value); }
313 { doGetParmValue(idx, instance, value); }
315 { doGetParmValue(idx, instance, value); }
317 { doGetParmValue(idx, instance, value); }
319 { doGetParmValue(idx, instance, value); }
321 { doGetParmValue(idx, instance, value); }
323 { doGetParmValue(idx, instance, value); }
325 template <
typename T>
332 if (idx.
size() != instance.
size()+1)
337 coerceValue(mySrcgroups, ( ( value ) ));
340 coerceValue(mySrcgrouptype, clampMinValue(0, clampMaxValue(1, value ) ));
343 coerceValue(myDstgroups, ( ( value ) ));
346 coerceValue(myDstgrouptype, clampMinValue(0, clampMaxValue(1, value ) ));
349 coerceValue(myDetailattribs, ( ( value ) ));
352 coerceValue(myDetailattriblist, ( ( value ) ));
355 coerceValue(myPrimitiveattribs, ( ( value ) ));
358 coerceValue(myPrimattriblist, ( ( value ) ));
361 coerceValue(myPointattribs, ( ( value ) ));
364 coerceValue(myPointattriblist, ( ( value ) ));
367 coerceValue(myVertexattribs, ( ( value ) ));
370 coerceValue(myVertexattriblist, ( ( value ) ));
373 coerceValue(myCopyvariable, ( ( value ) ));
376 coerceValue(myMatchpattrib, ( ( value ) ));
379 coerceValue(myKernel, ( ( value ) ));
382 coerceValue(myKernelradius, ( ( value ) ));
385 coerceValue(myMaxsamplecount, clampMinValue(1, ( value ) ));
388 coerceValue(myThreshold, ( ( value ) ));
391 coerceValue(myThresholddist, ( ( value ) ));
394 coerceValue(myBlendwidth, ( ( value ) ));
397 coerceValue(myUniformbias, ( ( value ) ));
404 { doSetParmValue(idx, instance, value); }
406 { doSetParmValue(idx, instance, value); }
408 { doSetParmValue(idx, instance, value); }
410 { doSetParmValue(idx, instance, value); }
412 { doSetParmValue(idx, instance, value); }
414 { doSetParmValue(idx, instance, value); }
416 { doSetParmValue(idx, instance, value); }
418 { doSetParmValue(idx, instance, value); }
420 { doSetParmValue(idx, instance, value); }
422 { doSetParmValue(idx, instance, value); }
424 { doSetParmValue(idx, instance, value); }
440 if (fieldnum.
size() < 1)
447 return "srcgrouptype";
451 return "dstgrouptype";
453 return "detailattribs";
455 return "detailattriblist";
457 return "primitiveattribs";
459 return "primattriblist";
461 return "pointattribs";
463 return "pointattriblist";
465 return "vertexattribs";
467 return "vertexattriblist";
469 return "copyvariable";
471 return "matchpattrib";
475 return "kernelradius";
477 return "maxsamplecount";
481 return "thresholddist";
485 return "uniformbias";
493 if (fieldnum.
size() < 1)
494 return PARM_UNSUPPORTED;
541 return PARM_UNSUPPORTED;
577 loadData(is, rampdata);
595 int typelen = colon - data.
buffer();
609 {
int64 iv =
v; UTwrite(os, &iv); }
611 { UTwrite<fpreal64>(os, &
v); }
613 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
615 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
616 UTwrite<fpreal64>(os, &v.
z()); }
618 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
619 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
631 if (s) s->save(ostr);
633 saveData(os, result);
640 ostr << s->getDataTypeToken();
645 saveData(os, result);
649 void save(std::ostream &os)
const
653 saveData(os, mySrcgroups);
654 saveData(os, mySrcgrouptype);
655 saveData(os, myDstgroups);
656 saveData(os, myDstgrouptype);
657 saveData(os, myDetailattribs);
658 saveData(os, myDetailattriblist);
659 saveData(os, myPrimitiveattribs);
660 saveData(os, myPrimattriblist);
661 saveData(os, myPointattribs);
662 saveData(os, myPointattriblist);
663 saveData(os, myVertexattribs);
664 saveData(os, myVertexattriblist);
665 saveData(os, myCopyvariable);
666 saveData(os, myMatchpattrib);
667 saveData(os, myKernel);
668 saveData(os, myKernelradius);
669 saveData(os, myMaxsamplecount);
670 saveData(os, myThreshold);
671 saveData(os, myThresholddist);
672 saveData(os, myBlendwidth);
673 saveData(os, myUniformbias);
686 loadData(is, mySrcgroups);
687 loadData(is, mySrcgrouptype);
688 loadData(is, myDstgroups);
689 loadData(is, myDstgrouptype);
690 loadData(is, myDetailattribs);
691 loadData(is, myDetailattriblist);
692 loadData(is, myPrimitiveattribs);
693 loadData(is, myPrimattriblist);
694 loadData(is, myPointattribs);
695 loadData(is, myPointattriblist);
696 loadData(is, myVertexattribs);
697 loadData(is, myVertexattriblist);
698 loadData(is, myCopyvariable);
699 loadData(is, myMatchpattrib);
700 loadData(is, myKernel);
701 loadData(is, myKernelradius);
702 loadData(is, myMaxsamplecount);
703 loadData(is, myThreshold);
704 loadData(is, myThresholddist);
705 loadData(is, myBlendwidth);
706 loadData(is, myUniformbias);
716 if (!thissop)
return getSrcgroups();
718 OP_Utils::evalOpParm(result, thissop,
"srcgroups", cookparms.
getCookTime(), 0);
726 if (!thissop)
return getSrcgrouptype();
728 OP_Utils::evalOpParm(result, thissop,
"srcgrouptype", cookparms.
getCookTime(), 0);
736 if (!thissop)
return getDstgroups();
738 OP_Utils::evalOpParm(result, thissop,
"dstgroups", cookparms.
getCookTime(), 0);
746 if (!thissop)
return getDstgrouptype();
748 OP_Utils::evalOpParm(result, thissop,
"dstgrouptype", cookparms.
getCookTime(), 0);
756 if (!thissop)
return getDetailattribs();
758 OP_Utils::evalOpParm(result, thissop,
"detailattribs", cookparms.
getCookTime(), 0);
766 if (!thissop)
return getDetailattriblist();
768 OP_Utils::evalOpParm(result, thissop,
"detailattriblist", cookparms.
getCookTime(), 0);
776 if (!thissop)
return getPrimitiveattribs();
778 OP_Utils::evalOpParm(result, thissop,
"primitiveattribs", cookparms.
getCookTime(), 0);
786 if (!thissop)
return getPrimattriblist();
788 OP_Utils::evalOpParm(result, thissop,
"primattriblist", cookparms.
getCookTime(), 0);
796 if (!thissop)
return getPointattribs();
798 OP_Utils::evalOpParm(result, thissop,
"pointattribs", cookparms.
getCookTime(), 0);
806 if (!thissop)
return getPointattriblist();
808 OP_Utils::evalOpParm(result, thissop,
"pointattriblist", cookparms.
getCookTime(), 0);
816 if (!thissop)
return getVertexattribs();
818 OP_Utils::evalOpParm(result, thissop,
"vertexattribs", cookparms.
getCookTime(), 0);
826 if (!thissop)
return getVertexattriblist();
828 OP_Utils::evalOpParm(result, thissop,
"vertexattriblist", cookparms.
getCookTime(), 0);
836 if (!thissop)
return getCopyvariable();
838 OP_Utils::evalOpParm(result, thissop,
"copyvariable", cookparms.
getCookTime(), 0);
846 if (!thissop)
return getMatchpattrib();
848 OP_Utils::evalOpParm(result, thissop,
"matchpattrib", cookparms.
getCookTime(), 0);
856 if (!thissop)
return getKernel();
858 OP_Utils::evalOpParm(result, thissop,
"kernel", cookparms.
getCookTime(), 0);
866 if (!thissop)
return getKernelradius();
868 OP_Utils::evalOpParm(result, thissop,
"kernelradius", cookparms.
getCookTime(), 0);
876 if (!thissop)
return getMaxsamplecount();
878 OP_Utils::evalOpParm(result, thissop,
"maxsamplecount", cookparms.
getCookTime(), 0);
886 if (!thissop)
return getThreshold();
888 OP_Utils::evalOpParm(result, thissop,
"threshold", cookparms.
getCookTime(), 0);
896 if (!thissop)
return getThresholddist();
898 OP_Utils::evalOpParm(result, thissop,
"thresholddist", cookparms.
getCookTime(), 0);
906 if (!thissop)
return getBlendwidth();
908 OP_Utils::evalOpParm(result, thissop,
"blendwidth", cookparms.
getCookTime(), 0);
916 if (!thissop)
return getUniformbias();
918 OP_Utils::evalOpParm(result, thissop,
"uniformbias", cookparms.
getCookTime(), 0);
924 int64 mySrcgrouptype;
926 int64 myDstgrouptype;
927 bool myDetailattribs;
929 bool myPrimitiveattribs;
933 bool myVertexattribs;
939 int64 myMaxsamplecount;
bool getThreshold() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
SOP_AttribTransferParms()
void copyFrom(const OP_NodeParms *src) override
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
void setDstgrouptype(Dstgrouptype val)
static void loadData(UT_IStream &is, bool &v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
void save(std::ostream &os) const
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setVertexattribs(bool val)
void setPointattriblist(const UT_StringHolder &val)
void setBlendwidth(fpreal64 val)
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
UT_StringHolder opVertexattriblist(const SOP_NodeVerb::CookParms &cookparms) const
void setSrcgrouptype(Srcgrouptype val)
SOP_Node * getNode() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
bool operator==(const SOP_AttribTransferParms &src) const
bool opCopyvariable(const SOP_NodeVerb::CookParms &cookparms) const
void setDstgroups(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
UT_StringHolder opDstgroups(const SOP_NodeVerb::CookParms &cookparms) const
bool opThreshold(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector3D &v)
void setMaxsamplecount(int64 val)
exint bread(int32 *buffer, exint asize=1)
static void loadData(UT_IStream &is, int64 &v)
void setDetailattribs(bool val)
static void saveData(std::ostream &os, PRM_DataItemHandle s)
GT_API const UT_StringHolder time
Srcgrouptype getSrcgrouptype() const
constexpr SYS_FORCE_INLINE T & y() noexcept
const UT_StringHolder & getSrcgroups() const
exint getNestNumParms(TempIndex idx) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
bool getMatchpattrib() const
void setUniformbias(fpreal64 val)
bool getCopyvariable() const
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
static void saveData(std::ostream &os, int64 v)
bool isParmColorRamp(exint idx) const override
const UT_StringHolder & getDetailattriblist() const
void setPointattribs(bool val)
static void loadData(UT_IStream &is, fpreal64 &v)
const OP_Context & context() const
constexpr SYS_FORCE_INLINE T & z() noexcept
SYS_FORCE_INLINE const char * buffer() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
An output stream object that owns its own string buffer storage.
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
**But if you need a result
void setCopyvariable(bool val)
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
fpreal64 getBlendwidth() const
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
static void loadData(UT_IStream &is, UT_Matrix4D &v)
constexpr SYS_FORCE_INLINE T & x() noexcept
static void loadData(UT_IStream &is, UT_Vector2I &v)
void loadFromOpSubclass(const LoadParms &loadparms) override
fpreal64 getUniformbias() const
void setThresholddist(fpreal64 val)
UT_StringHolder opKernel(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
bool load(UT_IStream &is)
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
SYS_FORCE_INLINE UT_StringHolder getToken(Srcgrouptype enum_value)
static void loadData(UT_IStream &is, UT_Matrix3D &v)
Srcgrouptype opSrcgrouptype(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector4I &v)
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
constexpr SYS_FORCE_INLINE T & z() noexcept
static void saveData(std::ostream &os, UT_Vector3D v)
const UT_StringHolder & getKernel() const
const OP_GraphProxy * graph() const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
static void saveData(std::ostream &os, UT_Matrix3D v)
void setPrimitiveattribs(bool val)
Dstgrouptype getDstgrouptype() const
int64 opMaxsamplecount(const SOP_NodeVerb::CookParms &cookparms) const
bool opMatchpattrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opPointattriblist(const SOP_NodeVerb::CookParms &cookparms) const
void setDetailattriblist(const UT_StringHolder &val)
static void saveData(std::ostream &os, bool v)
bool getDetailattribs() const
static void saveData(std::ostream &os, UT_Matrix2D v)
fpreal64 opKernelradius(const SOP_NodeVerb::CookParms &cookparms) const
void setMatchpattrib(bool val)
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
bool opPointattribs(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
static void loadData(UT_IStream &is, UT_Vector3I &v)
void saveBinary(std::ostream &os) const
Save string to binary stream.
GT_API const UT_StringHolder version
void setKernel(const UT_StringHolder &val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
const UT_StringHolder & getPrimattriblist() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
bool getVertexattribs() const
fpreal64 opThresholddist(const SOP_NodeVerb::CookParms &cookparms) const
const char * getNestParmName(TempIndex fieldnum) const override
ParmType getNestParmType(TempIndex fieldnum) const override
void setKernelradius(fpreal64 val)
void setSrcgroups(const UT_StringHolder &val)
bool opDetailattribs(const SOP_NodeVerb::CookParms &cookparms) const
DEP_MicroNode * depnode() const
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
static void loadData(UT_IStream &is, UT_Vector4D &v)
LeafData & operator=(const LeafData &)=delete
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
Utility class for containing a color ramp.
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
constexpr SYS_FORCE_INLINE T & w() noexcept
int64 getMaxsamplecount() const
fpreal getCookTime() const
const UT_StringHolder & getDstgroups() const
static void loadData(UT_IStream &is, UT_Matrix2D &v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
const char * findChar(int c) const
fpreal64 getKernelradius() const
static void saveData(std::ostream &os, fpreal64 v)
bool opVertexattribs(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
void setThreshold(bool val)
fpreal64 getThresholddist() const
fpreal64 opUniformbias(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector2D v)
bool getPointattribs() const
UT_StringHolder opPrimattriblist(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & y() noexcept
bool operator!=(const SOP_AttribTransferParms &src) const
UT_StringHolder opDetailattriblist(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getPointattriblist() const
bool opPrimitiveattribs(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix4D v)
void setPrimattriblist(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
fpreal64 opBlendwidth(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector4D v)
void setVertexattriblist(const UT_StringHolder &val)
constexpr SYS_FORCE_INLINE T & y() noexcept
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
SYS_FORCE_INLINE bool isstring() const
static void saveData(std::ostream &os, UT_StringHolder s)
static void loadData(UT_IStream &is, UT_StringHolder &v)
bool getPrimitiveattribs() const
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
UT_StringHolder opSrcgroups(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
const UT_StringHolder & getVertexattriblist() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
Dstgrouptype opDstgrouptype(const SOP_NodeVerb::CookParms &cookparms) const