23 namespace SOP_Fuse_2_0Enums
120 attribsnapmethod = 8;
121 pointattribnames =
""_UTsh;
122 pointattribweightname =
"weight"_UTsh;
146 for (
int i = 0; i < list.
entries(); i++)
173 grouppropagation = 0;
174 pointgroupnames =
""_UTsh;
197 for (
int i = 0; i < list.
entries(); i++)
217 myQuerygroup =
""_UTsh;
218 myPosAttrib =
"P"_UTsh;
223 myTargetPtAttrib =
"snap_to"_UTsh;
225 myUsePositionSnapMethod =
true;
226 myPositionSnapMethod = 0;
227 myPositionSnapWeightName =
"weight"_UTsh;
228 myUseradiusattrib =
false;
229 myRadiusattrib =
"pscale"_UTsh;
230 myUsematchattrib =
false;
231 myMatchattrib =
"name"_UTsh;
242 myConsolidateSnappedPoints =
true;
243 myKeepConsolidatedPoints =
false;
245 myDelDegenPoints =
true;
246 myDelUnusedPoints =
false;
247 myRecomputenml =
true;
248 myCreatesnappedgroup =
false;
249 mySnappedgroupname =
"snapped_points"_UTsh;
250 myCreatesnappedattrib =
false;
251 mySnappedattribname =
"snapped_to"_UTsh;
252 myNumpointattribs.setSize(0);
253 myNumgroups.setSize(0);
254 myUsetargetgroup =
false;
255 myTargetgroup =
""_UTsh;
256 myModifyboth =
false;
269 if (myQuerygroup != src.myQuerygroup)
return false;
270 if (myPosAttrib != src.myPosAttrib)
return false;
271 if (mySnaptype != src.mySnaptype)
return false;
272 if (myAlgorithm != src.myAlgorithm)
return false;
273 if (myUseTol3D != src.myUseTol3D)
return false;
274 if (myTol3d != src.myTol3d)
return false;
275 if (myTargetPtAttrib != src.myTargetPtAttrib)
return false;
276 if (myTargetClass != src.myTargetClass)
return false;
277 if (myUsePositionSnapMethod != src.myUsePositionSnapMethod)
return false;
278 if (myPositionSnapMethod != src.myPositionSnapMethod)
return false;
279 if (myPositionSnapWeightName != src.myPositionSnapWeightName)
return false;
280 if (myUseradiusattrib != src.myUseradiusattrib)
return false;
281 if (myRadiusattrib != src.myRadiusattrib)
return false;
282 if (myUsematchattrib != src.myUsematchattrib)
return false;
283 if (myMatchattrib != src.myMatchattrib)
return false;
284 if (myMatchtype != src.myMatchtype)
return false;
285 if (myMatchTol != src.myMatchTol)
return false;
286 if (myGridtype != src.myGridtype)
return false;
287 if (myGridspacing != src.myGridspacing)
return false;
288 if (myGridlines != src.myGridlines)
return false;
289 if (myGridpow2 != src.myGridpow2)
return false;
290 if (myGridoffset != src.myGridoffset)
return false;
291 if (myGridround != src.myGridround)
return false;
292 if (myUseGridTol != src.myUseGridTol)
return false;
293 if (myGridtol != src.myGridtol)
return false;
294 if (myConsolidateSnappedPoints != src.myConsolidateSnappedPoints)
return false;
295 if (myKeepConsolidatedPoints != src.myKeepConsolidatedPoints)
return false;
296 if (myDelDegen != src.myDelDegen)
return false;
297 if (myDelDegenPoints != src.myDelDegenPoints)
return false;
298 if (myDelUnusedPoints != src.myDelUnusedPoints)
return false;
299 if (myRecomputenml != src.myRecomputenml)
return false;
300 if (myCreatesnappedgroup != src.myCreatesnappedgroup)
return false;
301 if (mySnappedgroupname != src.mySnappedgroupname)
return false;
302 if (myCreatesnappedattrib != src.myCreatesnappedattrib)
return false;
303 if (mySnappedattribname != src.mySnappedattribname)
return false;
304 if (myNumpointattribs != src.myNumpointattribs)
return false;
305 if (myNumgroups != src.myNumgroups)
return false;
306 if (myUsetargetgroup != src.myUsetargetgroup)
return false;
307 if (myTargetgroup != src.myTargetgroup)
return false;
308 if (myModifyboth != src.myModifyboth)
return false;
330 myQuerygroup =
""_UTsh;
332 graph->
evalOpParm(myQuerygroup, nodeidx,
"querygroup", time, 0);
333 myPosAttrib =
"P"_UTsh;
335 graph->
evalOpParm(myPosAttrib, nodeidx,
"posattrib", time, 0);
338 graph->
evalOpParm(mySnaptype, nodeidx,
"snaptype", time, 0);
340 if (
true && ( (
true&&!(((
int64(getSnaptype())!=0)))) ) )
341 graph->
evalOpParm(myAlgorithm, nodeidx,
"algorithm", time, 0);
343 if (
true && ( (
true&&!(((
int64(getSnaptype())!=0)))) ) )
344 graph->
evalOpParm(myUseTol3D, nodeidx,
"usetol3d", time, 0);
346 if (
true && ( (
true&&!(((
int64(getSnaptype())!=0))||((getUseTol3D()==0))||((
int64(getSnaptype())!=0)))) ) )
347 graph->
evalOpParm(myTol3d, nodeidx,
"tol3d", time, 0);
348 myTargetPtAttrib =
"snap_to"_UTsh;
349 if (
true && ( (
true&&!(((
int64(getSnaptype())!=2)))) ) )
350 graph->
evalOpParm(myTargetPtAttrib, nodeidx,
"targetptattrib", time, 0);
352 if (
true && ( (
true&&!(((
int64(getSnaptype())!=2)))) ) )
353 graph->
evalOpParm(myTargetClass, nodeidx,
"targetclass", time, 0);
354 myUsePositionSnapMethod =
true;
355 if (
true && ( (
true&&!(((
int64(getSnaptype())==1)))) ) )
356 graph->
evalOpParm(myUsePositionSnapMethod, nodeidx,
"usepositionsnapmethod", time, 0);
357 myPositionSnapMethod = 0;
358 if (
true && ( (
true&&!(((
int64(getSnaptype())==1))||((getUsePositionSnapMethod()==0))||((
int64(getSnaptype())==1)))) ) )
359 graph->
evalOpParm(myPositionSnapMethod, nodeidx,
"positionsnapmethod", time, 0);
360 myPositionSnapWeightName =
"weight"_UTsh;
361 if (
true && ( (
true&&!(((
int64(getSnaptype())==1))||((getUsePositionSnapMethod()==0))||((
int64(getSnaptype())==1))||((
int64(getPositionSnapMethod())!=10)&&(
int64(getPositionSnapMethod())!=11)&&(
int64(getPositionSnapMethod())!=12)&&(
int64(getPositionSnapMethod())!=13)))) ) )
362 graph->
evalOpParm(myPositionSnapWeightName, nodeidx,
"positionsnapweightname", time, 0);
363 myUseradiusattrib =
false;
364 if (
true && ( (
true&&!(((
int64(getSnaptype())!=0)))) ) )
365 graph->
evalOpParm(myUseradiusattrib, nodeidx,
"useradiusattrib", time, 0);
366 myRadiusattrib =
"pscale"_UTsh;
367 if (
true && ( (
true&&!(((getUseradiusattrib()==0))||((
int64(getSnaptype())!=0)))) ) )
368 graph->
evalOpParm(myRadiusattrib, nodeidx,
"radiusattrib", time, 0);
369 myUsematchattrib =
false;
370 if (
true && ( (
true&&!(((
int64(getSnaptype())!=0)))) ) )
371 graph->
evalOpParm(myUsematchattrib, nodeidx,
"usematchattrib", time, 0);
372 myMatchattrib =
"name"_UTsh;
373 if (
true && ( (
true&&!(((getUsematchattrib()==0))||((
int64(getSnaptype())!=0)))) ) )
374 graph->
evalOpParm(myMatchattrib, nodeidx,
"matchattrib", time, 0);
376 if (
true && ( (
true&&!(((getUsematchattrib()==0))||((
int64(getSnaptype())!=0)))) ) )
377 graph->
evalOpParm(myMatchtype, nodeidx,
"matchtype", time, 0);
379 if (
true && ( (
true&&!(((getUsematchattrib()==0))||((
int64(getSnaptype())!=0)))) ) )
380 graph->
evalOpParm(myMatchTol, nodeidx,
"matchtol", time, 0);
382 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1)))) ) )
383 graph->
evalOpParm(myGridtype, nodeidx,
"gridtype", time, 0);
385 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1))||((
int64(getGridtype())!=0)))) ) )
386 graph->
evalOpParm(myGridspacing, nodeidx,
"gridspacing", time, 0);
388 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1))||((
int64(getGridtype())!=1)))) ) )
389 graph->
evalOpParm(myGridlines, nodeidx,
"gridlines", time, 0);
391 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1))||((
int64(getGridtype())!=2)))) ) )
392 graph->
evalOpParm(myGridpow2, nodeidx,
"gridpow2", time, 0);
394 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1)))) ) )
395 graph->
evalOpParm(myGridoffset, nodeidx,
"gridoffset", time, 0);
397 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1)))) ) )
398 graph->
evalOpParm(myGridround, nodeidx,
"gridround", time, 0);
400 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1)))) ) )
401 graph->
evalOpParm(myUseGridTol, nodeidx,
"usegridtol", time, 0);
403 if (
true && ( (
true&&!(((
int64(getSnaptype())!=1))||((getUseGridTol()==0))||((
int64(getSnaptype())!=1)))) ) )
404 graph->
evalOpParm(myGridtol, nodeidx,
"gridtol", time, 0);
405 myConsolidateSnappedPoints =
true;
407 graph->
evalOpParm(myConsolidateSnappedPoints, nodeidx,
"consolidatesnappedpoints", time, 0);
408 myKeepConsolidatedPoints =
false;
409 if (
true && ( (
true&&!(((getConsolidateSnappedPoints()==0)))) ) )
410 graph->
evalOpParm(myKeepConsolidatedPoints, nodeidx,
"keepconsolidatedpoints", time, 0);
412 if (
true && ( (
true&&!(((getConsolidateSnappedPoints()==0)))) ) )
413 graph->
evalOpParm(myDelDegen, nodeidx,
"deldegen", time, 0);
414 myDelDegenPoints =
true;
415 if (
true && ( (
true&&!(((getConsolidateSnappedPoints()==0))||((getDelDegen()==0)))) ) )
416 graph->
evalOpParm(myDelDegenPoints, nodeidx,
"deldegenpoints", time, 0);
417 myDelUnusedPoints =
false;
418 if (
true && ( (
true&&!(((getConsolidateSnappedPoints()==0)))) ) )
419 graph->
evalOpParm(myDelUnusedPoints, nodeidx,
"delunusedpoints", time, 0);
420 myRecomputenml =
true;
422 graph->
evalOpParm(myRecomputenml, nodeidx,
"recomputenml", time, 0);
423 myCreatesnappedgroup =
false;
425 graph->
evalOpParm(myCreatesnappedgroup, nodeidx,
"createsnappedgroup", time, 0);
426 mySnappedgroupname =
"snapped_points"_UTsh;
427 if (
true && ( (
true&&!(((getCreatesnappedgroup()==0)))) ) )
428 graph->
evalOpParm(mySnappedgroupname, nodeidx,
"snappedgroupname", time, 0);
429 myCreatesnappedattrib =
false;
430 if (
true && ( (
true&&!(((
int64(getSnaptype())==1)))) ) )
431 graph->
evalOpParm(myCreatesnappedattrib, nodeidx,
"createsnappedattrib", time, 0);
432 mySnappedattribname =
"snapped_to"_UTsh;
433 if (
true && ( (
true&&!(((getCreatesnappedattrib()==0))||((
int64(getSnaptype())==1)))) ) )
434 graph->
evalOpParm(mySnappedattribname, nodeidx,
"snappedattribname", time, 0);
438 graph->
evalOpParm(length, nodeidx,
"numpointattribs", time, 0);
439 if (length < 0) length = 0;
440 myNumpointattribs.setSize(length);
447 auto && _curentry = myNumpointattribs(i);
449 _curentry.attribsnapmethod = 8;
451 graph->
evalOpParmInst(_curentry.attribsnapmethod, nodeidx,
"attribsnapmethod#", parmidx, offsets, time, 0, 2-1);
452 _curentry.pointattribnames =
""_UTsh;
454 graph->
evalOpParmInst(_curentry.pointattribnames, nodeidx,
"pointattribnames#", parmidx, offsets, time, 0, 2-1);
455 _curentry.pointattribweightname =
"weight"_UTsh;
456 if (
true && ( (
true&&!(((_curentry.attribsnapmethod!=11)&&(_curentry.attribsnapmethod!=12)&&(_curentry.attribsnapmethod!=13)&&(_curentry.attribsnapmethod!=14)&&(_curentry.attribsnapmethod!=15)))) ) )
457 graph->
evalOpParmInst(_curentry.pointattribweightname, nodeidx,
"pointattribweightname#", parmidx, offsets, time, 0, 2-1);
462 myNumpointattribs.clear();
466 graph->
evalOpParm(length, nodeidx,
"numgroups", time, 0);
467 if (length < 0) length = 0;
468 myNumgroups.setSize(length);
475 auto && _curentry = myNumgroups(i);
477 _curentry.grouppropagation = 0;
479 graph->
evalOpParmInst(_curentry.grouppropagation, nodeidx,
"grouppropagation#", parmidx, offsets, time, 0, 2-1);
480 _curentry.pointgroupnames =
""_UTsh;
482 graph->
evalOpParmInst(_curentry.pointgroupnames, nodeidx,
"pointgroupnames#", parmidx, offsets, time, 0, 2-1);
488 myUsetargetgroup =
false;
489 if (
true && ( (
true&&!(((
int64(getSnaptype())==1))||(((graph->
getInput(nodeidx,1)>=0)==1)))) ) )
490 graph->
evalOpParm(myUsetargetgroup, nodeidx,
"usetargetgroup", time, 0);
491 myTargetgroup =
""_UTsh;
492 if (
true && ( (
true&&!(((
int64(getSnaptype())==1))||((getUsetargetgroup()==0)&&((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
493 graph->
evalOpParm(myTargetgroup, nodeidx,
"targetgroup", time, 0);
494 myModifyboth =
false;
495 if (
true && ( (
true&&!(((
int64(getSnaptype())==1))||(((graph->
getInput(nodeidx,1)>=0)==1))||((getUsetargetgroup()==0)&&(
int64(getSnaptype())!=2)))) ) )
496 graph->
evalOpParm(myModifyboth, nodeidx,
"modifyboth", time, 0);
512 template <
typename T>
519 if (idx.
size() != instance.
size()+1)
631 else if (instance[0] < myNumpointattribs.entries())
633 auto && _data = myNumpointattribs(instance[0]);
652 else if (instance[0] < myNumgroups.entries())
654 auto && _data = myNumgroups(instance[0]);
690 { doGetParmValue(idx, instance, value); }
692 { doGetParmValue(idx, instance, value); }
694 { doGetParmValue(idx, instance, value); }
696 { doGetParmValue(idx, instance, value); }
698 { doGetParmValue(idx, instance, value); }
700 { doGetParmValue(idx, instance, value); }
702 { doGetParmValue(idx, instance, value); }
704 { doGetParmValue(idx, instance, value); }
706 { doGetParmValue(idx, instance, value); }
708 { doGetParmValue(idx, instance, value); }
710 { doGetParmValue(idx, instance, value); }
712 template <
typename T>
719 if (idx.
size() != instance.
size()+1)
748 coerceValue(myUsePositionSnapMethod, ( ( value ) ));
754 coerceValue(myPositionSnapWeightName, ( ( value ) ));
799 coerceValue(myConsolidateSnappedPoints, ( ( value ) ));
802 coerceValue(myKeepConsolidatedPoints, ( ( value ) ));
833 if (newsize < 0) newsize = 0;
834 myNumpointattribs.setSize(newsize);
840 myNumpointattribs.setSizeIfNeeded(instance[0]+1);
841 auto && _data = myNumpointattribs(instance[0]);
862 if (newsize < 0) newsize = 0;
863 myNumgroups.setSize(newsize);
869 myNumgroups.setSizeIfNeeded(instance[0]+1);
870 auto && _data = myNumgroups(instance[0]);
897 { doSetParmValue(idx, instance, value); }
899 { doSetParmValue(idx, instance, value); }
901 { doSetParmValue(idx, instance, value); }
903 { doSetParmValue(idx, instance, value); }
905 { doSetParmValue(idx, instance, value); }
907 { doSetParmValue(idx, instance, value); }
909 { doSetParmValue(idx, instance, value); }
911 { doSetParmValue(idx, instance, value); }
913 { doSetParmValue(idx, instance, value); }
915 { doSetParmValue(idx, instance, value); }
917 { doSetParmValue(idx, instance, value); }
937 if (fieldnum.
size() < 1)
954 return "targetptattrib";
956 return "targetclass";
958 return "usepositionsnapmethod";
960 return "positionsnapmethod";
962 return "positionsnapweightname";
964 return "useradiusattrib";
966 return "radiusattrib";
968 return "usematchattrib";
970 return "matchattrib";
978 return "gridspacing";
992 return "consolidatesnappedpoints";
994 return "keepconsolidatedpoints";
998 return "deldegenpoints";
1000 return "delunusedpoints";
1002 return "recomputenml";
1004 return "createsnappedgroup";
1006 return "snappedgroupname";
1008 return "createsnappedattrib";
1010 return "snappedattribname";
1012 if (fieldnum.
size() == 1)
1013 return "numpointattribs";
1014 switch (fieldnum[1])
1017 return "attribsnapmethod#";
1019 return "pointattribnames#";
1021 return "pointattribweightname#";
1026 if (fieldnum.
size() == 1)
1028 switch (fieldnum[1])
1031 return "grouppropagation#";
1033 return "pointgroupnames#";
1038 return "usetargetgroup";
1040 return "targetgroup";
1042 return "modifyboth";
1050 if (fieldnum.
size() < 1)
1051 return PARM_UNSUPPORTED;
1052 switch (fieldnum[0])
1125 if (fieldnum.
size() == 1)
1126 return PARM_MULTIPARM;
1127 switch (fieldnum[1])
1139 if (fieldnum.
size() == 1)
1140 return PARM_MULTIPARM;
1141 switch (fieldnum[1])
1163 { is.
bread(&v, 1); }
1177 {
for (
int r = 0;
r < 2;
r++)
for (
int c = 0; c < 2; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
1179 {
for (
int r = 0;
r < 3;
r++)
for (
int c = 0; c < 3; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
1181 {
for (
int r = 0;
r < 4;
r++)
for (
int c = 0; c < 4; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
1194 loadData(is, rampdata);
1212 int typelen = colon - data.
buffer();
1224 { UTwrite(os, &v); }
1226 {
int64 iv =
v; UTwrite(os, &iv); }
1228 { UTwrite<fpreal64>(os, &
v); }
1230 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1232 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1233 UTwrite<fpreal64>(os, &v.
z()); }
1235 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1236 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1248 if (s) s->save(ostr);
1249 result = ostr.
str();
1250 saveData(os, result);
1257 ostr << s->getDataTypeToken();
1259 s->saveBinary(ostr);
1261 result = ostr.
str();
1262 saveData(os, result);
1270 saveData(os, myQuerygroup);
1271 saveData(os, myPosAttrib);
1272 saveData(os, mySnaptype);
1273 saveData(os, myAlgorithm);
1274 saveData(os, myUseTol3D);
1275 saveData(os, myTol3d);
1276 saveData(os, myTargetPtAttrib);
1277 saveData(os, myTargetClass);
1278 saveData(os, myUsePositionSnapMethod);
1279 saveData(os, myPositionSnapMethod);
1280 saveData(os, myPositionSnapWeightName);
1281 saveData(os, myUseradiusattrib);
1282 saveData(os, myRadiusattrib);
1283 saveData(os, myUsematchattrib);
1284 saveData(os, myMatchattrib);
1285 saveData(os, myMatchtype);
1286 saveData(os, myMatchTol);
1287 saveData(os, myGridtype);
1288 saveData(os, myGridspacing);
1289 saveData(os, myGridlines);
1290 saveData(os, myGridpow2);
1291 saveData(os, myGridoffset);
1292 saveData(os, myGridround);
1293 saveData(os, myUseGridTol);
1294 saveData(os, myGridtol);
1295 saveData(os, myConsolidateSnappedPoints);
1296 saveData(os, myKeepConsolidatedPoints);
1297 saveData(os, myDelDegen);
1298 saveData(os, myDelDegenPoints);
1299 saveData(os, myDelUnusedPoints);
1300 saveData(os, myRecomputenml);
1301 saveData(os, myCreatesnappedgroup);
1302 saveData(os, mySnappedgroupname);
1303 saveData(os, myCreatesnappedattrib);
1304 saveData(os, mySnappedattribname);
1307 UTwrite(os, &length);
1310 auto && _curentry = myNumpointattribs(i);
1312 saveData(os, _curentry.attribsnapmethod);
1313 saveData(os, _curentry.pointattribnames);
1314 saveData(os, _curentry.pointattribweightname);
1320 UTwrite(os, &length);
1323 auto && _curentry = myNumgroups(i);
1325 saveData(os, _curentry.grouppropagation);
1326 saveData(os, _curentry.pointgroupnames);
1330 saveData(os, myUsetargetgroup);
1331 saveData(os, myTargetgroup);
1332 saveData(os, myModifyboth);
1345 loadData(is, myQuerygroup);
1346 loadData(is, myPosAttrib);
1347 loadData(is, mySnaptype);
1348 loadData(is, myAlgorithm);
1349 loadData(is, myUseTol3D);
1350 loadData(is, myTol3d);
1351 loadData(is, myTargetPtAttrib);
1352 loadData(is, myTargetClass);
1353 loadData(is, myUsePositionSnapMethod);
1354 loadData(is, myPositionSnapMethod);
1355 loadData(is, myPositionSnapWeightName);
1356 loadData(is, myUseradiusattrib);
1357 loadData(is, myRadiusattrib);
1358 loadData(is, myUsematchattrib);
1359 loadData(is, myMatchattrib);
1360 loadData(is, myMatchtype);
1361 loadData(is, myMatchTol);
1362 loadData(is, myGridtype);
1363 loadData(is, myGridspacing);
1364 loadData(is, myGridlines);
1365 loadData(is, myGridpow2);
1366 loadData(is, myGridoffset);
1367 loadData(is, myGridround);
1368 loadData(is, myUseGridTol);
1369 loadData(is, myGridtol);
1370 loadData(is, myConsolidateSnappedPoints);
1371 loadData(is, myKeepConsolidatedPoints);
1372 loadData(is, myDelDegen);
1373 loadData(is, myDelDegenPoints);
1374 loadData(is, myDelUnusedPoints);
1375 loadData(is, myRecomputenml);
1376 loadData(is, myCreatesnappedgroup);
1377 loadData(is, mySnappedgroupname);
1378 loadData(is, myCreatesnappedattrib);
1379 loadData(is, mySnappedattribname);
1382 is.
read(&length, 1);
1383 myNumpointattribs.setSize(length);
1386 auto && _curentry = myNumpointattribs(i);
1388 loadData(is, _curentry.attribsnapmethod);
1389 loadData(is, _curentry.pointattribnames);
1390 loadData(is, _curentry.pointattribweightname);
1396 is.
read(&length, 1);
1397 myNumgroups.setSize(length);
1400 auto && _curentry = myNumgroups(i);
1402 loadData(is, _curentry.grouppropagation);
1403 loadData(is, _curentry.pointgroupnames);
1407 loadData(is, myUsetargetgroup);
1408 loadData(is, myTargetgroup);
1409 loadData(is, myModifyboth);
1419 if (!thissop)
return getQuerygroup();
1421 OP_Utils::evalOpParm(result, thissop,
"querygroup", cookparms.
getCookTime(), 0);
1429 if (!thissop)
return getPosAttrib();
1431 OP_Utils::evalOpParm(result, thissop,
"posattrib", cookparms.
getCookTime(), 0);
1439 if (!thissop)
return getSnaptype();
1441 OP_Utils::evalOpParm(result, thissop,
"snaptype", cookparms.
getCookTime(), 0);
1449 if (!thissop)
return getAlgorithm();
1451 OP_Utils::evalOpParm(result, thissop,
"algorithm", cookparms.
getCookTime(), 0);
1459 if (!thissop)
return getUseTol3D();
1461 OP_Utils::evalOpParm(result, thissop,
"usetol3d", cookparms.
getCookTime(), 0);
1469 if (!thissop)
return getTol3d();
1471 OP_Utils::evalOpParm(result, thissop,
"tol3d", cookparms.
getCookTime(), 0);
1479 if (!thissop)
return getTargetPtAttrib();
1481 OP_Utils::evalOpParm(result, thissop,
"targetptattrib", cookparms.
getCookTime(), 0);
1489 if (!thissop)
return getTargetClass();
1491 OP_Utils::evalOpParm(result, thissop,
"targetclass", cookparms.
getCookTime(), 0);
1499 if (!thissop)
return getUsePositionSnapMethod();
1501 OP_Utils::evalOpParm(result, thissop,
"usepositionsnapmethod", cookparms.
getCookTime(), 0);
1509 if (!thissop)
return getPositionSnapMethod();
1511 OP_Utils::evalOpParm(result, thissop,
"positionsnapmethod", cookparms.
getCookTime(), 0);
1519 if (!thissop)
return getPositionSnapWeightName();
1521 OP_Utils::evalOpParm(result, thissop,
"positionsnapweightname", cookparms.
getCookTime(), 0);
1529 if (!thissop)
return getUseradiusattrib();
1531 OP_Utils::evalOpParm(result, thissop,
"useradiusattrib", cookparms.
getCookTime(), 0);
1539 if (!thissop)
return getRadiusattrib();
1541 OP_Utils::evalOpParm(result, thissop,
"radiusattrib", cookparms.
getCookTime(), 0);
1549 if (!thissop)
return getUsematchattrib();
1551 OP_Utils::evalOpParm(result, thissop,
"usematchattrib", cookparms.
getCookTime(), 0);
1559 if (!thissop)
return getMatchattrib();
1561 OP_Utils::evalOpParm(result, thissop,
"matchattrib", cookparms.
getCookTime(), 0);
1569 if (!thissop)
return getMatchtype();
1571 OP_Utils::evalOpParm(result, thissop,
"matchtype", cookparms.
getCookTime(), 0);
1579 if (!thissop)
return getMatchTol();
1581 OP_Utils::evalOpParm(result, thissop,
"matchtol", cookparms.
getCookTime(), 0);
1589 if (!thissop)
return getGridtype();
1591 OP_Utils::evalOpParm(result, thissop,
"gridtype", cookparms.
getCookTime(), 0);
1599 if (!thissop)
return getGridspacing();
1601 OP_Utils::evalOpParm(result, thissop,
"gridspacing", cookparms.
getCookTime(), 0);
1609 if (!thissop)
return getGridlines();
1611 OP_Utils::evalOpParm(result, thissop,
"gridlines", cookparms.
getCookTime(), 0);
1619 if (!thissop)
return getGridpow2();
1621 OP_Utils::evalOpParm(result, thissop,
"gridpow2", cookparms.
getCookTime(), 0);
1629 if (!thissop)
return getGridoffset();
1631 OP_Utils::evalOpParm(result, thissop,
"gridoffset", cookparms.
getCookTime(), 0);
1639 if (!thissop)
return getGridround();
1641 OP_Utils::evalOpParm(result, thissop,
"gridround", cookparms.
getCookTime(), 0);
1649 if (!thissop)
return getUseGridTol();
1651 OP_Utils::evalOpParm(result, thissop,
"usegridtol", cookparms.
getCookTime(), 0);
1659 if (!thissop)
return getGridtol();
1661 OP_Utils::evalOpParm(result, thissop,
"gridtol", cookparms.
getCookTime(), 0);
1669 if (!thissop)
return getConsolidateSnappedPoints();
1671 OP_Utils::evalOpParm(result, thissop,
"consolidatesnappedpoints", cookparms.
getCookTime(), 0);
1679 if (!thissop)
return getKeepConsolidatedPoints();
1681 OP_Utils::evalOpParm(result, thissop,
"keepconsolidatedpoints", cookparms.
getCookTime(), 0);
1689 if (!thissop)
return getDelDegen();
1691 OP_Utils::evalOpParm(result, thissop,
"deldegen", cookparms.
getCookTime(), 0);
1699 if (!thissop)
return getDelDegenPoints();
1701 OP_Utils::evalOpParm(result, thissop,
"deldegenpoints", cookparms.
getCookTime(), 0);
1709 if (!thissop)
return getDelUnusedPoints();
1711 OP_Utils::evalOpParm(result, thissop,
"delunusedpoints", cookparms.
getCookTime(), 0);
1719 if (!thissop)
return getRecomputenml();
1721 OP_Utils::evalOpParm(result, thissop,
"recomputenml", cookparms.
getCookTime(), 0);
1729 if (!thissop)
return getCreatesnappedgroup();
1731 OP_Utils::evalOpParm(result, thissop,
"createsnappedgroup", cookparms.
getCookTime(), 0);
1739 if (!thissop)
return getSnappedgroupname();
1741 OP_Utils::evalOpParm(result, thissop,
"snappedgroupname", cookparms.
getCookTime(), 0);
1749 if (!thissop)
return getCreatesnappedattrib();
1751 OP_Utils::evalOpParm(result, thissop,
"createsnappedattrib", cookparms.
getCookTime(), 0);
1759 if (!thissop)
return getSnappedattribname();
1761 OP_Utils::evalOpParm(result, thissop,
"snappedattribname", cookparms.
getCookTime(), 0);
1769 if (!thissop)
return getNumpointattribs().entries();
1771 OP_Utils::evalOpParm(result, thissop,
"numpointattribs", cookparms.
getCookTime(), 0);
1775 {
return opinstNumpointattribs_attribsnapmethod(cookparms, &_idx); }
1779 if (!thissop)
return (myNumpointattribs(_idx[0]).attribsnapmethod);
1781 _parmidx[1-1] = _idx[1-1] + 1;
1784 OP_Utils::evalOpParmInst(result, thissop,
"attribsnapmethod#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
1788 {
return opinstNumpointattribs_pointattribnames(cookparms, &_idx); }
1792 if (!thissop)
return (myNumpointattribs(_idx[0]).pointattribnames);
1794 _parmidx[1-1] = _idx[1-1] + 1;
1797 OP_Utils::evalOpParmInst(result, thissop,
"pointattribnames#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
1801 {
return opinstNumpointattribs_pointattribweightname(cookparms, &_idx); }
1805 if (!thissop)
return (myNumpointattribs(_idx[0]).pointattribweightname);
1807 _parmidx[1-1] = _idx[1-1] + 1;
1810 OP_Utils::evalOpParmInst(result, thissop,
"pointattribweightname#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
1819 if (!thissop)
return getNumgroups().entries();
1821 OP_Utils::evalOpParm(result, thissop,
"numgroups", cookparms.
getCookTime(), 0);
1825 {
return opinstNumgroups_grouppropagation(cookparms, &_idx); }
1829 if (!thissop)
return (myNumgroups(_idx[0]).grouppropagation);
1831 _parmidx[1-1] = _idx[1-1] + 1;
1834 OP_Utils::evalOpParmInst(result, thissop,
"grouppropagation#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
1838 {
return opinstNumgroups_pointgroupnames(cookparms, &_idx); }
1842 if (!thissop)
return (myNumgroups(_idx[0]).pointgroupnames);
1844 _parmidx[1-1] = _idx[1-1] + 1;
1847 OP_Utils::evalOpParmInst(result, thissop,
"pointgroupnames#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
1856 if (!thissop)
return getUsetargetgroup();
1858 OP_Utils::evalOpParm(result, thissop,
"usetargetgroup", cookparms.
getCookTime(), 0);
1866 if (!thissop)
return getTargetgroup();
1868 OP_Utils::evalOpParm(result, thissop,
"targetgroup", cookparms.
getCookTime(), 0);
1876 if (!thissop)
return getModifyboth();
1878 OP_Utils::evalOpParm(result, thissop,
"modifyboth", cookparms.
getCookTime(), 0);
1890 int64 myTargetClass;
1891 bool myUsePositionSnapMethod;
1892 int64 myPositionSnapMethod;
1894 bool myUseradiusattrib;
1896 bool myUsematchattrib;
1908 bool myConsolidateSnappedPoints;
1909 bool myKeepConsolidatedPoints;
1911 bool myDelDegenPoints;
1912 bool myDelUnusedPoints;
1913 bool myRecomputenml;
1914 bool myCreatesnappedgroup;
1916 bool myCreatesnappedattrib;
1920 bool myUsetargetgroup;
UT_StringHolder opNumpointattribs_pointattribnames(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
void setCreatesnappedattrib(bool val)
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
bool opRecomputenml(const SOP_NodeVerb::CookParms &cookparms) const
bool getDelDegenPoints() const
int64 opinstNumgroups_grouppropagation(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setTol3d(fpreal64 val)
const UT_Array< Numpointattribs > & getNumpointattribs() const
GLenum GLuint GLenum GLsizei const GLchar * buf
bool opDelDegen(const SOP_NodeVerb::CookParms &cookparms) const
void setUsetargetgroup(bool val)
Algorithm opAlgorithm(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
UT_Vector3I opGridpow2(const SOP_NodeVerb::CookParms &cookparms) const
SOP_Node * getNode() const
const UT_StringHolder & getQuerygroup() const
exint getNestNumParms(TempIndex idx) const override
UT_Vector3D opGridlines(const SOP_NodeVerb::CookParms &cookparms) const
bool opDelDegenPoints(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector3D v)
bool operator==(const Numgroups &src) const
void setPosAttrib(const UT_StringHolder &val)
void setMatchtype(Matchtype val)
exint opNumpointattribs(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getGridtol() const
T clampMaxValue(fpreal maxvalue, const T &src) const
UT_StringHolder opSnappedattribname(const SOP_NodeVerb::CookParms &cookparms) const
void save(std::ostream &os) const
static void loadData(UT_IStream &is, UT_StringHolder &v)
exint bread(int32 *buffer, exint asize=1)
GT_API const UT_StringHolder time
constexpr SYS_FORCE_INLINE T & y() noexcept
PositionSnapMethod opPositionSnapMethod(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getMatchattrib() const
void setModifyboth(bool val)
Snaptype getSnaptype() const
void setGridtype(Gridtype val)
Gridtype opGridtype(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getTargetgroup() const
void setTargetPtAttrib(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
bool getConsolidateSnappedPoints() const
Matchtype opMatchtype(const SOP_NodeVerb::CookParms &cookparms) const
UT_String makeQuotedString(char delimiter='\'', bool escape_nonprinting=false) const
const OP_Context & context() const
UT_StringHolder opPosAttrib(const SOP_NodeVerb::CookParms &cookparms) const
bool getUseradiusattrib() const
constexpr SYS_FORCE_INLINE T & z() noexcept
UT_StringHolder pointattribweightname
UT_StringHolder createString(const UT_Array< Numgroups > &list) const
bool operator!=(const Numpointattribs &src) const
void setGridspacing(UT_Vector3D val)
UT_StringHolder opTargetPtAttrib(const SOP_NodeVerb::CookParms &cookparms) const
SYS_FORCE_INLINE const char * buffer() const
GLuint GLsizei GLsizei * length
static void saveData(std::ostream &os, UT_Matrix4D v)
An output stream object that owns its own string buffer storage.
void setGridlines(UT_Vector3D val)
bool opCreatesnappedgroup(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
UT_Vector3D getGridoffset() const
UT_StringHolder opinstNumpointattribs_pointattribweightname(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
void setDelDegenPoints(bool val)
static void loadData(UT_IStream &is, UT_Vector3D &v)
**But if you need a result
const UT_StringHolder & getTargetPtAttrib() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
Snaptype opSnaptype(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3T< int64 > UT_Vector3I
const UT_StringHolder & getSnappedgroupname() const
Algorithm getAlgorithm() const
void setUsematchattrib(bool val)
T clampMinValue(fpreal minvalue, const T &src) const
bool opUsePositionSnapMethod(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
UT_Vector3D getGridlines() const
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
fpreal64 opTol3d(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getSnappedattribname() const
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
bool load(UT_IStream &is)
virtual NodeIdx getInput(NodeIdx idx, int input, bool markused=false) const =0
constexpr SYS_FORCE_INLINE T & x() noexcept
UT_Vector3D opGridoffset(const SOP_NodeVerb::CookParms &cookparms) const
int64 opNumpointattribs_attribsnapmethod(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
UT_StringHolder opNumgroups_pointgroupnames(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
GLuint GLsizei const GLuint const GLintptr * offsets
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
fpreal64 opGridtol(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
int64 opinstNumpointattribs_attribsnapmethod(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
const UT_Array< Numgroups > & getNumgroups() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
Gridtype getGridtype() const
UT_StringHolder pointattribnames
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
void setDelDegen(bool val)
bool opDelUnusedPoints(const SOP_NodeVerb::CookParms &cookparms) const
void setSnaptype(Snaptype val)
static void loadData(UT_IStream &is, UT_Matrix3D &v)
bool getKeepConsolidatedPoints() const
void setNumpointattribs(const UT_Array< Numpointattribs > &val)
const UT_StringHolder & getPositionSnapWeightName() const
void setNumgroups(const UT_Array< Numgroups > &val)
static void saveData(std::ostream &os, UT_StringHolder s)
UT_StringHolder opSnappedgroupname(const SOP_NodeVerb::CookParms &cookparms) const
Gridround opGridround(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
void setSnappedgroupname(const UT_StringHolder &val)
SYS_FORCE_INLINE const char * buffer() const
void setUseradiusattrib(bool val)
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
static void saveData(std::ostream &os, UT_Matrix3D v)
constexpr SYS_FORCE_INLINE T & z() noexcept
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
void setUseTol3D(bool val)
bool opModifyboth(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
void setUsePositionSnapMethod(bool val)
exint read(bool *array, exint sz=1)
const OP_GraphProxy * graph() const
const UT_StringHolder & getPosAttrib() const
exint opNumgroups(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3D getGridspacing() const
UT_StringHolder opQuerygroup(const SOP_NodeVerb::CookParms &cookparms) const
void setGridoffset(UT_Vector3D val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
static void saveData(std::ostream &os, bool v)
UT_StringHolder opinstNumpointattribs_pointattribnames(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
bool isParmColorRamp(exint idx) const override
virtual void evalOpParmInst(int64 &v, NodeIdx node, const char *parmname, const int *inst, const int *offsets, fpreal time, DEP_MicroNode *depnode, int nestlevel=1) const =0
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
void setKeepConsolidatedPoints(bool val)
UT_Vector3I getGridpow2() const
UT_Vector3D opGridspacing(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Matrix4D &v)
void setUseGridTol(bool val)
static void loadData(UT_IStream &is, bool &v)
UT_Vector3T< fpreal64 > UT_Vector3D
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
static void loadData(UT_IStream &is, UT_Vector4D &v)
static void saveData(std::ostream &os, PRM_DataItemHandle s)
static void saveData(std::ostream &os, int64 v)
bool operator!=(const Numgroups &src) const
void setGridpow2(UT_Vector3I val)
Gridround getGridround() const
int64 opNumgroups_grouppropagation(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
bool getUseGridTol() const
static void loadData(UT_IStream &is, UT_Vector2I &v)
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
bool getModifyboth() const
SYS_FORCE_INLINE void strcat(const char *src)
UT_StringHolder opRadiusattrib(const SOP_NodeVerb::CookParms &cookparms) const
void saveBinary(std::ostream &os) const
Save string to binary stream.
static void saveData(std::ostream &os, UT_Vector4D v)
GT_API const UT_StringHolder version
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
void setTargetgroup(const UT_StringHolder &val)
static void loadData(UT_IStream &is, UT_Matrix2D &v)
exint entries() const
Alias of size(). size() is preferred.
fpreal64 getTol3d() const
bool getUsematchattrib() const
bool opUseradiusattrib(const SOP_NodeVerb::CookParms &cookparms) const
int int appendSprintf(const char *fmt,...) SYS_PRINTF_CHECK_ATTRIBUTE(2
bool operator!=(const SOP_Fuse_2_0Parms &src) const
void setSnappedattribname(const UT_StringHolder &val)
static void loadData(UT_IStream &is, UT_Vector3I &v)
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
void coerceValue(T &result, const S &src) const
TargetClass getTargetClass() const
static void saveData(std::ostream &os, UT_Matrix2D v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
bool getDelUnusedPoints() const
bool opKeepConsolidatedPoints(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getMatchTol() const
void setQuerygroup(const UT_StringHolder &val)
void setConsolidateSnappedPoints(bool val)
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
DEP_MicroNode * depnode() const
UT_StringHolder opPositionSnapWeightName(const SOP_NodeVerb::CookParms &cookparms) const
bool operator==(const SOP_Fuse_2_0Parms &src) const
bool getCreatesnappedgroup() const
Utility class for containing a color ramp.
bool getCreatesnappedattrib() const
void setTargetClass(TargetClass val)
bool getUsePositionSnapMethod() const
UT_StringHolder opTargetgroup(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & w() noexcept
SYS_FORCE_INLINE void append(char character)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
static void saveData(std::ostream &os, fpreal64 v)
UT_StringHolder opNumpointattribs_pointattribweightname(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
bool opUsetargetgroup(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, fpreal64 &v)
bool getRecomputenml() const
bool opUseTol3D(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getRadiusattrib() const
void setGridtol(fpreal64 val)
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
fpreal getCookTime() const
static void loadData(UT_IStream &is, int64 &v)
void copyFrom(const OP_NodeParms *src) override
void setCreatesnappedgroup(bool val)
bool opUseGridTol(const SOP_NodeVerb::CookParms &cookparms) const
const char * findChar(int c) const
void setDelUnusedPoints(bool val)
void setRadiusattrib(const UT_StringHolder &val)
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
static void saveData(std::ostream &os, UT_Vector2D v)
bool opConsolidateSnappedPoints(const SOP_NodeVerb::CookParms &cookparms) const
void setGridround(Gridround val)
UT_StringHolder opinstNumgroups_pointgroupnames(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
constexpr SYS_FORCE_INLINE T & y() noexcept
void setRecomputenml(bool val)
void setMatchattrib(const UT_StringHolder &val)
bool opCreatesnappedattrib(const SOP_NodeVerb::CookParms &cookparms) const
Matchtype getMatchtype() const
void loadFromOpSubclass(const LoadParms &loadparms) override
fpreal64 opMatchTol(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder pointgroupnames
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
void setAlgorithm(Algorithm val)
const char * getNestParmName(TempIndex fieldnum) const override
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
static void loadData(UT_IStream &is, UT_Vector4I &v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
constexpr SYS_FORCE_INLINE T & y() noexcept
void setMatchTol(fpreal64 val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
SYS_FORCE_INLINE bool isstring() const
UT_StringHolder opMatchattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
OP_NodeParms & operator=(const OP_NodeParms &)=default
PositionSnapMethod getPositionSnapMethod() const
UT_StringHolder createString(const UT_Array< Numpointattribs > &list) const
bool opUsematchattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setPositionSnapMethod(PositionSnapMethod val)
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
bool getUsetargetgroup() const
TargetClass opTargetClass(const SOP_NodeVerb::CookParms &cookparms) const
bool operator==(const Numpointattribs &src) const
ParmType getNestParmType(TempIndex fieldnum) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
constexpr SYS_FORCE_INLINE T & x() noexcept
void setPositionSnapWeightName(const UT_StringHolder &val)