23 namespace SOP_BoundEnums
57 myKeeporiginal =
false;
58 myCreateBoundingGeo =
true;
61 myOrientedbbox =
false;
62 myRefinementIterations = 6;
70 myOrientedBRect =
false;
76 myAddBoundsGroup =
false;
77 myBoundsGroup =
"bounds"_UTsh;
78 myAddXformAttrib =
false;
79 myXformAttrib =
"xform"_UTsh;
80 myAddRadiiAttrib =
false;
81 myRadiiAttrib =
"radii"_UTsh;
94 if (myGroup != src.myGroup)
return false;
95 if (myGrouptype != src.myGrouptype)
return false;
96 if (myKeeporiginal != src.myKeeporiginal)
return false;
97 if (myCreateBoundingGeo != src.myCreateBoundingGeo)
return false;
98 if (myCreateempty != src.myCreateempty)
return false;
99 if (myBoundType != src.myBoundType)
return false;
100 if (myOrientedbbox != src.myOrientedbbox)
return false;
101 if (myRefinementIterations != src.myRefinementIterations)
return false;
102 if (myDodivs != src.myDodivs)
return false;
103 if (myDivs != src.myDivs)
return false;
104 if (myRebar != src.myRebar)
return false;
105 if (myMinsize != src.myMinsize)
return false;
106 if (myOrient != src.myOrient)
return false;
107 if (myAccurate != src.myAccurate)
return false;
108 if (myMinradius != src.myMinradius)
return false;
109 if (myOrientedBRect != src.myOrientedBRect)
return false;
110 if (myOrigin != src.myOrigin)
return false;
111 if (myDistance != src.myDistance)
return false;
112 if (myDirection != src.myDirection)
return false;
113 if (myMinpad != src.myMinpad)
return false;
114 if (myMaxpad != src.myMaxpad)
return false;
115 if (myAddBoundsGroup != src.myAddBoundsGroup)
return false;
116 if (myBoundsGroup != src.myBoundsGroup)
return false;
117 if (myAddXformAttrib != src.myAddXformAttrib)
return false;
118 if (myXformAttrib != src.myXformAttrib)
return false;
119 if (myAddRadiiAttrib != src.myAddRadiiAttrib)
return false;
120 if (myRadiiAttrib != src.myRadiiAttrib)
return false;
138 graph->
evalOpParm(myGroup, nodeidx,
"group", time, 0);
141 graph->
evalOpParm(myGrouptype, nodeidx,
"grouptype", time, 0);
142 myKeeporiginal =
false;
144 graph->
evalOpParm(myKeeporiginal, nodeidx,
"keepOriginal", time, 0);
145 myCreateBoundingGeo =
true;
147 graph->
evalOpParm(myCreateBoundingGeo, nodeidx,
"createboundinggeo", time, 0);
148 myCreateempty =
true;
149 if (
true && ( (
true&&!(((getCreateBoundingGeo()==0)))) ) )
150 graph->
evalOpParm(myCreateempty, nodeidx,
"createempty", time, 0);
153 graph->
evalOpParm(myBoundType, nodeidx,
"boundtype", time, 0);
154 myOrientedbbox =
false;
155 if (
true && ( (
true&&!(((
int64(getBoundType())!=0)))) ) )
156 graph->
evalOpParm(myOrientedbbox, nodeidx,
"orientedbbox", time, 0);
157 myRefinementIterations = 6;
158 if (
true && ( (
true&&!(((
int64(getBoundType())!=0))||((getOrientedbbox()==0))||((
int64(getBoundType())!=0))||((getOrientedbbox()==0)))) ) )
159 graph->
evalOpParm(myRefinementIterations, nodeidx,
"refinementiterations", time, 0);
161 if (
true && ( (
true&&!(((getCreateBoundingGeo()==0))||((
int64(getBoundType())!=0)))) ) )
162 graph->
evalOpParm(myDodivs, nodeidx,
"dodivs", time, 0);
164 if (
true && ( (
true&&!(((getDodivs()==0))||((getCreateBoundingGeo()==0))||((
int64(getBoundType())!=0)))) ) )
165 graph->
evalOpParm(myDivs, nodeidx,
"divs", time, 0);
167 if (
true && ( (
true&&!(((getDodivs()==0))||((getCreateBoundingGeo()==0))||((
int64(getBoundType())!=0)))) ) )
168 graph->
evalOpParm(myRebar, nodeidx,
"rebar", time, 0);
170 if (
true && ( (
true&&!(((
int64(getBoundType())!=0)))) ) )
171 graph->
evalOpParm(myMinsize, nodeidx,
"minsize", time, 0);
173 if (
true && ( (
true&&!(((getCreateBoundingGeo()==0))||((
int64(getBoundType())!=1)))) ) )
174 graph->
evalOpParm(myOrient, nodeidx,
"orient", time, 0);
176 if (
true && ( (
true&&!(((
int64(getBoundType())!=1)))) ) )
177 graph->
evalOpParm(myAccurate, nodeidx,
"accurate", time, 0);
179 if (
true && ( (
true&&!(((
int64(getBoundType())!=1)))) ) )
180 graph->
evalOpParm(myMinradius, nodeidx,
"minradius", time, 0);
181 myOrientedBRect =
false;
182 if (
true && ( (
true&&!(((
int64(getBoundType())!=2)))) ) )
183 graph->
evalOpParm(myOrientedBRect, nodeidx,
"orientedbrect", time, 0);
185 if (
true && ( (
true&&!(((
int64(getBoundType())!=2)))) ) )
186 graph->
evalOpParm(myOrigin, nodeidx,
"origin", time, 0);
188 if (
true && ( (
true&&!(((
int64(getBoundType())!=2)))) ) )
189 graph->
evalOpParm(myDistance, nodeidx,
"dist", time, 0);
191 if (
true && ( (
true&&!(((
int64(getBoundType())!=2)))) ) )
192 graph->
evalOpParm(myDirection, nodeidx,
"dir", time, 0);
195 graph->
evalOpParm(myMinpad, nodeidx,
"minpad", time, 0);
198 graph->
evalOpParm(myMaxpad, nodeidx,
"maxpad", time, 0);
199 myAddBoundsGroup =
false;
200 if (
true && ( (
true&&!(((getCreateBoundingGeo()==0)))) ) )
201 graph->
evalOpParm(myAddBoundsGroup, nodeidx,
"addboundsgroup", time, 0);
202 myBoundsGroup =
"bounds"_UTsh;
203 if (
true && ( (
true&&!(((getAddBoundsGroup()==0))||((getCreateBoundingGeo()==0)))) ) )
204 graph->
evalOpParm(myBoundsGroup, nodeidx,
"boundsgroup", time, 0);
205 myAddXformAttrib =
false;
207 graph->
evalOpParm(myAddXformAttrib, nodeidx,
"addxformattrib", time, 0);
208 myXformAttrib =
"xform"_UTsh;
209 if (
true && ( (
true&&!(((getAddXformAttrib()==0)))) ) )
210 graph->
evalOpParm(myXformAttrib, nodeidx,
"xformattrib", time, 0);
211 myAddRadiiAttrib =
false;
213 graph->
evalOpParm(myAddRadiiAttrib, nodeidx,
"addradiiattrib", time, 0);
214 myRadiiAttrib =
"radii"_UTsh;
215 if (
true && ( (
true&&!(((getAddRadiiAttrib()==0)))) ) )
216 graph->
evalOpParm(myRadiiAttrib, nodeidx,
"radiiattrib", time, 0);
232 template <
typename T>
239 if (idx.
size() != instance.
size()+1)
338 { doGetParmValue(idx, instance, value); }
340 { doGetParmValue(idx, instance, value); }
342 { doGetParmValue(idx, instance, value); }
344 { doGetParmValue(idx, instance, value); }
346 { doGetParmValue(idx, instance, value); }
348 { doGetParmValue(idx, instance, value); }
350 { doGetParmValue(idx, instance, value); }
352 { doGetParmValue(idx, instance, value); }
354 { doGetParmValue(idx, instance, value); }
356 { doGetParmValue(idx, instance, value); }
358 { doGetParmValue(idx, instance, value); }
360 template <
typename T>
367 if (idx.
size() != instance.
size()+1)
457 { doSetParmValue(idx, instance, value); }
459 { doSetParmValue(idx, instance, value); }
461 { doSetParmValue(idx, instance, value); }
463 { doSetParmValue(idx, instance, value); }
465 { doSetParmValue(idx, instance, value); }
467 { doSetParmValue(idx, instance, value); }
469 { doSetParmValue(idx, instance, value); }
471 { doSetParmValue(idx, instance, value); }
473 { doSetParmValue(idx, instance, value); }
475 { doSetParmValue(idx, instance, value); }
477 { doSetParmValue(idx, instance, value); }
493 if (fieldnum.
size() < 1)
502 return "keepOriginal";
504 return "createboundinggeo";
506 return "createempty";
510 return "orientedbbox";
512 return "refinementiterations";
528 return "orientedbrect";
540 return "addboundsgroup";
542 return "boundsgroup";
544 return "addxformattrib";
546 return "xformattrib";
548 return "addradiiattrib";
550 return "radiiattrib";
558 if (fieldnum.
size() < 1)
559 return PARM_UNSUPPORTED;
637 {
for (
int r = 0;
r < 2;
r++)
for (
int c = 0; c < 2; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
639 {
for (
int r = 0;
r < 3;
r++)
for (
int c = 0; c < 3; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
641 {
for (
int r = 0;
r < 4;
r++)
for (
int c = 0; c < 4; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
654 loadData(is, rampdata);
672 int typelen = colon - data.
buffer();
686 {
int64 iv =
v; UTwrite(os, &iv); }
688 { UTwrite<fpreal64>(os, &
v); }
690 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
692 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
693 UTwrite<fpreal64>(os, &v.
z()); }
695 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
696 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
708 if (s) s->save(ostr);
710 saveData(os, result);
717 ostr << s->getDataTypeToken();
722 saveData(os, result);
726 void save(std::ostream &os)
const
730 saveData(os, myGroup);
731 saveData(os, myGrouptype);
732 saveData(os, myKeeporiginal);
733 saveData(os, myCreateBoundingGeo);
734 saveData(os, myCreateempty);
735 saveData(os, myBoundType);
736 saveData(os, myOrientedbbox);
737 saveData(os, myRefinementIterations);
738 saveData(os, myDodivs);
739 saveData(os, myDivs);
740 saveData(os, myRebar);
741 saveData(os, myMinsize);
742 saveData(os, myOrient);
743 saveData(os, myAccurate);
744 saveData(os, myMinradius);
745 saveData(os, myOrientedBRect);
746 saveData(os, myOrigin);
747 saveData(os, myDistance);
748 saveData(os, myDirection);
749 saveData(os, myMinpad);
750 saveData(os, myMaxpad);
751 saveData(os, myAddBoundsGroup);
752 saveData(os, myBoundsGroup);
753 saveData(os, myAddXformAttrib);
754 saveData(os, myXformAttrib);
755 saveData(os, myAddRadiiAttrib);
756 saveData(os, myRadiiAttrib);
769 loadData(is, myGroup);
770 loadData(is, myGrouptype);
771 loadData(is, myKeeporiginal);
772 loadData(is, myCreateBoundingGeo);
773 loadData(is, myCreateempty);
774 loadData(is, myBoundType);
775 loadData(is, myOrientedbbox);
776 loadData(is, myRefinementIterations);
777 loadData(is, myDodivs);
778 loadData(is, myDivs);
779 loadData(is, myRebar);
780 loadData(is, myMinsize);
781 loadData(is, myOrient);
782 loadData(is, myAccurate);
783 loadData(is, myMinradius);
784 loadData(is, myOrientedBRect);
785 loadData(is, myOrigin);
786 loadData(is, myDistance);
787 loadData(is, myDirection);
788 loadData(is, myMinpad);
789 loadData(is, myMaxpad);
790 loadData(is, myAddBoundsGroup);
791 loadData(is, myBoundsGroup);
792 loadData(is, myAddXformAttrib);
793 loadData(is, myXformAttrib);
794 loadData(is, myAddRadiiAttrib);
795 loadData(is, myRadiiAttrib);
805 if (!thissop)
return getGroup();
807 OP_Utils::evalOpParm(result, thissop,
"group", cookparms.
getCookTime(), 0);
815 if (!thissop)
return getGrouptype();
817 OP_Utils::evalOpParm(result, thissop,
"grouptype", cookparms.
getCookTime(), 0);
825 if (!thissop)
return getKeeporiginal();
827 OP_Utils::evalOpParm(result, thissop,
"keepOriginal", cookparms.
getCookTime(), 0);
835 if (!thissop)
return getCreateBoundingGeo();
837 OP_Utils::evalOpParm(result, thissop,
"createboundinggeo", cookparms.
getCookTime(), 0);
845 if (!thissop)
return getCreateempty();
847 OP_Utils::evalOpParm(result, thissop,
"createempty", cookparms.
getCookTime(), 0);
855 if (!thissop)
return getBoundType();
857 OP_Utils::evalOpParm(result, thissop,
"boundtype", cookparms.
getCookTime(), 0);
865 if (!thissop)
return getOrientedbbox();
867 OP_Utils::evalOpParm(result, thissop,
"orientedbbox", cookparms.
getCookTime(), 0);
875 if (!thissop)
return getRefinementIterations();
877 OP_Utils::evalOpParm(result, thissop,
"refinementiterations", cookparms.
getCookTime(), 0);
885 if (!thissop)
return getDodivs();
887 OP_Utils::evalOpParm(result, thissop,
"dodivs", cookparms.
getCookTime(), 0);
895 if (!thissop)
return getDivs();
897 OP_Utils::evalOpParm(result, thissop,
"divs", cookparms.
getCookTime(), 0);
905 if (!thissop)
return getRebar();
907 OP_Utils::evalOpParm(result, thissop,
"rebar", cookparms.
getCookTime(), 0);
915 if (!thissop)
return getMinsize();
917 OP_Utils::evalOpParm(result, thissop,
"minsize", cookparms.
getCookTime(), 0);
925 if (!thissop)
return getOrient();
927 OP_Utils::evalOpParm(result, thissop,
"orient", cookparms.
getCookTime(), 0);
935 if (!thissop)
return getAccurate();
937 OP_Utils::evalOpParm(result, thissop,
"accurate", cookparms.
getCookTime(), 0);
945 if (!thissop)
return getMinradius();
947 OP_Utils::evalOpParm(result, thissop,
"minradius", cookparms.
getCookTime(), 0);
955 if (!thissop)
return getOrientedBRect();
957 OP_Utils::evalOpParm(result, thissop,
"orientedbrect", cookparms.
getCookTime(), 0);
965 if (!thissop)
return getOrigin();
967 OP_Utils::evalOpParm(result, thissop,
"origin", cookparms.
getCookTime(), 0);
975 if (!thissop)
return getDistance();
977 OP_Utils::evalOpParm(result, thissop,
"dist", cookparms.
getCookTime(), 0);
985 if (!thissop)
return getDirection();
987 OP_Utils::evalOpParm(result, thissop,
"dir", cookparms.
getCookTime(), 0);
995 if (!thissop)
return getMinpad();
997 OP_Utils::evalOpParm(result, thissop,
"minpad", cookparms.
getCookTime(), 0);
1005 if (!thissop)
return getMaxpad();
1007 OP_Utils::evalOpParm(result, thissop,
"maxpad", cookparms.
getCookTime(), 0);
1015 if (!thissop)
return getAddBoundsGroup();
1017 OP_Utils::evalOpParm(result, thissop,
"addboundsgroup", cookparms.
getCookTime(), 0);
1025 if (!thissop)
return getBoundsGroup();
1027 OP_Utils::evalOpParm(result, thissop,
"boundsgroup", cookparms.
getCookTime(), 0);
1035 if (!thissop)
return getAddXformAttrib();
1037 OP_Utils::evalOpParm(result, thissop,
"addxformattrib", cookparms.
getCookTime(), 0);
1045 if (!thissop)
return getXformAttrib();
1047 OP_Utils::evalOpParm(result, thissop,
"xformattrib", cookparms.
getCookTime(), 0);
1055 if (!thissop)
return getAddRadiiAttrib();
1057 OP_Utils::evalOpParm(result, thissop,
"addradiiattrib", cookparms.
getCookTime(), 0);
1065 if (!thissop)
return getRadiiAttrib();
1067 OP_Utils::evalOpParm(result, thissop,
"radiiattrib", cookparms.
getCookTime(), 0);
1074 bool myKeeporiginal;
1075 bool myCreateBoundingGeo;
1078 bool myOrientedbbox;
1079 int64 myRefinementIterations;
1087 bool myOrientedBRect;
1093 bool myAddBoundsGroup;
1095 bool myAddXformAttrib;
1097 bool myAddRadiiAttrib;
bool getKeeporiginal() const
bool getAddXformAttrib() const
static void saveData(std::ostream &os, bool v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
void setMaxpad(UT_Vector3D val)
bool load(UT_IStream &is)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
UT_StringHolder opGroup(const SOP_NodeVerb::CookParms &cookparms) const
SOP_Node * getNode() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
bool opCreateempty(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector2I &v)
UT_StringHolder opXformAttrib(const SOP_NodeVerb::CookParms &cookparms) const
bool getOrientedbbox() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
bool opDodivs(const SOP_NodeVerb::CookParms &cookparms) const
ParmType getNestParmType(TempIndex fieldnum) const override
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
Orient opOrient(const SOP_NodeVerb::CookParms &cookparms) const
T clampMaxValue(fpreal maxvalue, const T &src) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
static void loadData(UT_IStream &is, UT_Matrix3D &v)
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
exint bread(int32 *buffer, exint asize=1)
GT_API const UT_StringHolder time
constexpr SYS_FORCE_INLINE T & y() noexcept
static void loadData(UT_IStream &is, UT_Vector4I &v)
UT_Vector3D getOrigin() const
bool isParmColorRamp(exint idx) const override
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
bool getAddRadiiAttrib() const
static void saveData(std::ostream &os, UT_Vector3D v)
const OP_Context & context() const
constexpr SYS_FORCE_INLINE T & z() noexcept
UT_Vector3D getMinsize() const
const UT_StringHolder & getGroup() const
SYS_FORCE_INLINE const char * buffer() const
UT_Vector3D opDirection(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_StringHolder s)
void setXformAttrib(const UT_StringHolder &val)
bool opCreateBoundingGeo(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
An output stream object that owns its own string buffer storage.
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
bool opAddXformAttrib(const SOP_NodeVerb::CookParms &cookparms) const
bool getCreateBoundingGeo() const
static void loadData(UT_IStream &is, UT_Vector4D &v)
**But if you need a result
void setGroup(const UT_StringHolder &val)
UT_Vector3T< int64 > UT_Vector3I
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
T clampMinValue(fpreal minvalue, const T &src) const
bool opAccurate(const SOP_NodeVerb::CookParms &cookparms) const
bool opKeeporiginal(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix2D v)
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
static void saveData(std::ostream &os, PRM_DataItemHandle s)
constexpr SYS_FORCE_INLINE T & x() noexcept
void setOrientedbbox(bool val)
static void saveData(std::ostream &os, UT_Matrix3D v)
constexpr SYS_FORCE_INLINE T & x() noexcept
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
void setCreateBoundingGeo(bool val)
void loadFromOpSubclass(const LoadParms &loadparms) override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
int64 opRefinementIterations(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector3D &v)
UT_Vector3D opMaxpad(const SOP_NodeVerb::CookParms &cookparms) const
void save(std::ostream &os) const
void setAddRadiiAttrib(bool val)
void setRefinementIterations(int64 val)
void copyFrom(const OP_NodeParms *src) 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
bool opAddRadiiAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setDistance(fpreal64 val)
UT_Vector3I opDivs(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector2D v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
const OP_GraphProxy * graph() const
UT_Vector3D opOrigin(const SOP_NodeVerb::CookParms &cookparms) const
void setAddXformAttrib(bool val)
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
void setMinradius(fpreal64 val)
void setAddBoundsGroup(bool val)
UT_Vector3D opMinsize(const SOP_NodeVerb::CookParms &cookparms) const
BoundType opBoundType(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3I getDivs() const
void setKeeporiginal(bool val)
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
bool opOrientedBRect(const SOP_NodeVerb::CookParms &cookparms) const
void setMinsize(UT_Vector3D val)
void setCreateempty(bool val)
void setBoundType(BoundType val)
UT_Vector3T< fpreal64 > UT_Vector3D
static void loadData(UT_IStream &is, int64 &v)
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
bool opOrientedbbox(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Matrix2D &v)
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
void setDivs(UT_Vector3I val)
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
void setRadiiAttrib(const UT_StringHolder &val)
bool operator!=(const SOP_BoundParms &src) const
static void saveData(std::ostream &os, int64 v)
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
void saveBinary(std::ostream &os) const
Save string to binary stream.
void setOrigin(UT_Vector3D val)
UT_Vector3D getMinpad() const
GT_API const UT_StringHolder version
Grouptype getGrouptype() const
int64 getRefinementIterations() const
void setAccurate(bool val)
bool opRebar(const SOP_NodeVerb::CookParms &cookparms) const
void setOrient(Orient val)
bool getAddBoundsGroup() const
void coerceValue(T &result, const S &src) const
UT_StringHolder opBoundsGroup(const SOP_NodeVerb::CookParms &cookparms) const
void setDirection(UT_Vector3D val)
UT_StringHolder opRadiiAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
fpreal64 getMinradius() const
static void loadData(UT_IStream &is, bool &v)
DEP_MicroNode * depnode() const
UT_Vector3D opMinpad(const SOP_NodeVerb::CookParms &cookparms) const
Utility class for containing a color ramp.
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
static void saveData(std::ostream &os, fpreal64 v)
const char * getNestParmName(TempIndex fieldnum) const override
constexpr SYS_FORCE_INLINE T & w() noexcept
bool getCreateempty() const
void setBoundsGroup(const UT_StringHolder &val)
void setOrientedBRect(bool val)
const UT_StringHolder & getRadiiAttrib() const
static void loadData(UT_IStream &is, UT_Vector2D &v)
fpreal64 opMinradius(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_StringHolder &v)
fpreal getCookTime() const
BoundType getBoundType() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
static void loadData(UT_IStream &is, UT_Vector3I &v)
const char * findChar(int c) const
const UT_StringHolder & getBoundsGroup() const
UT_Vector3D getMaxpad() const
fpreal64 getDistance() const
static void loadData(UT_IStream &is, UT_Matrix4D &v)
bool getOrientedBRect() const
Grouptype opGrouptype(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opDistance(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & y() noexcept
UT_Vector3D getDirection() const
const UT_StringHolder & getXformAttrib() const
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
exint getNestNumParms(TempIndex idx) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
bool operator==(const SOP_BoundParms &src) const
static void saveData(std::ostream &os, UT_Matrix4D v)
constexpr SYS_FORCE_INLINE T & y() noexcept
void setGrouptype(Grouptype val)
SYS_FORCE_INLINE bool isstring() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
OP_NodeParms & operator=(const OP_NodeParms &)=default
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
void setMinpad(UT_Vector3D val)
bool opAddBoundsGroup(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, fpreal64 &v)
static void saveData(std::ostream &os, UT_Vector4D v)
constexpr SYS_FORCE_INLINE T & x() noexcept
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)