23 namespace SOP_FuseEnums
35 using namespace UT::Literal;
54 using namespace UT::Literal;
73 using namespace UT::Literal;
92 using namespace UT::Literal;
115 myKeepunusedpoints =
false;
116 myKeepconsolidatedpoints =
false;
117 myGrouppropagation = 0;
121 mySnappointpos =
true;
122 mySnappointattribs =
false;
123 myPointattribnames =
""_UTsh;
146 if (myGroup != src.myGroup)
return false;
147 if (myUsedist != src.myUsedist)
return false;
148 if (myDist != src.myDist)
return false;
149 if (myDeldegen != src.myDeldegen)
return false;
150 if (myKeepunusedpoints != src.myKeepunusedpoints)
return false;
151 if (myKeepconsolidatedpoints != src.myKeepconsolidatedpoints)
return false;
152 if (myGrouppropagation != src.myGrouppropagation)
return false;
153 if (mySwitcher != src.mySwitcher)
return false;
154 if (mySnaptype != src.mySnaptype)
return false;
155 if (myTol3d != src.myTol3d)
return false;
156 if (mySnappointpos != src.mySnappointpos)
return false;
157 if (mySnappointattribs != src.mySnappointattribs)
return false;
158 if (myPointattribnames != src.myPointattribnames)
return false;
159 if (mySnapswitcher != src.mySnapswitcher)
return false;
160 if (myGridtype != src.myGridtype)
return false;
161 if (myGridspacing != src.myGridspacing)
return false;
162 if (myGridlines != src.myGridlines)
return false;
163 if (myGridpow2 != src.myGridpow2)
return false;
164 if (myGridoffset != src.myGridoffset)
return false;
165 if (myGridround != src.myGridround)
return false;
166 if (myGridtol != src.myGridtol)
return false;
167 if (myUpdatenml != src.myUpdatenml)
return false;
168 if (myAccurate != src.myAccurate)
return false;
187 graph->
evalOpParm(myGroup, nodeidx,
"group", time, 0);
190 graph->
evalOpParm(myUsedist, nodeidx,
"usedist", time, 0);
192 if (
true && ( (
true&&!(((getUsedist()==0)))) ) )
193 graph->
evalOpParm(myDist, nodeidx,
"dist", time, 0);
196 graph->
evalOpParm(myDeldegen, nodeidx,
"deldegen", time, 0);
197 myKeepunusedpoints =
false;
199 graph->
evalOpParm(myKeepunusedpoints, nodeidx,
"keepunusedpoints", time, 0);
200 myKeepconsolidatedpoints =
false;
202 graph->
evalOpParm(myKeepconsolidatedpoints, nodeidx,
"keepconsolidatedpoints", time, 0);
203 myGrouppropagation = 0;
205 graph->
evalOpParm(myGrouppropagation, nodeidx,
"grouppropagation", time, 0);
208 graph->
evalOpParm(mySwitcher, nodeidx,
"switcher", time, 0);
211 graph->
evalOpParm(mySnaptype, nodeidx,
"snaptype", time, 0);
214 graph->
evalOpParm(myTol3d, nodeidx,
"tol3d", time, 0);
215 mySnappointpos =
true;
217 graph->
evalOpParm(mySnappointpos, nodeidx,
"snappointpos", time, 0);
218 mySnappointattribs =
false;
220 graph->
evalOpParm(mySnappointattribs, nodeidx,
"snappointattribs", time, 0);
221 myPointattribnames =
""_UTsh;
222 if (
true && ( (
true&&!(((getSnappointattribs()==0)))) ) )
223 graph->
evalOpParm(myPointattribnames, nodeidx,
"pointattribnames", time, 0);
226 graph->
evalOpParm(mySnapswitcher, nodeidx,
"snapswitcher", time, 0);
229 graph->
evalOpParm(myGridtype, nodeidx,
"gridtype", time, 0);
231 if (
true && ( (
true&&!(((
int64(getGridtype())!=0)))) ) )
232 graph->
evalOpParm(myGridspacing, nodeidx,
"gridspacing", time, 0);
234 if (
true && ( (
true&&!(((
int64(getGridtype())!=1)))) ) )
235 graph->
evalOpParm(myGridlines, nodeidx,
"gridlines", time, 0);
237 if (
true && ( (
true&&!(((
int64(getGridtype())!=2)))) ) )
238 graph->
evalOpParm(myGridpow2, nodeidx,
"gridpow2", time, 0);
241 graph->
evalOpParm(myGridoffset, nodeidx,
"gridoffset", time, 0);
244 graph->
evalOpParm(myGridround, nodeidx,
"gridround", time, 0);
247 graph->
evalOpParm(myGridtol, nodeidx,
"gridtol", time, 0);
250 graph->
evalOpParm(myUpdatenml, nodeidx,
"updatenml", time, 0);
252 if (
true && ( (
true&&!(((
int64(getSwitcher())==1))||((
int64(getSwitcher())==2)&&(
int64(getSnapswitcher())!=0)))) ) )
253 graph->
evalOpParm(myAccurate, nodeidx,
"accurate", time, 0);
269 template <
typename T>
276 if (idx.
size() != instance.
size()+1)
281 coerceValue(value, myGroup);
284 coerceValue(value, myUsedist);
287 coerceValue(value, myDist);
290 coerceValue(value, myDeldegen);
293 coerceValue(value, myKeepunusedpoints);
296 coerceValue(value, myKeepconsolidatedpoints);
299 coerceValue(value, myGrouppropagation);
302 coerceValue(value, mySwitcher);
305 coerceValue(value, mySnaptype);
308 coerceValue(value, myTol3d);
311 coerceValue(value, mySnappointpos);
314 coerceValue(value, mySnappointattribs);
317 coerceValue(value, myPointattribnames);
320 coerceValue(value, mySnapswitcher);
323 coerceValue(value, myGridtype);
326 coerceValue(value, myGridspacing);
329 coerceValue(value, myGridlines);
332 coerceValue(value, myGridpow2);
335 coerceValue(value, myGridoffset);
338 coerceValue(value, myGridround);
341 coerceValue(value, myGridtol);
344 coerceValue(value, myUpdatenml);
347 coerceValue(value, myAccurate);
363 { doGetParmValue(idx, instance, value); }
365 { doGetParmValue(idx, instance, value); }
367 { doGetParmValue(idx, instance, value); }
369 { doGetParmValue(idx, instance, value); }
371 { doGetParmValue(idx, instance, value); }
373 { doGetParmValue(idx, instance, value); }
375 { doGetParmValue(idx, instance, value); }
377 { doGetParmValue(idx, instance, value); }
379 { doGetParmValue(idx, instance, value); }
381 { doGetParmValue(idx, instance, value); }
383 { doGetParmValue(idx, instance, value); }
385 template <
typename T>
392 if (idx.
size() != instance.
size()+1)
397 coerceValue(myGroup, ( ( value ) ));
400 coerceValue(myUsedist, ( ( value ) ));
403 coerceValue(myDist, ( ( value ) ));
406 coerceValue(myDeldegen, ( ( value ) ));
409 coerceValue(myKeepunusedpoints, ( ( value ) ));
412 coerceValue(myKeepconsolidatedpoints, ( ( value ) ));
415 coerceValue(myGrouppropagation, clampMinValue(0, clampMaxValue(2, value ) ));
418 coerceValue(mySwitcher, ( ( value ) ));
421 coerceValue(mySnaptype, clampMinValue(0, clampMaxValue(2, value ) ));
424 coerceValue(myTol3d, ( ( value ) ));
427 coerceValue(mySnappointpos, ( ( value ) ));
430 coerceValue(mySnappointattribs, ( ( value ) ));
433 coerceValue(myPointattribnames, ( ( value ) ));
436 coerceValue(mySnapswitcher, ( ( value ) ));
439 coerceValue(myGridtype, clampMinValue(0, clampMaxValue(2, value ) ));
442 coerceValue(myGridspacing, ( ( value ) ));
445 coerceValue(myGridlines, ( ( value ) ));
448 coerceValue(myGridpow2, ( ( value ) ));
451 coerceValue(myGridoffset, ( ( value ) ));
454 coerceValue(myGridround, clampMinValue(0, clampMaxValue(2, value ) ));
457 coerceValue(myGridtol, ( ( value ) ));
460 coerceValue(myUpdatenml, ( ( value ) ));
463 coerceValue(myAccurate, ( ( value ) ));
470 { doSetParmValue(idx, instance, value); }
472 { doSetParmValue(idx, instance, value); }
474 { doSetParmValue(idx, instance, value); }
476 { doSetParmValue(idx, instance, value); }
478 { doSetParmValue(idx, instance, value); }
480 { doSetParmValue(idx, instance, value); }
482 { doSetParmValue(idx, instance, value); }
484 { doSetParmValue(idx, instance, value); }
486 { doSetParmValue(idx, instance, value); }
488 { doSetParmValue(idx, instance, value); }
490 { doSetParmValue(idx, instance, value); }
506 if (fieldnum.
size() < 1)
519 return "keepunusedpoints";
521 return "keepconsolidatedpoints";
523 return "grouppropagation";
531 return "snappointpos";
533 return "snappointattribs";
535 return "pointattribnames";
537 return "snapswitcher";
541 return "gridspacing";
563 if (fieldnum.
size() < 1)
564 return PARM_UNSUPPORTED;
615 return PARM_UNSUPPORTED;
651 loadData(is, rampdata);
669 int typelen = colon - data.
buffer();
683 {
int64 iv =
v; UTwrite(os, &iv); }
685 { UTwrite<fpreal64>(os, &
v); }
687 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
689 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
690 UTwrite<fpreal64>(os, &v.
z()); }
692 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
693 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
705 if (s) s->save(ostr);
707 saveData(os, result);
714 ostr << s->getDataTypeToken();
719 saveData(os, result);
723 void save(std::ostream &os)
const
727 saveData(os, myGroup);
728 saveData(os, myUsedist);
729 saveData(os, myDist);
730 saveData(os, myDeldegen);
731 saveData(os, myKeepunusedpoints);
732 saveData(os, myKeepconsolidatedpoints);
733 saveData(os, myGrouppropagation);
734 saveData(os, mySwitcher);
735 saveData(os, mySnaptype);
736 saveData(os, myTol3d);
737 saveData(os, mySnappointpos);
738 saveData(os, mySnappointattribs);
739 saveData(os, myPointattribnames);
740 saveData(os, mySnapswitcher);
741 saveData(os, myGridtype);
742 saveData(os, myGridspacing);
743 saveData(os, myGridlines);
744 saveData(os, myGridpow2);
745 saveData(os, myGridoffset);
746 saveData(os, myGridround);
747 saveData(os, myGridtol);
748 saveData(os, myUpdatenml);
749 saveData(os, myAccurate);
762 loadData(is, myGroup);
763 loadData(is, myUsedist);
764 loadData(is, myDist);
765 loadData(is, myDeldegen);
766 loadData(is, myKeepunusedpoints);
767 loadData(is, myKeepconsolidatedpoints);
768 loadData(is, myGrouppropagation);
769 loadData(is, mySwitcher);
770 loadData(is, mySnaptype);
771 loadData(is, myTol3d);
772 loadData(is, mySnappointpos);
773 loadData(is, mySnappointattribs);
774 loadData(is, myPointattribnames);
775 loadData(is, mySnapswitcher);
776 loadData(is, myGridtype);
777 loadData(is, myGridspacing);
778 loadData(is, myGridlines);
779 loadData(is, myGridpow2);
780 loadData(is, myGridoffset);
781 loadData(is, myGridround);
782 loadData(is, myGridtol);
783 loadData(is, myUpdatenml);
784 loadData(is, myAccurate);
794 if (!thissop)
return getGroup();
796 OP_Utils::evalOpParm(result, thissop,
"group", cookparms.
getCookTime(), 0);
804 if (!thissop)
return getUsedist();
806 OP_Utils::evalOpParm(result, thissop,
"usedist", cookparms.
getCookTime(), 0);
814 if (!thissop)
return getDist();
816 OP_Utils::evalOpParm(result, thissop,
"dist", cookparms.
getCookTime(), 0);
824 if (!thissop)
return getDeldegen();
826 OP_Utils::evalOpParm(result, thissop,
"deldegen", cookparms.
getCookTime(), 0);
834 if (!thissop)
return getKeepunusedpoints();
836 OP_Utils::evalOpParm(result, thissop,
"keepunusedpoints", cookparms.
getCookTime(), 0);
844 if (!thissop)
return getKeepconsolidatedpoints();
846 OP_Utils::evalOpParm(result, thissop,
"keepconsolidatedpoints", cookparms.
getCookTime(), 0);
854 if (!thissop)
return getGrouppropagation();
856 OP_Utils::evalOpParm(result, thissop,
"grouppropagation", cookparms.
getCookTime(), 0);
864 if (!thissop)
return getSwitcher();
866 OP_Utils::evalOpParm(result, thissop,
"switcher", cookparms.
getCookTime(), 0);
874 if (!thissop)
return getSnaptype();
876 OP_Utils::evalOpParm(result, thissop,
"snaptype", cookparms.
getCookTime(), 0);
884 if (!thissop)
return getTol3d();
886 OP_Utils::evalOpParm(result, thissop,
"tol3d", cookparms.
getCookTime(), 0);
894 if (!thissop)
return getSnappointpos();
896 OP_Utils::evalOpParm(result, thissop,
"snappointpos", cookparms.
getCookTime(), 0);
904 if (!thissop)
return getSnappointattribs();
906 OP_Utils::evalOpParm(result, thissop,
"snappointattribs", cookparms.
getCookTime(), 0);
914 if (!thissop)
return getPointattribnames();
916 OP_Utils::evalOpParm(result, thissop,
"pointattribnames", cookparms.
getCookTime(), 0);
924 if (!thissop)
return getSnapswitcher();
926 OP_Utils::evalOpParm(result, thissop,
"snapswitcher", cookparms.
getCookTime(), 0);
934 if (!thissop)
return getGridtype();
936 OP_Utils::evalOpParm(result, thissop,
"gridtype", cookparms.
getCookTime(), 0);
944 if (!thissop)
return getGridspacing();
946 OP_Utils::evalOpParm(result, thissop,
"gridspacing", cookparms.
getCookTime(), 0);
954 if (!thissop)
return getGridlines();
956 OP_Utils::evalOpParm(result, thissop,
"gridlines", cookparms.
getCookTime(), 0);
964 if (!thissop)
return getGridpow2();
966 OP_Utils::evalOpParm(result, thissop,
"gridpow2", cookparms.
getCookTime(), 0);
974 if (!thissop)
return getGridoffset();
976 OP_Utils::evalOpParm(result, thissop,
"gridoffset", cookparms.
getCookTime(), 0);
984 if (!thissop)
return getGridround();
986 OP_Utils::evalOpParm(result, thissop,
"gridround", cookparms.
getCookTime(), 0);
994 if (!thissop)
return getGridtol();
996 OP_Utils::evalOpParm(result, thissop,
"gridtol", cookparms.
getCookTime(), 0);
1004 if (!thissop)
return getUpdatenml();
1006 OP_Utils::evalOpParm(result, thissop,
"updatenml", cookparms.
getCookTime(), 0);
1014 if (!thissop)
return getAccurate();
1016 OP_Utils::evalOpParm(result, thissop,
"accurate", cookparms.
getCookTime(), 0);
1025 bool myKeepunusedpoints;
1026 bool myKeepconsolidatedpoints;
1027 int64 myGrouppropagation;
1031 bool mySnappointpos;
1032 bool mySnappointattribs;
1034 int64 mySnapswitcher;
void setSnaptype(Snaptype val)
static void saveData(std::ostream &os, UT_Vector3D v)
void setPointattribnames(const UT_StringHolder &val)
UT_Vector3D getGridoffset() const
static void saveData(std::ostream &os, UT_StringHolder s)
static void saveData(std::ostream &os, int64 v)
UT_StringHolder opPointattribnames(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
SOP_Node * getNode() const
static void loadData(UT_IStream &is, UT_StringHolder &v)
int64 opSnapswitcher(const SOP_NodeVerb::CookParms &cookparms) const
void setGridlines(UT_Vector3D val)
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
static void loadData(UT_IStream &is, bool &v)
exint bread(int32 *buffer, exint asize=1)
static void saveData(std::ostream &os, PRM_DataItemHandle s)
UT_StringHolder opGroup(const SOP_NodeVerb::CookParms &cookparms) const
GT_API const UT_StringHolder time
constexpr SYS_FORCE_INLINE T & y() noexcept
int64 getSnapswitcher() const
UT_Vector3D opGridoffset(const SOP_NodeVerb::CookParms &cookparms) const
void copyFrom(const OP_NodeParms *src) override
static void loadData(UT_IStream &is, UT_Vector4I &v)
bool getSnappointattribs() const
static void loadData(UT_IStream &is, UT_Vector3D &v)
Grouppropagation opGrouppropagation(const SOP_NodeVerb::CookParms &cookparms) const
const OP_Context & context() const
void setGridtype(Gridtype val)
void setGrouppropagation(Grouppropagation val)
constexpr SYS_FORCE_INLINE T & z() noexcept
bool opUsedist(const SOP_NodeVerb::CookParms &cookparms) const
const char * getNestParmName(TempIndex fieldnum) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
SYS_FORCE_INLINE const char * buffer() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
bool operator==(const SOP_FuseParms &src) const
static void loadData(UT_IStream &is, UT_Vector2I &v)
An output stream object that owns its own string buffer storage.
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
**But if you need a result
SYS_FORCE_INLINE UT_StringHolder getToken(Grouppropagation enum_value)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
UT_Vector3T< int64 > UT_Vector3I
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
fpreal64 getGridtol() const
static void loadData(UT_IStream &is, UT_Matrix2D &v)
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
static void saveData(std::ostream &os, bool v)
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
static void loadData(UT_IStream &is, fpreal64 &v)
exint getNestNumParms(TempIndex idx) const override
void setTol3d(fpreal64 val)
static void loadData(UT_IStream &is, UT_Vector3I &v)
UT_Vector3I getGridpow2() const
bool opSnappointpos(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
void setGridspacing(UT_Vector3D val)
static void saveData(std::ostream &os, fpreal64 v)
void setSnappointpos(bool val)
bool getSnappointpos() const
fpreal64 getTol3d() const
constexpr SYS_FORCE_INLINE T & x() noexcept
bool opSnappointattribs(const SOP_NodeVerb::CookParms &cookparms) const
void setKeepunusedpoints(bool val)
void setGridtol(fpreal64 val)
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
Gridround opGridround(const SOP_NodeVerb::CookParms &cookparms) const
Gridtype opGridtype(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
void loadFromOpSubclass(const LoadParms &loadparms) override
void setKeepconsolidatedpoints(bool val)
void setAccurate(bool val)
static void loadData(UT_IStream &is, UT_Matrix3D &v)
UT_Vector3I opGridpow2(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
void setGridround(Gridround val)
bool getKeepunusedpoints() const
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
UT_Vector3D opGridspacing(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opTol3d(const SOP_NodeVerb::CookParms &cookparms) const
void setUpdatenml(bool val)
constexpr SYS_FORCE_INLINE T & z() noexcept
ParmType getNestParmType(TempIndex fieldnum) const override
bool operator!=(const SOP_FuseParms &src) const
const OP_GraphProxy * graph() const
bool opUpdatenml(const SOP_NodeVerb::CookParms &cookparms) const
bool opAccurate(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
const UT_StringHolder & getPointattribnames() const
const UT_StringHolder & getGroup() const
static void loadData(UT_IStream &is, int64 &v)
void save(std::ostream &os) const
UT_Vector3T< fpreal64 > UT_Vector3D
Snaptype getSnaptype() const
bool load(UT_IStream &is)
bool getKeepconsolidatedpoints() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
void setSwitcher(int64 val)
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
static void saveData(std::ostream &os, UT_Matrix4D v)
void saveBinary(std::ostream &os) const
Save string to binary stream.
GT_API const UT_StringHolder version
int64 opSwitcher(const SOP_NodeVerb::CookParms &cookparms) const
bool getUpdatenml() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
Grouppropagation getGrouppropagation() const
UT_Vector3D getGridlines() const
void setGridoffset(UT_Vector3D val)
static void loadData(UT_IStream &is, UT_Vector2D &v)
fpreal64 opGridtol(const SOP_NodeVerb::CookParms &cookparms) const
Gridtype getGridtype() const
UT_Vector3D getGridspacing() const
static void saveData(std::ostream &os, UT_Vector2D v)
void setUsedist(bool val)
bool isParmColorRamp(exint idx) const override
Gridround getGridround() const
void setGridpow2(UT_Vector3I val)
DEP_MicroNode * depnode() const
LeafData & operator=(const LeafData &)=delete
Utility class for containing a color ramp.
static void saveData(std::ostream &os, UT_Matrix2D v)
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
void setDist(fpreal64 val)
constexpr SYS_FORCE_INLINE T & w() noexcept
void setSnappointattribs(bool val)
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
bool opDeldegen(const SOP_NodeVerb::CookParms &cookparms) const
fpreal getCookTime() const
static void loadData(UT_IStream &is, UT_Vector4D &v)
void setGroup(const UT_StringHolder &val)
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
UT_Vector3D opGridlines(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
const char * findChar(int c) const
int64 getSwitcher() const
static void saveData(std::ostream &os, UT_Vector4D v)
void setSnapswitcher(int64 val)
Snaptype opSnaptype(const SOP_NodeVerb::CookParms &cookparms) const
bool opKeepconsolidatedpoints(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opDist(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix3D v)
constexpr SYS_FORCE_INLINE T & y() noexcept
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
constexpr SYS_FORCE_INLINE T & y() noexcept
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
SYS_FORCE_INLINE bool isstring() const
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
void setDeldegen(bool val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
static void loadData(UT_IStream &is, UT_Matrix4D &v)
constexpr SYS_FORCE_INLINE T & x() noexcept
bool opKeepunusedpoints(const SOP_NodeVerb::CookParms &cookparms) const