20 using namespace UT::Literal;
23 namespace SOP_HairClumpEnums
125 myLegacymasking =
false;
126 myUvattrib =
"uv"_sh;
129 myBlendcurveattrib =
"clumpmask"_sh;
130 myBlendattrib =
"clumpmask"_sh;
131 myBlendtexture =
""_sh;
132 myUseskinmask =
false;
133 mySkinmaskattrib =
"clumpmask"_sh;
135 myClumpsizeoverride = 0;
136 myClumpsizeattrib =
"clumpsize"_sh;
137 myClumpsizetexture =
""_sh;
138 mySearchbeyondradius =
true;
139 myClumpwithinclumps =
true;
140 myCrossoverrate = 0.2;
143 myPreservelength =
true;
145 myShortentomatch = 1;
146 myAccuratebundling =
true;
148 myHairwidthscale = 1;
150 myTightnessoverride = 0;
151 myTightnesscurveattrib =
"tightness"_sh;
152 myTightnessclumpattrib =
"tightness"_sh;
153 myTightnessattrib =
"tightness"_sh;
154 myTightnesstexture =
""_sh;
156 myStrayamountoverride = 0;
157 myStrayamountcurveattrib =
"strayamount"_sh;
158 myStrayamountclumpattrib =
"strayamount"_sh;
159 myStrayamountattrib =
"strayamount"_sh;
160 myStrayamounttexture =
""_sh;
162 myStrayrateoverride = 0;
163 myStrayratecurveattrib =
"strayrate"_sh;
164 myStrayrateclumpattrib =
"strayrate"_sh;
165 myStrayrateattrib =
"strayrate"_sh;
166 myStrayratetexture =
""_sh;
168 myStrayfalloffoverride = 0;
169 myStrayfalloffcurveattrib =
"strayfalloff"_sh;
170 myStrayfalloffclumpattrib =
"strayfalloff"_sh;
171 myStrayfalloffattrib =
"strayfalloff"_sh;
172 myStrayfallofftexture =
""_sh;
175 myIterationsoverride = 0;
176 myIterationscurveattrib =
"clumpiterations"_sh;
177 myIterationsattrib =
"clumpiterations"_sh;
178 myIterationstexture =
""_sh;
179 mySizereduction = 0.4;
180 mySizereductionoverride = 0;
181 mySizereductionattrib =
"clumpsizereduction"_sh;
182 mySizereductiontexture =
""_sh;
183 myGoalfeedback = 0.1;
184 myGoalfeedbackoverride = 0;
185 myGoalfeedbackattrib =
"clumpgoalfeedback"_sh;
186 myGoalfeedbacktexture =
""_sh;
187 myTightnessreduction = 0.2;
188 myTightnessreductionoverride = 0;
189 myTightnessreductioncurveattrib =
"clumptightnessreduction"_sh;
190 myTightnessreductionattrib =
"clumptightnessreduction"_sh;
191 myTightnessreductiontexture =
""_sh;
192 myEnablecurling =
false;
194 myCurlampoverride = 0;
195 myCurlampcurveattrib =
"clumpcurlamp"_sh;
196 myCurlampattrib =
"clumpcurlamp"_sh;
197 myCurlamptexture =
""_sh;
200 myCurlfreqoverride = 0;
201 myCurlfreqcurveattrib =
"clumpcurlfreq"_sh;
202 myCurveattrib =
"clumpcurlfreq"_sh;
203 myCurlfreqattrib =
"clumpcurlfreq"_sh;
204 myCurlfreqtexture =
""_sh;
206 myCreateclumpidattrib =
true;
207 myClumpidoutputattrib =
"clumpid"_sh;
208 myCreatetightnessattrib =
true;
209 myTightnessoutputattrib =
"tightness"_sh;
210 myClumppointattribs =
""_sh;
211 myClumpprimattribs =
""_sh;
221 if (myLegacymasking != src.myLegacymasking)
return false;
222 if (myUvattrib != src.myUvattrib)
return false;
223 if (myBlend != src.myBlend)
return false;
224 if (myBlendoverride != src.myBlendoverride)
return false;
225 if (myBlendcurveattrib != src.myBlendcurveattrib)
return false;
226 if (myBlendattrib != src.myBlendattrib)
return false;
227 if (myBlendtexture != src.myBlendtexture)
return false;
228 if (myUseskinmask != src.myUseskinmask)
return false;
229 if (mySkinmaskattrib != src.mySkinmaskattrib)
return false;
230 if (myClumpsize != src.myClumpsize)
return false;
231 if (myClumpsizeoverride != src.myClumpsizeoverride)
return false;
232 if (myClumpsizeattrib != src.myClumpsizeattrib)
return false;
233 if (myClumpsizetexture != src.myClumpsizetexture)
return false;
234 if (mySearchbeyondradius != src.mySearchbeyondradius)
return false;
235 if (myClumpwithinclumps != src.myClumpwithinclumps)
return false;
236 if (myCrossoverrate != src.myCrossoverrate)
return false;
237 if (mySeed != src.mySeed)
return false;
238 if (myMethod != src.myMethod)
return false;
239 if (myPreservelength != src.myPreservelength)
return false;
240 if (myExtendtomatch != src.myExtendtomatch)
return false;
241 if (myShortentomatch != src.myShortentomatch)
return false;
242 if (myAccuratebundling != src.myAccuratebundling)
return false;
243 if (myHairwidth != src.myHairwidth)
return false;
244 if (myHairwidthscale != src.myHairwidthscale)
return false;
245 if (myTightness != src.myTightness)
return false;
246 if (myTightnessoverride != src.myTightnessoverride)
return false;
247 if (myTightnesscurveattrib != src.myTightnesscurveattrib)
return false;
248 if (myTightnessclumpattrib != src.myTightnessclumpattrib)
return false;
249 if (myTightnessattrib != src.myTightnessattrib)
return false;
250 if (myTightnesstexture != src.myTightnesstexture)
return false;
251 if (myStrayamount != src.myStrayamount)
return false;
252 if (myStrayamountoverride != src.myStrayamountoverride)
return false;
253 if (myStrayamountcurveattrib != src.myStrayamountcurveattrib)
return false;
254 if (myStrayamountclumpattrib != src.myStrayamountclumpattrib)
return false;
255 if (myStrayamountattrib != src.myStrayamountattrib)
return false;
256 if (myStrayamounttexture != src.myStrayamounttexture)
return false;
257 if (myStrayrate != src.myStrayrate)
return false;
258 if (myStrayrateoverride != src.myStrayrateoverride)
return false;
259 if (myStrayratecurveattrib != src.myStrayratecurveattrib)
return false;
260 if (myStrayrateclumpattrib != src.myStrayrateclumpattrib)
return false;
261 if (myStrayrateattrib != src.myStrayrateattrib)
return false;
262 if (myStrayratetexture != src.myStrayratetexture)
return false;
263 if (myStrayfalloff != src.myStrayfalloff)
return false;
264 if (myStrayfalloffoverride != src.myStrayfalloffoverride)
return false;
265 if (myStrayfalloffcurveattrib != src.myStrayfalloffcurveattrib)
return false;
266 if (myStrayfalloffclumpattrib != src.myStrayfalloffclumpattrib)
return false;
267 if (myStrayfalloffattrib != src.myStrayfalloffattrib)
return false;
268 if (myStrayfallofftexture != src.myStrayfallofftexture)
return false;
269 if (myClumpprofile != src.myClumpprofile)
return false;
270 if (myIterations != src.myIterations)
return false;
271 if (myIterationsoverride != src.myIterationsoverride)
return false;
272 if (myIterationscurveattrib != src.myIterationscurveattrib)
return false;
273 if (myIterationsattrib != src.myIterationsattrib)
return false;
274 if (myIterationstexture != src.myIterationstexture)
return false;
275 if (mySizereduction != src.mySizereduction)
return false;
276 if (mySizereductionoverride != src.mySizereductionoverride)
return false;
277 if (mySizereductionattrib != src.mySizereductionattrib)
return false;
278 if (mySizereductiontexture != src.mySizereductiontexture)
return false;
279 if (myGoalfeedback != src.myGoalfeedback)
return false;
280 if (myGoalfeedbackoverride != src.myGoalfeedbackoverride)
return false;
281 if (myGoalfeedbackattrib != src.myGoalfeedbackattrib)
return false;
282 if (myGoalfeedbacktexture != src.myGoalfeedbacktexture)
return false;
283 if (myTightnessreduction != src.myTightnessreduction)
return false;
284 if (myTightnessreductionoverride != src.myTightnessreductionoverride)
return false;
285 if (myTightnessreductioncurveattrib != src.myTightnessreductioncurveattrib)
return false;
286 if (myTightnessreductionattrib != src.myTightnessreductionattrib)
return false;
287 if (myTightnessreductiontexture != src.myTightnessreductiontexture)
return false;
288 if (myEnablecurling != src.myEnablecurling)
return false;
289 if (myCurlamp != src.myCurlamp)
return false;
290 if (myCurlampoverride != src.myCurlampoverride)
return false;
291 if (myCurlampcurveattrib != src.myCurlampcurveattrib)
return false;
292 if (myCurlampattrib != src.myCurlampattrib)
return false;
293 if (myCurlamptexture != src.myCurlamptexture)
return false;
294 if (myCurlampramp != src.myCurlampramp)
return false;
295 if (myCurlfreq != src.myCurlfreq)
return false;
296 if (myCurlfreqoverride != src.myCurlfreqoverride)
return false;
297 if (myCurlfreqcurveattrib != src.myCurlfreqcurveattrib)
return false;
298 if (myCurveattrib != src.myCurveattrib)
return false;
299 if (myCurlfreqattrib != src.myCurlfreqattrib)
return false;
300 if (myCurlfreqtexture != src.myCurlfreqtexture)
return false;
301 if (myCurlfreqramp != src.myCurlfreqramp)
return false;
302 if (myCreateclumpidattrib != src.myCreateclumpidattrib)
return false;
303 if (myClumpidoutputattrib != src.myClumpidoutputattrib)
return false;
304 if (myCreatetightnessattrib != src.myCreatetightnessattrib)
return false;
305 if (myTightnessoutputattrib != src.myTightnessoutputattrib)
return false;
306 if (myClumppointattribs != src.myClumppointattribs)
return false;
307 if (myClumpprimattribs != src.myClumpprimattribs)
return false;
333 myLegacymasking =
false;
335 graph->
evalOpParm(myLegacymasking, nodeidx,
"legacymasking", time, 0);
336 myUvattrib =
"uv"_sh;
338 graph->
evalOpParm(myUvattrib, nodeidx,
"uvattrib", time, 0);
341 graph->
evalOpParm(myBlend, nodeidx,
"blend", time, 0);
343 if (
true && ( (!(((getLegacymasking()==1)))) ) )
344 graph->
evalOpParm(myBlendoverride, nodeidx,
"blendoverride", time, 0);
345 myBlendcurveattrib =
"clumpmask"_sh;
346 if (
true && ( (!(((
int64(getBlendoverride())!=1))||((getLegacymasking()==1)))) ) )
347 graph->
evalOpParm(myBlendcurveattrib, nodeidx,
"blendcurveattrib", time, 0);
348 myBlendattrib =
"clumpmask"_sh;
349 if (
true && ( (!(((
int64(getBlendoverride())!=2))||((getLegacymasking()==1)))) ) )
350 graph->
evalOpParm(myBlendattrib, nodeidx,
"blendattrib", time, 0);
351 myBlendtexture =
""_sh;
352 if (
true && ( (!(((
int64(getBlendoverride())!=3))||((getLegacymasking()==1)))) ) )
353 graph->
evalOpParm(myBlendtexture, nodeidx,
"blendtexture", time, 0);
354 myUseskinmask =
false;
355 if (
true && ( (!(((getLegacymasking()==0)))) ) )
356 graph->
evalOpParm(myUseskinmask, nodeidx,
"useskinmask", time, 0);
357 mySkinmaskattrib =
"clumpmask"_sh;
358 if (
true && ( (!(((getUseskinmask()==0))||((getLegacymasking()==0)))) ) )
359 graph->
evalOpParm(mySkinmaskattrib, nodeidx,
"skinmaskattrib", time, 0);
362 graph->
evalOpParm(myClumpsize, nodeidx,
"clumpsize", time, 0);
363 myClumpsizeoverride = 0;
365 graph->
evalOpParm(myClumpsizeoverride, nodeidx,
"clumpsizeoverride", time, 0);
366 myClumpsizeattrib =
"clumpsize"_sh;
367 if (
true && ( (!(((
int64(getClumpsizeoverride())!=1)))) ) )
368 graph->
evalOpParm(myClumpsizeattrib, nodeidx,
"clumpsizeattrib", time, 0);
369 myClumpsizetexture =
""_sh;
370 if (
true && ( (!(((
int64(getClumpsizeoverride())!=2)))) ) )
371 graph->
evalOpParm(myClumpsizetexture, nodeidx,
"clumpsizetexture", time, 0);
372 mySearchbeyondradius =
true;
374 graph->
evalOpParm(mySearchbeyondradius, nodeidx,
"searchbeyondradius", time, 0);
375 myClumpwithinclumps =
true;
377 graph->
evalOpParm(myClumpwithinclumps, nodeidx,
"clumpwithinclumps", time, 0);
378 myCrossoverrate = 0.2;
380 graph->
evalOpParm(myCrossoverrate, nodeidx,
"crossoverrate", time, 0);
383 graph->
evalOpParm(mySeed, nodeidx,
"seed", time, 0);
386 graph->
evalOpParm(myMethod, nodeidx,
"method", time, 0);
387 myPreservelength =
true;
389 graph->
evalOpParm(myPreservelength, nodeidx,
"preservelength", time, 0);
391 if (
true && ( (!(((getPreservelength()==0)))) ) )
392 graph->
evalOpParm(myExtendtomatch, nodeidx,
"extendtomatch", time, 0);
393 myShortentomatch = 1;
394 if (
true && ( (!(((getPreservelength()==0)))) ) )
395 graph->
evalOpParm(myShortentomatch, nodeidx,
"shortentomatch", time, 0);
396 myAccuratebundling =
true;
398 graph->
evalOpParm(myAccuratebundling, nodeidx,
"accuratebundling", time, 0);
400 if (
true && ( (!(((getAccuratebundling()==0)))) ) )
401 graph->
evalOpParm(myHairwidth, nodeidx,
"hairwidth", time, 0);
402 myHairwidthscale = 1;
403 if (
true && ( (!(((getAccuratebundling()==0)))) ) )
404 graph->
evalOpParm(myHairwidthscale, nodeidx,
"hairwidthscale", time, 0);
407 graph->
evalOpParm(myTightness, nodeidx,
"tightness", time, 0);
408 myTightnessoverride = 0;
410 graph->
evalOpParm(myTightnessoverride, nodeidx,
"tightnessoverride", time, 0);
411 myTightnesscurveattrib =
"tightness"_sh;
412 if (
true && ( (!(((
int64(getTightnessoverride())!=2)))) ) )
413 graph->
evalOpParm(myTightnesscurveattrib, nodeidx,
"tightnesscurveattrib", time, 0);
414 myTightnessclumpattrib =
"tightness"_sh;
415 if (
true && ( (!(((
int64(getTightnessoverride())!=1)))) ) )
416 graph->
evalOpParm(myTightnessclumpattrib, nodeidx,
"tightnessclumpattrib", time, 0);
417 myTightnessattrib =
"tightness"_sh;
418 if (
true && ( (!(((
int64(getTightnessoverride())!=3)))) ) )
419 graph->
evalOpParm(myTightnessattrib, nodeidx,
"tightnessattrib", time, 0);
420 myTightnesstexture =
""_sh;
421 if (
true && ( (!(((
int64(getTightnessoverride())!=4)))) ) )
422 graph->
evalOpParm(myTightnesstexture, nodeidx,
"tightnesstexture", time, 0);
425 graph->
evalOpParm(myStrayamount, nodeidx,
"strayamount", time, 0);
426 myStrayamountoverride = 0;
428 graph->
evalOpParm(myStrayamountoverride, nodeidx,
"strayamountoverride", time, 0);
429 myStrayamountcurveattrib =
"strayamount"_sh;
430 if (
true && ( (!(((
int64(getStrayamountoverride())!=2)))) ) )
431 graph->
evalOpParm(myStrayamountcurveattrib, nodeidx,
"strayamountcurveattrib", time, 0);
432 myStrayamountclumpattrib =
"strayamount"_sh;
433 if (
true && ( (!(((
int64(getStrayamountoverride())!=1)))) ) )
434 graph->
evalOpParm(myStrayamountclumpattrib, nodeidx,
"strayamountclumpattrib", time, 0);
435 myStrayamountattrib =
"strayamount"_sh;
436 if (
true && ( (!(((
int64(getStrayamountoverride())!=3)))) ) )
437 graph->
evalOpParm(myStrayamountattrib, nodeidx,
"strayamountattrib", time, 0);
438 myStrayamounttexture =
""_sh;
439 if (
true && ( (!(((
int64(getStrayamountoverride())!=4)))) ) )
440 graph->
evalOpParm(myStrayamounttexture, nodeidx,
"strayamounttexture", time, 0);
443 graph->
evalOpParm(myStrayrate, nodeidx,
"strayrate", time, 0);
444 myStrayrateoverride = 0;
446 graph->
evalOpParm(myStrayrateoverride, nodeidx,
"strayrateoverride", time, 0);
447 myStrayratecurveattrib =
"strayrate"_sh;
448 if (
true && ( (!(((
int64(getStrayrateoverride())!=2)))) ) )
449 graph->
evalOpParm(myStrayratecurveattrib, nodeidx,
"strayratecurveattrib", time, 0);
450 myStrayrateclumpattrib =
"strayrate"_sh;
451 if (
true && ( (!(((
int64(getStrayrateoverride())!=1)))) ) )
452 graph->
evalOpParm(myStrayrateclumpattrib, nodeidx,
"strayrateclumpattrib", time, 0);
453 myStrayrateattrib =
"strayrate"_sh;
454 if (
true && ( (!(((
int64(getStrayrateoverride())!=3)))) ) )
455 graph->
evalOpParm(myStrayrateattrib, nodeidx,
"strayrateattrib", time, 0);
456 myStrayratetexture =
""_sh;
457 if (
true && ( (!(((
int64(getStrayrateoverride())!=4)))) ) )
458 graph->
evalOpParm(myStrayratetexture, nodeidx,
"strayratetexture", time, 0);
461 graph->
evalOpParm(myStrayfalloff, nodeidx,
"strayfalloff", time, 0);
462 myStrayfalloffoverride = 0;
464 graph->
evalOpParm(myStrayfalloffoverride, nodeidx,
"strayfalloffoverride", time, 0);
465 myStrayfalloffcurveattrib =
"strayfalloff"_sh;
466 if (
true && ( (!(((
int64(getStrayfalloffoverride())!=2)))) ) )
467 graph->
evalOpParm(myStrayfalloffcurveattrib, nodeidx,
"strayfalloffcurveattrib", time, 0);
468 myStrayfalloffclumpattrib =
"strayfalloff"_sh;
469 if (
true && ( (!(((
int64(getStrayfalloffoverride())!=1)))) ) )
470 graph->
evalOpParm(myStrayfalloffclumpattrib, nodeidx,
"strayfalloffclumpattrib", time, 0);
471 myStrayfalloffattrib =
"strayfalloff"_sh;
472 if (
true && ( (!(((
int64(getStrayfalloffoverride())!=3)))) ) )
473 graph->
evalOpParm(myStrayfalloffattrib, nodeidx,
"strayfalloffattrib", time, 0);
474 myStrayfallofftexture =
""_sh;
475 if (
true && ( (!(((
int64(getStrayfalloffoverride())!=4)))) ) )
476 graph->
evalOpParm(myStrayfallofftexture, nodeidx,
"strayfallofftexture", time, 0);
479 graph->
evalOpParm(myClumpprofile, nodeidx,
"clumpprofile", time, 0);
482 graph->
evalOpParm(myIterations, nodeidx,
"iterations", time, 0);
483 myIterationsoverride = 0;
485 graph->
evalOpParm(myIterationsoverride, nodeidx,
"iterationsoverride", time, 0);
486 myIterationscurveattrib =
"clumpiterations"_sh;
487 if (
true && ( (!(((
int64(getIterationsoverride())!=1)))) ) )
488 graph->
evalOpParm(myIterationscurveattrib, nodeidx,
"iterationscurveattrib", time, 0);
489 myIterationsattrib =
"clumpiterations"_sh;
490 if (
true && ( (!(((
int64(getIterationsoverride())!=2)))) ) )
491 graph->
evalOpParm(myIterationsattrib, nodeidx,
"iterationsattrib", time, 0);
492 myIterationstexture =
""_sh;
493 if (
true && ( (!(((
int64(getIterationsoverride())!=3)))) ) )
494 graph->
evalOpParm(myIterationstexture, nodeidx,
"iterationstexture", time, 0);
495 mySizereduction = 0.4;
496 if (
true && ( (!(((getIterations()<=1)))) ) )
497 graph->
evalOpParm(mySizereduction, nodeidx,
"sizereduction", time, 0);
498 mySizereductionoverride = 0;
499 if (
true && ( (!(((getIterations()<=1)))) ) )
500 graph->
evalOpParm(mySizereductionoverride, nodeidx,
"sizereductionoverride", time, 0);
501 mySizereductionattrib =
"clumpsizereduction"_sh;
502 if (
true && ( (!(((getIterations()<=1))||((
int64(getSizereductionoverride())!=1)))) ) )
503 graph->
evalOpParm(mySizereductionattrib, nodeidx,
"sizereductionattrib", time, 0);
504 mySizereductiontexture =
""_sh;
505 if (
true && ( (!(((getIterations()<=1))||((
int64(getSizereductionoverride())!=2)))) ) )
506 graph->
evalOpParm(mySizereductiontexture, nodeidx,
"sizereductiontexture", time, 0);
507 myGoalfeedback = 0.1;
508 if (
true && ( (!(((getIterations()<=1)))) ) )
509 graph->
evalOpParm(myGoalfeedback, nodeidx,
"goalfeedback", time, 0);
510 myGoalfeedbackoverride = 0;
511 if (
true && ( (!(((getIterations()<=1)))) ) )
512 graph->
evalOpParm(myGoalfeedbackoverride, nodeidx,
"goalfeedbackoverride", time, 0);
513 myGoalfeedbackattrib =
"clumpgoalfeedback"_sh;
514 if (
true && ( (!(((getIterations()<=1))||((
int64(getGoalfeedbackoverride())!=1)))) ) )
515 graph->
evalOpParm(myGoalfeedbackattrib, nodeidx,
"goalfeedbackattrib", time, 0);
516 myGoalfeedbacktexture =
""_sh;
517 if (
true && ( (!(((getIterations()<=1))||((
int64(getGoalfeedbackoverride())!=2)))) ) )
518 graph->
evalOpParm(myGoalfeedbacktexture, nodeidx,
"goalfeedbacktexture", time, 0);
519 myTightnessreduction = 0.2;
520 if (
true && ( (!(((getIterations()<=1)))) ) )
521 graph->
evalOpParm(myTightnessreduction, nodeidx,
"tightnessreduction", time, 0);
522 myTightnessreductionoverride = 0;
523 if (
true && ( (!(((getIterations()<=1)))) ) )
524 graph->
evalOpParm(myTightnessreductionoverride, nodeidx,
"tightnessreductionoverride", time, 0);
525 myTightnessreductioncurveattrib =
"clumptightnessreduction"_sh;
526 if (
true && ( (!(((getIterations()<=1))||((
int64(getTightnessreductionoverride())!=1)))) ) )
527 graph->
evalOpParm(myTightnessreductioncurveattrib, nodeidx,
"tightnessreductioncurveattrib", time, 0);
528 myTightnessreductionattrib =
"clumptightnessreduction"_sh;
529 if (
true && ( (!(((getIterations()<=1))||((
int64(getTightnessreductionoverride())!=2)))) ) )
530 graph->
evalOpParm(myTightnessreductionattrib, nodeidx,
"tightnessreductionattrib", time, 0);
531 myTightnessreductiontexture =
""_sh;
532 if (
true && ( (!(((getIterations()<=1))||((
int64(getTightnessreductionoverride())!=3)))) ) )
533 graph->
evalOpParm(myTightnessreductiontexture, nodeidx,
"tightnessreductiontexture", time, 0);
534 myEnablecurling =
false;
536 graph->
evalOpParm(myEnablecurling, nodeidx,
"enablecurling", time, 0);
538 if (
true && ( (!(((getEnablecurling()==0)))) ) )
539 graph->
evalOpParm(myCurlamp, nodeidx,
"curlamp", time, 0);
540 myCurlampoverride = 0;
541 if (
true && ( (!(((getEnablecurling()==0)))) ) )
542 graph->
evalOpParm(myCurlampoverride, nodeidx,
"curlampoverride", time, 0);
543 myCurlampcurveattrib =
"clumpcurlamp"_sh;
544 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlampoverride())!=1)))) ) )
545 graph->
evalOpParm(myCurlampcurveattrib, nodeidx,
"curlampcurveattrib", time, 0);
546 myCurlampattrib =
"clumpcurlamp"_sh;
547 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlampoverride())!=2)))) ) )
548 graph->
evalOpParm(myCurlampattrib, nodeidx,
"curlampattrib", time, 0);
549 myCurlamptexture =
""_sh;
550 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlampoverride())!=3)))) ) )
551 graph->
evalOpParm(myCurlamptexture, nodeidx,
"curlamptexture", time, 0);
553 if (
true && ( (!(((getEnablecurling()==0)))) ) )
554 graph->
evalOpParm(myCurlampramp, nodeidx,
"curlampramp", time, 0);
556 if (
true && ( (!(((getEnablecurling()==0)))) ) )
557 graph->
evalOpParm(myCurlfreq, nodeidx,
"curlfreq", time, 0);
558 myCurlfreqoverride = 0;
559 if (
true && ( (!(((getEnablecurling()==0)))) ) )
560 graph->
evalOpParm(myCurlfreqoverride, nodeidx,
"curlfreqoverride", time, 0);
561 myCurlfreqcurveattrib =
"clumpcurlfreq"_sh;
562 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlfreqoverride())!=1)))) ) )
563 graph->
evalOpParm(myCurlfreqcurveattrib, nodeidx,
"curlfreqcurveattrib", time, 0);
564 myCurveattrib =
"clumpcurlfreq"_sh;
565 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlfreqoverride())!=1)))) ) )
566 graph->
evalOpParm(myCurveattrib, nodeidx,
"curveattrib", time, 0);
567 myCurlfreqattrib =
"clumpcurlfreq"_sh;
568 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlfreqoverride())!=2)))) ) )
569 graph->
evalOpParm(myCurlfreqattrib, nodeidx,
"curlfreqattrib", time, 0);
570 myCurlfreqtexture =
""_sh;
571 if (
true && ( (!(((getEnablecurling()==0))||((
int64(getCurlfreqoverride())!=3)))) ) )
572 graph->
evalOpParm(myCurlfreqtexture, nodeidx,
"curlfreqtexture", time, 0);
574 if (
true && ( (!(((getEnablecurling()==0)))) ) )
575 graph->
evalOpParm(myCurlfreqramp, nodeidx,
"curlfreqramp", time, 0);
576 myCreateclumpidattrib =
true;
578 graph->
evalOpParm(myCreateclumpidattrib, nodeidx,
"createclumpidattrib", time, 0);
579 myClumpidoutputattrib =
"clumpid"_sh;
581 graph->
evalOpParm(myClumpidoutputattrib, nodeidx,
"clumpidoutputattrib", time, 0);
582 myCreatetightnessattrib =
true;
584 graph->
evalOpParm(myCreatetightnessattrib, nodeidx,
"createtightnessattrib", time, 0);
585 myTightnessoutputattrib =
"tightness"_sh;
587 graph->
evalOpParm(myTightnessoutputattrib, nodeidx,
"tightnessoutputattrib", time, 0);
588 myClumppointattribs =
""_sh;
590 graph->
evalOpParm(myClumppointattribs, nodeidx,
"clumppointattribs", time, 0);
591 myClumpprimattribs =
""_sh;
593 graph->
evalOpParm(myClumpprimattribs, nodeidx,
"clumpprimattribs", time, 0);
609 template <
typename T>
616 if (idx.
size() != instance.
size()+1)
621 coerceValue(value, myLegacymasking);
624 coerceValue(value, myUvattrib);
627 coerceValue(value, myBlend);
630 coerceValue(value, myBlendoverride);
633 coerceValue(value, myBlendcurveattrib);
636 coerceValue(value, myBlendattrib);
639 coerceValue(value, myBlendtexture);
642 coerceValue(value, myUseskinmask);
645 coerceValue(value, mySkinmaskattrib);
648 coerceValue(value, myClumpsize);
651 coerceValue(value, myClumpsizeoverride);
654 coerceValue(value, myClumpsizeattrib);
657 coerceValue(value, myClumpsizetexture);
660 coerceValue(value, mySearchbeyondradius);
663 coerceValue(value, myClumpwithinclumps);
666 coerceValue(value, myCrossoverrate);
669 coerceValue(value, mySeed);
672 coerceValue(value, myMethod);
675 coerceValue(value, myPreservelength);
678 coerceValue(value, myExtendtomatch);
681 coerceValue(value, myShortentomatch);
684 coerceValue(value, myAccuratebundling);
687 coerceValue(value, myHairwidth);
690 coerceValue(value, myHairwidthscale);
693 coerceValue(value, myTightness);
696 coerceValue(value, myTightnessoverride);
699 coerceValue(value, myTightnesscurveattrib);
702 coerceValue(value, myTightnessclumpattrib);
705 coerceValue(value, myTightnessattrib);
708 coerceValue(value, myTightnesstexture);
711 coerceValue(value, myStrayamount);
714 coerceValue(value, myStrayamountoverride);
717 coerceValue(value, myStrayamountcurveattrib);
720 coerceValue(value, myStrayamountclumpattrib);
723 coerceValue(value, myStrayamountattrib);
726 coerceValue(value, myStrayamounttexture);
729 coerceValue(value, myStrayrate);
732 coerceValue(value, myStrayrateoverride);
735 coerceValue(value, myStrayratecurveattrib);
738 coerceValue(value, myStrayrateclumpattrib);
741 coerceValue(value, myStrayrateattrib);
744 coerceValue(value, myStrayratetexture);
747 coerceValue(value, myStrayfalloff);
750 coerceValue(value, myStrayfalloffoverride);
753 coerceValue(value, myStrayfalloffcurveattrib);
756 coerceValue(value, myStrayfalloffclumpattrib);
759 coerceValue(value, myStrayfalloffattrib);
762 coerceValue(value, myStrayfallofftexture);
765 coerceValue(value, myClumpprofile);
768 coerceValue(value, myIterations);
771 coerceValue(value, myIterationsoverride);
774 coerceValue(value, myIterationscurveattrib);
777 coerceValue(value, myIterationsattrib);
780 coerceValue(value, myIterationstexture);
783 coerceValue(value, mySizereduction);
786 coerceValue(value, mySizereductionoverride);
789 coerceValue(value, mySizereductionattrib);
792 coerceValue(value, mySizereductiontexture);
795 coerceValue(value, myGoalfeedback);
798 coerceValue(value, myGoalfeedbackoverride);
801 coerceValue(value, myGoalfeedbackattrib);
804 coerceValue(value, myGoalfeedbacktexture);
807 coerceValue(value, myTightnessreduction);
810 coerceValue(value, myTightnessreductionoverride);
813 coerceValue(value, myTightnessreductioncurveattrib);
816 coerceValue(value, myTightnessreductionattrib);
819 coerceValue(value, myTightnessreductiontexture);
822 coerceValue(value, myEnablecurling);
825 coerceValue(value, myCurlamp);
828 coerceValue(value, myCurlampoverride);
831 coerceValue(value, myCurlampcurveattrib);
834 coerceValue(value, myCurlampattrib);
837 coerceValue(value, myCurlamptexture);
840 coerceValue(value, myCurlampramp);
843 coerceValue(value, myCurlfreq);
846 coerceValue(value, myCurlfreqoverride);
849 coerceValue(value, myCurlfreqcurveattrib);
852 coerceValue(value, myCurveattrib);
855 coerceValue(value, myCurlfreqattrib);
858 coerceValue(value, myCurlfreqtexture);
861 coerceValue(value, myCurlfreqramp);
864 coerceValue(value, myCreateclumpidattrib);
867 coerceValue(value, myClumpidoutputattrib);
870 coerceValue(value, myCreatetightnessattrib);
873 coerceValue(value, myTightnessoutputattrib);
876 coerceValue(value, myClumppointattribs);
879 coerceValue(value, myClumpprimattribs);
886 { doGetParmValue(idx, instance, value); }
888 { doGetParmValue(idx, instance, value); }
890 { doGetParmValue(idx, instance, value); }
892 { doGetParmValue(idx, instance, value); }
894 { doGetParmValue(idx, instance, value); }
896 { doGetParmValue(idx, instance, value); }
898 { doGetParmValue(idx, instance, value); }
900 { doGetParmValue(idx, instance, value); }
902 { doGetParmValue(idx, instance, value); }
904 { doGetParmValue(idx, instance, value); }
906 { doGetParmValue(idx, instance, value); }
908 template <
typename T>
915 if (idx.
size() != instance.
size()+1)
920 coerceValue(myLegacymasking, value);
923 coerceValue(myUvattrib, value);
926 coerceValue(myBlend, value);
929 coerceValue(myBlendoverride, value);
932 coerceValue(myBlendcurveattrib, value);
935 coerceValue(myBlendattrib, value);
938 coerceValue(myBlendtexture, value);
941 coerceValue(myUseskinmask, value);
944 coerceValue(mySkinmaskattrib, value);
947 coerceValue(myClumpsize, value);
950 coerceValue(myClumpsizeoverride, value);
953 coerceValue(myClumpsizeattrib, value);
956 coerceValue(myClumpsizetexture, value);
959 coerceValue(mySearchbeyondradius, value);
962 coerceValue(myClumpwithinclumps, value);
965 coerceValue(myCrossoverrate, value);
968 coerceValue(mySeed, value);
971 coerceValue(myMethod, value);
974 coerceValue(myPreservelength, value);
977 coerceValue(myExtendtomatch, value);
980 coerceValue(myShortentomatch, value);
983 coerceValue(myAccuratebundling, value);
986 coerceValue(myHairwidth, value);
989 coerceValue(myHairwidthscale, value);
992 coerceValue(myTightness, value);
995 coerceValue(myTightnessoverride, value);
998 coerceValue(myTightnesscurveattrib, value);
1001 coerceValue(myTightnessclumpattrib, value);
1004 coerceValue(myTightnessattrib, value);
1007 coerceValue(myTightnesstexture, value);
1010 coerceValue(myStrayamount, value);
1013 coerceValue(myStrayamountoverride, value);
1016 coerceValue(myStrayamountcurveattrib, value);
1019 coerceValue(myStrayamountclumpattrib, value);
1022 coerceValue(myStrayamountattrib, value);
1025 coerceValue(myStrayamounttexture, value);
1028 coerceValue(myStrayrate, value);
1031 coerceValue(myStrayrateoverride, value);
1034 coerceValue(myStrayratecurveattrib, value);
1037 coerceValue(myStrayrateclumpattrib, value);
1040 coerceValue(myStrayrateattrib, value);
1043 coerceValue(myStrayratetexture, value);
1046 coerceValue(myStrayfalloff, value);
1049 coerceValue(myStrayfalloffoverride, value);
1052 coerceValue(myStrayfalloffcurveattrib, value);
1055 coerceValue(myStrayfalloffclumpattrib, value);
1058 coerceValue(myStrayfalloffattrib, value);
1061 coerceValue(myStrayfallofftexture, value);
1064 coerceValue(myClumpprofile, value);
1067 coerceValue(myIterations, value);
1070 coerceValue(myIterationsoverride, value);
1073 coerceValue(myIterationscurveattrib, value);
1076 coerceValue(myIterationsattrib, value);
1079 coerceValue(myIterationstexture, value);
1082 coerceValue(mySizereduction, value);
1085 coerceValue(mySizereductionoverride, value);
1088 coerceValue(mySizereductionattrib, value);
1091 coerceValue(mySizereductiontexture, value);
1094 coerceValue(myGoalfeedback, value);
1097 coerceValue(myGoalfeedbackoverride, value);
1100 coerceValue(myGoalfeedbackattrib, value);
1103 coerceValue(myGoalfeedbacktexture, value);
1106 coerceValue(myTightnessreduction, value);
1109 coerceValue(myTightnessreductionoverride, value);
1112 coerceValue(myTightnessreductioncurveattrib, value);
1115 coerceValue(myTightnessreductionattrib, value);
1118 coerceValue(myTightnessreductiontexture, value);
1121 coerceValue(myEnablecurling, value);
1124 coerceValue(myCurlamp, value);
1127 coerceValue(myCurlampoverride, value);
1130 coerceValue(myCurlampcurveattrib, value);
1133 coerceValue(myCurlampattrib, value);
1136 coerceValue(myCurlamptexture, value);
1139 coerceValue(myCurlampramp, value);
1142 coerceValue(myCurlfreq, value);
1145 coerceValue(myCurlfreqoverride, value);
1148 coerceValue(myCurlfreqcurveattrib, value);
1151 coerceValue(myCurveattrib, value);
1154 coerceValue(myCurlfreqattrib, value);
1157 coerceValue(myCurlfreqtexture, value);
1160 coerceValue(myCurlfreqramp, value);
1163 coerceValue(myCreateclumpidattrib, value);
1166 coerceValue(myClumpidoutputattrib, value);
1169 coerceValue(myCreatetightnessattrib, value);
1172 coerceValue(myTightnessoutputattrib, value);
1175 coerceValue(myClumppointattribs, value);
1178 coerceValue(myClumpprimattribs, value);
1185 { doSetParmValue(idx, instance, value); }
1187 { doSetParmValue(idx, instance, value); }
1189 { doSetParmValue(idx, instance, value); }
1191 { doSetParmValue(idx, instance, value); }
1193 { doSetParmValue(idx, instance, value); }
1195 { doSetParmValue(idx, instance, value); }
1197 { doSetParmValue(idx, instance, value); }
1199 { doSetParmValue(idx, instance, value); }
1201 { doSetParmValue(idx, instance, value); }
1203 { doSetParmValue(idx, instance, value); }
1205 { doSetParmValue(idx, instance, value); }
1209 if (idx.
size() == 0)
1221 if (fieldnum.
size() < 1)
1223 switch (fieldnum[0])
1226 return "legacymasking";
1232 return "blendoverride";
1234 return "blendcurveattrib";
1236 return "blendattrib";
1238 return "blendtexture";
1240 return "useskinmask";
1242 return "skinmaskattrib";
1246 return "clumpsizeoverride";
1248 return "clumpsizeattrib";
1250 return "clumpsizetexture";
1252 return "searchbeyondradius";
1254 return "clumpwithinclumps";
1256 return "crossoverrate";
1262 return "preservelength";
1264 return "extendtomatch";
1266 return "shortentomatch";
1268 return "accuratebundling";
1272 return "hairwidthscale";
1276 return "tightnessoverride";
1278 return "tightnesscurveattrib";
1280 return "tightnessclumpattrib";
1282 return "tightnessattrib";
1284 return "tightnesstexture";
1286 return "strayamount";
1288 return "strayamountoverride";
1290 return "strayamountcurveattrib";
1292 return "strayamountclumpattrib";
1294 return "strayamountattrib";
1296 return "strayamounttexture";
1300 return "strayrateoverride";
1302 return "strayratecurveattrib";
1304 return "strayrateclumpattrib";
1306 return "strayrateattrib";
1308 return "strayratetexture";
1310 return "strayfalloff";
1312 return "strayfalloffoverride";
1314 return "strayfalloffcurveattrib";
1316 return "strayfalloffclumpattrib";
1318 return "strayfalloffattrib";
1320 return "strayfallofftexture";
1322 return "clumpprofile";
1324 return "iterations";
1326 return "iterationsoverride";
1328 return "iterationscurveattrib";
1330 return "iterationsattrib";
1332 return "iterationstexture";
1334 return "sizereduction";
1336 return "sizereductionoverride";
1338 return "sizereductionattrib";
1340 return "sizereductiontexture";
1342 return "goalfeedback";
1344 return "goalfeedbackoverride";
1346 return "goalfeedbackattrib";
1348 return "goalfeedbacktexture";
1350 return "tightnessreduction";
1352 return "tightnessreductionoverride";
1354 return "tightnessreductioncurveattrib";
1356 return "tightnessreductionattrib";
1358 return "tightnessreductiontexture";
1360 return "enablecurling";
1364 return "curlampoverride";
1366 return "curlampcurveattrib";
1368 return "curlampattrib";
1370 return "curlamptexture";
1372 return "curlampramp";
1376 return "curlfreqoverride";
1378 return "curlfreqcurveattrib";
1380 return "curveattrib";
1382 return "curlfreqattrib";
1384 return "curlfreqtexture";
1386 return "curlfreqramp";
1388 return "createclumpidattrib";
1390 return "clumpidoutputattrib";
1392 return "createtightnessattrib";
1394 return "tightnessoutputattrib";
1396 return "clumppointattribs";
1398 return "clumpprimattribs";
1406 if (fieldnum.
size() < 1)
1407 return PARM_UNSUPPORTED;
1408 switch (fieldnum[0])
1411 return PARM_INTEGER;
1417 return PARM_INTEGER;
1425 return PARM_INTEGER;
1431 return PARM_INTEGER;
1437 return PARM_INTEGER;
1439 return PARM_INTEGER;
1445 return PARM_INTEGER;
1447 return PARM_INTEGER;
1453 return PARM_INTEGER;
1461 return PARM_INTEGER;
1473 return PARM_INTEGER;
1485 return PARM_INTEGER;
1497 return PARM_INTEGER;
1511 return PARM_INTEGER;
1521 return PARM_INTEGER;
1529 return PARM_INTEGER;
1537 return PARM_INTEGER;
1545 return PARM_INTEGER;
1549 return PARM_INTEGER;
1561 return PARM_INTEGER;
1573 return PARM_INTEGER;
1577 return PARM_INTEGER;
1586 return PARM_UNSUPPORTED;
1591 { is.
bread(&v, 1); }
1622 loadData(is, rampdata);
1640 int typelen = colon - data.
buffer();
1652 { UTwrite(os, &v); }
1654 {
int64 iv =
v; UTwrite(os, &iv); }
1656 { UTwrite<fpreal64>(os, &
v); }
1658 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1660 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1661 UTwrite<fpreal64>(os, &v.
z()); }
1663 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1664 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1676 if (s) s->save(ostr);
1677 result = ostr.
str();
1678 saveData(os, result);
1685 ostr << s->getDataTypeToken();
1687 s->saveBinary(ostr);
1689 result = ostr.
str();
1690 saveData(os, result);
1698 saveData(os, myLegacymasking);
1699 saveData(os, myUvattrib);
1700 saveData(os, myBlend);
1701 saveData(os, myBlendoverride);
1702 saveData(os, myBlendcurveattrib);
1703 saveData(os, myBlendattrib);
1704 saveData(os, myBlendtexture);
1705 saveData(os, myUseskinmask);
1706 saveData(os, mySkinmaskattrib);
1707 saveData(os, myClumpsize);
1708 saveData(os, myClumpsizeoverride);
1709 saveData(os, myClumpsizeattrib);
1710 saveData(os, myClumpsizetexture);
1711 saveData(os, mySearchbeyondradius);
1712 saveData(os, myClumpwithinclumps);
1713 saveData(os, myCrossoverrate);
1714 saveData(os, mySeed);
1715 saveData(os, myMethod);
1716 saveData(os, myPreservelength);
1717 saveData(os, myExtendtomatch);
1718 saveData(os, myShortentomatch);
1719 saveData(os, myAccuratebundling);
1720 saveData(os, myHairwidth);
1721 saveData(os, myHairwidthscale);
1722 saveData(os, myTightness);
1723 saveData(os, myTightnessoverride);
1724 saveData(os, myTightnesscurveattrib);
1725 saveData(os, myTightnessclumpattrib);
1726 saveData(os, myTightnessattrib);
1727 saveData(os, myTightnesstexture);
1728 saveData(os, myStrayamount);
1729 saveData(os, myStrayamountoverride);
1730 saveData(os, myStrayamountcurveattrib);
1731 saveData(os, myStrayamountclumpattrib);
1732 saveData(os, myStrayamountattrib);
1733 saveData(os, myStrayamounttexture);
1734 saveData(os, myStrayrate);
1735 saveData(os, myStrayrateoverride);
1736 saveData(os, myStrayratecurveattrib);
1737 saveData(os, myStrayrateclumpattrib);
1738 saveData(os, myStrayrateattrib);
1739 saveData(os, myStrayratetexture);
1740 saveData(os, myStrayfalloff);
1741 saveData(os, myStrayfalloffoverride);
1742 saveData(os, myStrayfalloffcurveattrib);
1743 saveData(os, myStrayfalloffclumpattrib);
1744 saveData(os, myStrayfalloffattrib);
1745 saveData(os, myStrayfallofftexture);
1746 saveData(os, myClumpprofile);
1747 saveData(os, myIterations);
1748 saveData(os, myIterationsoverride);
1749 saveData(os, myIterationscurveattrib);
1750 saveData(os, myIterationsattrib);
1751 saveData(os, myIterationstexture);
1752 saveData(os, mySizereduction);
1753 saveData(os, mySizereductionoverride);
1754 saveData(os, mySizereductionattrib);
1755 saveData(os, mySizereductiontexture);
1756 saveData(os, myGoalfeedback);
1757 saveData(os, myGoalfeedbackoverride);
1758 saveData(os, myGoalfeedbackattrib);
1759 saveData(os, myGoalfeedbacktexture);
1760 saveData(os, myTightnessreduction);
1761 saveData(os, myTightnessreductionoverride);
1762 saveData(os, myTightnessreductioncurveattrib);
1763 saveData(os, myTightnessreductionattrib);
1764 saveData(os, myTightnessreductiontexture);
1765 saveData(os, myEnablecurling);
1766 saveData(os, myCurlamp);
1767 saveData(os, myCurlampoverride);
1768 saveData(os, myCurlampcurveattrib);
1769 saveData(os, myCurlampattrib);
1770 saveData(os, myCurlamptexture);
1771 saveData(os, myCurlampramp);
1772 saveData(os, myCurlfreq);
1773 saveData(os, myCurlfreqoverride);
1774 saveData(os, myCurlfreqcurveattrib);
1775 saveData(os, myCurveattrib);
1776 saveData(os, myCurlfreqattrib);
1777 saveData(os, myCurlfreqtexture);
1778 saveData(os, myCurlfreqramp);
1779 saveData(os, myCreateclumpidattrib);
1780 saveData(os, myClumpidoutputattrib);
1781 saveData(os, myCreatetightnessattrib);
1782 saveData(os, myTightnessoutputattrib);
1783 saveData(os, myClumppointattribs);
1784 saveData(os, myClumpprimattribs);
1797 loadData(is, myLegacymasking);
1798 loadData(is, myUvattrib);
1799 loadData(is, myBlend);
1800 loadData(is, myBlendoverride);
1801 loadData(is, myBlendcurveattrib);
1802 loadData(is, myBlendattrib);
1803 loadData(is, myBlendtexture);
1804 loadData(is, myUseskinmask);
1805 loadData(is, mySkinmaskattrib);
1806 loadData(is, myClumpsize);
1807 loadData(is, myClumpsizeoverride);
1808 loadData(is, myClumpsizeattrib);
1809 loadData(is, myClumpsizetexture);
1810 loadData(is, mySearchbeyondradius);
1811 loadData(is, myClumpwithinclumps);
1812 loadData(is, myCrossoverrate);
1813 loadData(is, mySeed);
1814 loadData(is, myMethod);
1815 loadData(is, myPreservelength);
1816 loadData(is, myExtendtomatch);
1817 loadData(is, myShortentomatch);
1818 loadData(is, myAccuratebundling);
1819 loadData(is, myHairwidth);
1820 loadData(is, myHairwidthscale);
1821 loadData(is, myTightness);
1822 loadData(is, myTightnessoverride);
1823 loadData(is, myTightnesscurveattrib);
1824 loadData(is, myTightnessclumpattrib);
1825 loadData(is, myTightnessattrib);
1826 loadData(is, myTightnesstexture);
1827 loadData(is, myStrayamount);
1828 loadData(is, myStrayamountoverride);
1829 loadData(is, myStrayamountcurveattrib);
1830 loadData(is, myStrayamountclumpattrib);
1831 loadData(is, myStrayamountattrib);
1832 loadData(is, myStrayamounttexture);
1833 loadData(is, myStrayrate);
1834 loadData(is, myStrayrateoverride);
1835 loadData(is, myStrayratecurveattrib);
1836 loadData(is, myStrayrateclumpattrib);
1837 loadData(is, myStrayrateattrib);
1838 loadData(is, myStrayratetexture);
1839 loadData(is, myStrayfalloff);
1840 loadData(is, myStrayfalloffoverride);
1841 loadData(is, myStrayfalloffcurveattrib);
1842 loadData(is, myStrayfalloffclumpattrib);
1843 loadData(is, myStrayfalloffattrib);
1844 loadData(is, myStrayfallofftexture);
1845 loadData(is, myClumpprofile);
1846 loadData(is, myIterations);
1847 loadData(is, myIterationsoverride);
1848 loadData(is, myIterationscurveattrib);
1849 loadData(is, myIterationsattrib);
1850 loadData(is, myIterationstexture);
1851 loadData(is, mySizereduction);
1852 loadData(is, mySizereductionoverride);
1853 loadData(is, mySizereductionattrib);
1854 loadData(is, mySizereductiontexture);
1855 loadData(is, myGoalfeedback);
1856 loadData(is, myGoalfeedbackoverride);
1857 loadData(is, myGoalfeedbackattrib);
1858 loadData(is, myGoalfeedbacktexture);
1859 loadData(is, myTightnessreduction);
1860 loadData(is, myTightnessreductionoverride);
1861 loadData(is, myTightnessreductioncurveattrib);
1862 loadData(is, myTightnessreductionattrib);
1863 loadData(is, myTightnessreductiontexture);
1864 loadData(is, myEnablecurling);
1865 loadData(is, myCurlamp);
1866 loadData(is, myCurlampoverride);
1867 loadData(is, myCurlampcurveattrib);
1868 loadData(is, myCurlampattrib);
1869 loadData(is, myCurlamptexture);
1870 loadData(is, myCurlampramp);
1871 loadData(is, myCurlfreq);
1872 loadData(is, myCurlfreqoverride);
1873 loadData(is, myCurlfreqcurveattrib);
1874 loadData(is, myCurveattrib);
1875 loadData(is, myCurlfreqattrib);
1876 loadData(is, myCurlfreqtexture);
1877 loadData(is, myCurlfreqramp);
1878 loadData(is, myCreateclumpidattrib);
1879 loadData(is, myClumpidoutputattrib);
1880 loadData(is, myCreatetightnessattrib);
1881 loadData(is, myTightnessoutputattrib);
1882 loadData(is, myClumppointattribs);
1883 loadData(is, myClumpprimattribs);
1893 if (!thissop)
return getLegacymasking();
1895 OP_Utils::evalOpParm(result, thissop,
"legacymasking", cookparms.
getCookTime(), 0);
1903 if (!thissop)
return getUvattrib();
1905 OP_Utils::evalOpParm(result, thissop,
"uvattrib", cookparms.
getCookTime(), 0);
1913 if (!thissop)
return getBlend();
1915 OP_Utils::evalOpParm(result, thissop,
"blend", cookparms.
getCookTime(), 0);
1923 if (!thissop)
return getBlendoverride();
1925 OP_Utils::evalOpParm(result, thissop,
"blendoverride", cookparms.
getCookTime(), 0);
1933 if (!thissop)
return getBlendcurveattrib();
1935 OP_Utils::evalOpParm(result, thissop,
"blendcurveattrib", cookparms.
getCookTime(), 0);
1943 if (!thissop)
return getBlendattrib();
1945 OP_Utils::evalOpParm(result, thissop,
"blendattrib", cookparms.
getCookTime(), 0);
1953 if (!thissop)
return getBlendtexture();
1955 OP_Utils::evalOpParm(result, thissop,
"blendtexture", cookparms.
getCookTime(), 0);
1963 if (!thissop)
return getUseskinmask();
1965 OP_Utils::evalOpParm(result, thissop,
"useskinmask", cookparms.
getCookTime(), 0);
1973 if (!thissop)
return getSkinmaskattrib();
1975 OP_Utils::evalOpParm(result, thissop,
"skinmaskattrib", cookparms.
getCookTime(), 0);
1983 if (!thissop)
return getClumpsize();
1985 OP_Utils::evalOpParm(result, thissop,
"clumpsize", cookparms.
getCookTime(), 0);
1993 if (!thissop)
return getClumpsizeoverride();
1995 OP_Utils::evalOpParm(result, thissop,
"clumpsizeoverride", cookparms.
getCookTime(), 0);
2003 if (!thissop)
return getClumpsizeattrib();
2005 OP_Utils::evalOpParm(result, thissop,
"clumpsizeattrib", cookparms.
getCookTime(), 0);
2013 if (!thissop)
return getClumpsizetexture();
2015 OP_Utils::evalOpParm(result, thissop,
"clumpsizetexture", cookparms.
getCookTime(), 0);
2023 if (!thissop)
return getSearchbeyondradius();
2025 OP_Utils::evalOpParm(result, thissop,
"searchbeyondradius", cookparms.
getCookTime(), 0);
2033 if (!thissop)
return getClumpwithinclumps();
2035 OP_Utils::evalOpParm(result, thissop,
"clumpwithinclumps", cookparms.
getCookTime(), 0);
2043 if (!thissop)
return getCrossoverrate();
2045 OP_Utils::evalOpParm(result, thissop,
"crossoverrate", cookparms.
getCookTime(), 0);
2053 if (!thissop)
return getSeed();
2055 OP_Utils::evalOpParm(result, thissop,
"seed", cookparms.
getCookTime(), 0);
2063 if (!thissop)
return getMethod();
2065 OP_Utils::evalOpParm(result, thissop,
"method", cookparms.
getCookTime(), 0);
2073 if (!thissop)
return getPreservelength();
2075 OP_Utils::evalOpParm(result, thissop,
"preservelength", cookparms.
getCookTime(), 0);
2083 if (!thissop)
return getExtendtomatch();
2085 OP_Utils::evalOpParm(result, thissop,
"extendtomatch", cookparms.
getCookTime(), 0);
2093 if (!thissop)
return getShortentomatch();
2095 OP_Utils::evalOpParm(result, thissop,
"shortentomatch", cookparms.
getCookTime(), 0);
2103 if (!thissop)
return getAccuratebundling();
2105 OP_Utils::evalOpParm(result, thissop,
"accuratebundling", cookparms.
getCookTime(), 0);
2113 if (!thissop)
return getHairwidth();
2115 OP_Utils::evalOpParm(result, thissop,
"hairwidth", cookparms.
getCookTime(), 0);
2123 if (!thissop)
return getHairwidthscale();
2125 OP_Utils::evalOpParm(result, thissop,
"hairwidthscale", cookparms.
getCookTime(), 0);
2133 if (!thissop)
return getTightness();
2135 OP_Utils::evalOpParm(result, thissop,
"tightness", cookparms.
getCookTime(), 0);
2143 if (!thissop)
return getTightnessoverride();
2145 OP_Utils::evalOpParm(result, thissop,
"tightnessoverride", cookparms.
getCookTime(), 0);
2153 if (!thissop)
return getTightnesscurveattrib();
2155 OP_Utils::evalOpParm(result, thissop,
"tightnesscurveattrib", cookparms.
getCookTime(), 0);
2163 if (!thissop)
return getTightnessclumpattrib();
2165 OP_Utils::evalOpParm(result, thissop,
"tightnessclumpattrib", cookparms.
getCookTime(), 0);
2173 if (!thissop)
return getTightnessattrib();
2175 OP_Utils::evalOpParm(result, thissop,
"tightnessattrib", cookparms.
getCookTime(), 0);
2183 if (!thissop)
return getTightnesstexture();
2185 OP_Utils::evalOpParm(result, thissop,
"tightnesstexture", cookparms.
getCookTime(), 0);
2193 if (!thissop)
return getStrayamount();
2195 OP_Utils::evalOpParm(result, thissop,
"strayamount", cookparms.
getCookTime(), 0);
2203 if (!thissop)
return getStrayamountoverride();
2205 OP_Utils::evalOpParm(result, thissop,
"strayamountoverride", cookparms.
getCookTime(), 0);
2213 if (!thissop)
return getStrayamountcurveattrib();
2215 OP_Utils::evalOpParm(result, thissop,
"strayamountcurveattrib", cookparms.
getCookTime(), 0);
2223 if (!thissop)
return getStrayamountclumpattrib();
2225 OP_Utils::evalOpParm(result, thissop,
"strayamountclumpattrib", cookparms.
getCookTime(), 0);
2233 if (!thissop)
return getStrayamountattrib();
2235 OP_Utils::evalOpParm(result, thissop,
"strayamountattrib", cookparms.
getCookTime(), 0);
2243 if (!thissop)
return getStrayamounttexture();
2245 OP_Utils::evalOpParm(result, thissop,
"strayamounttexture", cookparms.
getCookTime(), 0);
2253 if (!thissop)
return getStrayrate();
2255 OP_Utils::evalOpParm(result, thissop,
"strayrate", cookparms.
getCookTime(), 0);
2263 if (!thissop)
return getStrayrateoverride();
2265 OP_Utils::evalOpParm(result, thissop,
"strayrateoverride", cookparms.
getCookTime(), 0);
2273 if (!thissop)
return getStrayratecurveattrib();
2275 OP_Utils::evalOpParm(result, thissop,
"strayratecurveattrib", cookparms.
getCookTime(), 0);
2283 if (!thissop)
return getStrayrateclumpattrib();
2285 OP_Utils::evalOpParm(result, thissop,
"strayrateclumpattrib", cookparms.
getCookTime(), 0);
2293 if (!thissop)
return getStrayrateattrib();
2295 OP_Utils::evalOpParm(result, thissop,
"strayrateattrib", cookparms.
getCookTime(), 0);
2303 if (!thissop)
return getStrayratetexture();
2305 OP_Utils::evalOpParm(result, thissop,
"strayratetexture", cookparms.
getCookTime(), 0);
2313 if (!thissop)
return getStrayfalloff();
2315 OP_Utils::evalOpParm(result, thissop,
"strayfalloff", cookparms.
getCookTime(), 0);
2323 if (!thissop)
return getStrayfalloffoverride();
2325 OP_Utils::evalOpParm(result, thissop,
"strayfalloffoverride", cookparms.
getCookTime(), 0);
2333 if (!thissop)
return getStrayfalloffcurveattrib();
2335 OP_Utils::evalOpParm(result, thissop,
"strayfalloffcurveattrib", cookparms.
getCookTime(), 0);
2343 if (!thissop)
return getStrayfalloffclumpattrib();
2345 OP_Utils::evalOpParm(result, thissop,
"strayfalloffclumpattrib", cookparms.
getCookTime(), 0);
2353 if (!thissop)
return getStrayfalloffattrib();
2355 OP_Utils::evalOpParm(result, thissop,
"strayfalloffattrib", cookparms.
getCookTime(), 0);
2363 if (!thissop)
return getStrayfallofftexture();
2365 OP_Utils::evalOpParm(result, thissop,
"strayfallofftexture", cookparms.
getCookTime(), 0);
2373 if (!thissop)
return getClumpprofile();
2375 OP_Utils::evalOpParm(result, thissop,
"clumpprofile", cookparms.
getCookTime(), 0);
2383 if (!thissop)
return getIterations();
2385 OP_Utils::evalOpParm(result, thissop,
"iterations", cookparms.
getCookTime(), 0);
2393 if (!thissop)
return getIterationsoverride();
2395 OP_Utils::evalOpParm(result, thissop,
"iterationsoverride", cookparms.
getCookTime(), 0);
2403 if (!thissop)
return getIterationscurveattrib();
2405 OP_Utils::evalOpParm(result, thissop,
"iterationscurveattrib", cookparms.
getCookTime(), 0);
2413 if (!thissop)
return getIterationsattrib();
2415 OP_Utils::evalOpParm(result, thissop,
"iterationsattrib", cookparms.
getCookTime(), 0);
2423 if (!thissop)
return getIterationstexture();
2425 OP_Utils::evalOpParm(result, thissop,
"iterationstexture", cookparms.
getCookTime(), 0);
2433 if (!thissop)
return getSizereduction();
2435 OP_Utils::evalOpParm(result, thissop,
"sizereduction", cookparms.
getCookTime(), 0);
2443 if (!thissop)
return getSizereductionoverride();
2445 OP_Utils::evalOpParm(result, thissop,
"sizereductionoverride", cookparms.
getCookTime(), 0);
2453 if (!thissop)
return getSizereductionattrib();
2455 OP_Utils::evalOpParm(result, thissop,
"sizereductionattrib", cookparms.
getCookTime(), 0);
2463 if (!thissop)
return getSizereductiontexture();
2465 OP_Utils::evalOpParm(result, thissop,
"sizereductiontexture", cookparms.
getCookTime(), 0);
2473 if (!thissop)
return getGoalfeedback();
2475 OP_Utils::evalOpParm(result, thissop,
"goalfeedback", cookparms.
getCookTime(), 0);
2483 if (!thissop)
return getGoalfeedbackoverride();
2485 OP_Utils::evalOpParm(result, thissop,
"goalfeedbackoverride", cookparms.
getCookTime(), 0);
2493 if (!thissop)
return getGoalfeedbackattrib();
2495 OP_Utils::evalOpParm(result, thissop,
"goalfeedbackattrib", cookparms.
getCookTime(), 0);
2503 if (!thissop)
return getGoalfeedbacktexture();
2505 OP_Utils::evalOpParm(result, thissop,
"goalfeedbacktexture", cookparms.
getCookTime(), 0);
2513 if (!thissop)
return getTightnessreduction();
2515 OP_Utils::evalOpParm(result, thissop,
"tightnessreduction", cookparms.
getCookTime(), 0);
2523 if (!thissop)
return getTightnessreductionoverride();
2525 OP_Utils::evalOpParm(result, thissop,
"tightnessreductionoverride", cookparms.
getCookTime(), 0);
2533 if (!thissop)
return getTightnessreductioncurveattrib();
2535 OP_Utils::evalOpParm(result, thissop,
"tightnessreductioncurveattrib", cookparms.
getCookTime(), 0);
2543 if (!thissop)
return getTightnessreductionattrib();
2545 OP_Utils::evalOpParm(result, thissop,
"tightnessreductionattrib", cookparms.
getCookTime(), 0);
2553 if (!thissop)
return getTightnessreductiontexture();
2555 OP_Utils::evalOpParm(result, thissop,
"tightnessreductiontexture", cookparms.
getCookTime(), 0);
2563 if (!thissop)
return getEnablecurling();
2565 OP_Utils::evalOpParm(result, thissop,
"enablecurling", cookparms.
getCookTime(), 0);
2573 if (!thissop)
return getCurlamp();
2575 OP_Utils::evalOpParm(result, thissop,
"curlamp", cookparms.
getCookTime(), 0);
2583 if (!thissop)
return getCurlampoverride();
2585 OP_Utils::evalOpParm(result, thissop,
"curlampoverride", cookparms.
getCookTime(), 0);
2593 if (!thissop)
return getCurlampcurveattrib();
2595 OP_Utils::evalOpParm(result, thissop,
"curlampcurveattrib", cookparms.
getCookTime(), 0);
2603 if (!thissop)
return getCurlampattrib();
2605 OP_Utils::evalOpParm(result, thissop,
"curlampattrib", cookparms.
getCookTime(), 0);
2613 if (!thissop)
return getCurlamptexture();
2615 OP_Utils::evalOpParm(result, thissop,
"curlamptexture", cookparms.
getCookTime(), 0);
2623 if (!thissop)
return getCurlampramp();
2625 OP_Utils::evalOpParm(result, thissop,
"curlampramp", cookparms.
getCookTime(), 0);
2633 if (!thissop)
return getCurlfreq();
2635 OP_Utils::evalOpParm(result, thissop,
"curlfreq", cookparms.
getCookTime(), 0);
2643 if (!thissop)
return getCurlfreqoverride();
2645 OP_Utils::evalOpParm(result, thissop,
"curlfreqoverride", cookparms.
getCookTime(), 0);
2653 if (!thissop)
return getCurlfreqcurveattrib();
2655 OP_Utils::evalOpParm(result, thissop,
"curlfreqcurveattrib", cookparms.
getCookTime(), 0);
2663 if (!thissop)
return getCurveattrib();
2665 OP_Utils::evalOpParm(result, thissop,
"curveattrib", cookparms.
getCookTime(), 0);
2673 if (!thissop)
return getCurlfreqattrib();
2675 OP_Utils::evalOpParm(result, thissop,
"curlfreqattrib", cookparms.
getCookTime(), 0);
2683 if (!thissop)
return getCurlfreqtexture();
2685 OP_Utils::evalOpParm(result, thissop,
"curlfreqtexture", cookparms.
getCookTime(), 0);
2693 if (!thissop)
return getCurlfreqramp();
2695 OP_Utils::evalOpParm(result, thissop,
"curlfreqramp", cookparms.
getCookTime(), 0);
2703 if (!thissop)
return getCreateclumpidattrib();
2705 OP_Utils::evalOpParm(result, thissop,
"createclumpidattrib", cookparms.
getCookTime(), 0);
2713 if (!thissop)
return getClumpidoutputattrib();
2715 OP_Utils::evalOpParm(result, thissop,
"clumpidoutputattrib", cookparms.
getCookTime(), 0);
2723 if (!thissop)
return getCreatetightnessattrib();
2725 OP_Utils::evalOpParm(result, thissop,
"createtightnessattrib", cookparms.
getCookTime(), 0);
2733 if (!thissop)
return getTightnessoutputattrib();
2735 OP_Utils::evalOpParm(result, thissop,
"tightnessoutputattrib", cookparms.
getCookTime(), 0);
2743 if (!thissop)
return getClumppointattribs();
2745 OP_Utils::evalOpParm(result, thissop,
"clumppointattribs", cookparms.
getCookTime(), 0);
2753 if (!thissop)
return getClumpprimattribs();
2755 OP_Utils::evalOpParm(result, thissop,
"clumpprimattribs", cookparms.
getCookTime(), 0);
2760 bool myLegacymasking;
2763 int64 myBlendoverride;
2770 int64 myClumpsizeoverride;
2773 bool mySearchbeyondradius;
2774 bool myClumpwithinclumps;
2778 bool myPreservelength;
2781 bool myAccuratebundling;
2785 int64 myTightnessoverride;
2791 int64 myStrayamountoverride;
2797 int64 myStrayrateoverride;
2803 int64 myStrayfalloffoverride;
2810 int64 myIterationsoverride;
2815 int64 mySizereductionoverride;
2819 int64 myGoalfeedbackoverride;
2823 int64 myTightnessreductionoverride;
2827 bool myEnablecurling;
2829 int64 myCurlampoverride;
2835 int64 myCurlfreqoverride;
2841 bool myCreateclumpidattrib;
2843 bool myCreatetightnessattrib;
UT_StringHolder opCurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getExtendtomatch() const
const UT_StringHolder & getGoalfeedbacktexture() const
static void saveData(std::ostream &os, UT_Matrix3D v)
UT_StringHolder opCurlfreqtexture(const SOP_NodeVerb::CookParms &cookparms) const
void setTightnessreductiontexture(const UT_StringHolder &val)
bool opCreatetightnessattrib(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getStrayamounttexture() const
void setBlendoverride(Blendoverride val)
Tightnessreductionoverride opTightnessreductionoverride(const SOP_NodeVerb::CookParms &cookparms) const
ParmType getNestParmType(TempIndex fieldnum) const override
fpreal64 opSizereduction(const SOP_NodeVerb::CookParms &cookparms) const
void setTightnessclumpattrib(const UT_StringHolder &val)
fpreal64 getCurlamp() const
fpreal64 getGoalfeedback() const
fpreal64 opStrayrate(const SOP_NodeVerb::CookParms &cookparms) const
void setClumppointattribs(const UT_StringHolder &val)
void setHairwidthscale(fpreal64 val)
void setShortentomatch(fpreal64 val)
fpreal64 getHairwidth() const
fpreal64 getBlend() const
bool getUseskinmask() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
void setSearchbeyondradius(bool val)
void setSizereductionattrib(const UT_StringHolder &val)
Tightnessoverride opTightnessoverride(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opIterationstexture(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opSkinmaskattrib(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getStrayfalloffclumpattrib() const
UT_StringHolder opTightnessreductioncurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opIterations(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
const UT_StringHolder & getClumpidoutputattrib() const
UT_StringHolder opCurlfreqattrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opIterationscurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
SOP_Node * getNode() const
const char * getNestParmName(TempIndex fieldnum) const override
void setTightnesstexture(const UT_StringHolder &val)
const UT_StringHolder & getIterationsattrib() const
static void loadData(UT_IStream &is, UT_Matrix2D &v)
UT_StringHolder opTightnesstexture(const SOP_NodeVerb::CookParms &cookparms) const
void setStrayfalloffattrib(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
void setClumpidoutputattrib(const UT_StringHolder &val)
UT_StringHolder opUvattrib(const SOP_NodeVerb::CookParms &cookparms) const
void copyFrom(const SOP_NodeParms *src) override
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
void setBlendtexture(const UT_StringHolder &val)
void setCurlfreq(fpreal64 val)
const UT_StringHolder & getCurlfreqtexture() const
exint bread(int32 *buffer, exint asize=1)
const UT_StringHolder & getStrayratecurveattrib() const
void setSizereductiontexture(const UT_StringHolder &val)
GT_API const UT_StringHolder time
UT_StringHolder opClumpprimattribs(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getCurlfreqcurveattrib() const
void setIterationstexture(const UT_StringHolder &val)
const UT_StringHolder & getBlendattrib() const
GLuint const GLfloat * val
const UT_StringHolder & getCurlamptexture() const
const UT_StringHolder & getTightnessattrib() const
const UT_StringHolder & getTightnessclumpattrib() const
void setCurlampattrib(const UT_StringHolder &val)
UT_StringHolder opStrayamountcurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setStrayfalloffoverride(Strayfalloffoverride val)
const UT_StringHolder & getStrayfalloffattrib() const
UT_StringHolder opStrayratetexture(const SOP_NodeVerb::CookParms &cookparms) const
void setSizereduction(fpreal64 val)
void buildFromOp(const SOP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
SYS_FORCE_INLINE const char * buffer() const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
void setTightnessattrib(const UT_StringHolder &val)
const SOP_GraphProxy * graph() const
const UT_StringHolder & getClumpprimattribs() const
void setIterationsoverride(Iterationsoverride val)
bool getPreservelength() const
const UT_StringHolder & getSizereductiontexture() const
static void saveData(std::ostream &os, bool v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
An output stream object that owns its own string buffer storage.
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
void setSizereductionoverride(Sizereductionoverride val)
Curlfreqoverride getCurlfreqoverride() const
const UT_StringHolder & getTightnesscurveattrib() const
fpreal64 getStrayfalloff() const
void setCurlfreqramp(UT_SharedPtr< UT_Ramp > val)
fpreal64 opStrayamount(const SOP_NodeVerb::CookParms &cookparms) const
Tightnessoverride getTightnessoverride() const
Blendoverride opBlendoverride(const SOP_NodeVerb::CookParms &cookparms) const
void setStrayfalloffcurveattrib(const UT_StringHolder &val)
static void saveData(std::ostream &os, UT_Vector3D v)
Iterationsoverride getIterationsoverride() const
UT_StringHolder opClumppointattribs(const SOP_NodeVerb::CookParms &cookparms) const
void setCurlampoverride(Curlampoverride val)
UT_StringHolder opClumpidoutputattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setCurlamp(fpreal64 val)
UT_StringHolder opStrayfalloffclumpattrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, int64 &v)
void setAccuratebundling(bool val)
const UT_StringHolder & getCurveattrib() const
fpreal64 getClumpsize() const
UT_SharedPtr< UT_Ramp > getClumpprofile() const
UT_SharedPtr< UT_Ramp > opCurlampramp(const SOP_NodeVerb::CookParms &cookparms) const
Clumpsizeoverride opClumpsizeoverride(const SOP_NodeVerb::CookParms &cookparms) const
Goalfeedbackoverride getGoalfeedbackoverride() const
void setStrayamount(fpreal64 val)
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
UT_StringHolder opStrayfalloffcurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opStrayfalloffattrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector3D &v)
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
const UT_StringHolder & getTightnesstexture() const
void setClumpprimattribs(const UT_StringHolder &val)
fpreal64 opHairwidthscale(const SOP_NodeVerb::CookParms &cookparms) const
void setStrayamountoverride(Strayamountoverride val)
fpreal64 getCrossoverrate() const
void setCrossoverrate(fpreal64 val)
void setBlend(fpreal64 val)
void setUseskinmask(bool val)
void setStrayamountclumpattrib(const UT_StringHolder &val)
UT_StringHolder opTightnessoutputattrib(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
UT_SharedPtr< UT_Ramp > getCurlfreqramp() const
Method opMethod(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector4D &v)
static void loadData(UT_IStream &is, UT_Vector3I &v)
const UT_StringHolder & getBlendtexture() const
const UT_StringHolder & getCurlampcurveattrib() const
fpreal64 getStrayrate() const
Blendoverride getBlendoverride() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
const UT_StringHolder & getUvattrib() const
static void saveData(std::ostream &os, UT_StringHolder s)
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
bool getEnablecurling() const
fpreal64 opCurlamp(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opStrayrateclumpattrib(const SOP_NodeVerb::CookParms &cookparms) const
bool load(UT_IStream &is)
UT_StringHolder opStrayrateattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setTightnesscurveattrib(const UT_StringHolder &val)
bool getLegacymasking() const
static void saveData(std::ostream &os, UT_Matrix4D v)
fpreal64 opStrayfalloff(const SOP_NodeVerb::CookParms &cookparms) const
Strayfalloffoverride opStrayfalloffoverride(const SOP_NodeVerb::CookParms &cookparms) const
void setGoalfeedback(fpreal64 val)
Sizereductionoverride getSizereductionoverride() const
void setCurlfreqattrib(const UT_StringHolder &val)
const UT_StringHolder & getSkinmaskattrib() const
void setStrayrateoverride(Strayrateoverride val)
const UT_StringHolder & getTightnessreductioncurveattrib() const
bool opLegacymasking(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseskinmask(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getIterationscurveattrib() const
UT_StringHolder opGoalfeedbackattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setLegacymasking(bool val)
void setMethod(Method val)
fpreal64 getTightnessreduction() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
SYS_FORCE_INLINE const char * buffer() const
void setStrayratetexture(const UT_StringHolder &val)
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
void setCreateclumpidattrib(bool val)
static void saveData(std::ostream &os, UT_Matrix2D v)
const UT_StringHolder & getStrayamountclumpattrib() const
UT_StringHolder opTightnessattrib(const SOP_NodeVerb::CookParms &cookparms) const
Strayfalloffoverride getStrayfalloffoverride() const
fpreal64 opExtendtomatch(const SOP_NodeVerb::CookParms &cookparms) const
GLint GLenum GLsizei GLint GLsizei const void * data
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
UT_StringHolder opStrayamounttexture(const SOP_NodeVerb::CookParms &cookparms) const
bool getAccuratebundling() const
UT_StringHolder opClumpsizetexture(const SOP_NodeVerb::CookParms &cookparms) const
void setStrayamounttexture(const UT_StringHolder &val)
const UT_StringHolder & getTightnessreductionattrib() const
Goalfeedbackoverride opGoalfeedbackoverride(const SOP_NodeVerb::CookParms &cookparms) const
void setIterations(fpreal64 val)
UT_StringHolder opGoalfeedbacktexture(const SOP_NodeVerb::CookParms &cookparms) const
Strayrateoverride opStrayrateoverride(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opTightnessreductionattrib(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getStrayfallofftexture() const
void setTightnessreduction(fpreal64 val)
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
fpreal64 opBlend(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getIterationstexture() const
const UT_StringHolder & getClumpsizetexture() const
bool opAccuratebundling(const SOP_NodeVerb::CookParms &cookparms) const
bool opPreservelength(const SOP_NodeVerb::CookParms &cookparms) const
Clumpsizeoverride getClumpsizeoverride() const
const UT_StringHolder & getCurlfreqattrib() const
UT_StringHolder opIterationsattrib(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getCurlampattrib() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
const UT_StringHolder & getStrayrateattrib() const
Curlampoverride getCurlampoverride() const
void setGoalfeedbackattrib(const UT_StringHolder &val)
UT_StringHolder opStrayfallofftexture(const SOP_NodeVerb::CookParms &cookparms) const
void setCurlfreqtexture(const UT_StringHolder &val)
void setTightness(fpreal64 val)
UT_StringHolder opSizereductionattrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opTightnesscurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Matrix3D &v)
bool opClumpwithinclumps(const SOP_NodeVerb::CookParms &cookparms) const
Curlampoverride opCurlampoverride(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
UT_StringHolder opSizereductiontexture(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getTightnessreductiontexture() const
void setClumpsizeattrib(const UT_StringHolder &val)
UT_SharedPtr< UT_Ramp > opClumpprofile(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
UT_StringHolder opCurlampattrib(const SOP_NodeVerb::CookParms &cookparms) const
void saveBinary(std::ostream &os) const
Save string to binary stream.
static void loadData(UT_IStream &is, UT_StringHolder &v)
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
fpreal64 getShortentomatch() const
void setBlendattrib(const UT_StringHolder &val)
void setExtendtomatch(fpreal64 val)
GT_API const UT_StringHolder version
const UT_StringHolder & getGoalfeedbackattrib() const
DEP_MicroNode * depnode() const
void setStrayfalloff(fpreal64 val)
Strayamountoverride getStrayamountoverride() const
const UT_StringHolder & getStrayamountattrib() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
void setPreservelength(bool val)
Tightnessreductionoverride getTightnessreductionoverride() const
const UT_StringHolder & getStrayamountcurveattrib() const
void setEnablecurling(bool val)
void setHairwidth(fpreal64 val)
fpreal64 getCurlfreq() const
UT_StringHolder opCurlamptexture(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, bool &v)
UT_StringHolder opCurlampcurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setStrayratecurveattrib(const UT_StringHolder &val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
void setSeed(fpreal64 val)
exint getNestNumParms(TempIndex idx) const override
Curlfreqoverride opCurlfreqoverride(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opHairwidth(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getStrayrateclumpattrib() const
fpreal64 opGoalfeedback(const SOP_NodeVerb::CookParms &cookparms) const
void setClumpwithinclumps(bool val)
const UT_StringHolder & getStrayratetexture() const
bool operator!=(const SOP_HairClumpParms &src) const
Strayamountoverride opStrayamountoverride(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opTightnessreduction(const SOP_NodeVerb::CookParms &cookparms) const
Utility class for containing a color ramp.
UT_StringHolder opTightnessclumpattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setTightnessreductionoverride(Tightnessreductionoverride val)
fpreal64 opSeed(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getIterations() const
static void loadData(UT_IStream &is, UT_Matrix4D &v)
static void saveData(std::ostream &os, UT_Vector2D v)
static void loadData(UT_IStream &is, fpreal64 &v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
GLdouble GLdouble GLdouble r
static void saveData(std::ostream &os, UT_Vector4D v)
void save(std::ostream &os) const
void setTightnessreductionattrib(const UT_StringHolder &val)
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
static void loadData(UT_IStream &is, UT_Vector4I &v)
void setClumpprofile(UT_SharedPtr< UT_Ramp > val)
fpreal64 opCurlfreq(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opStrayamountattrib(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
fpreal64 opShortentomatch(const SOP_NodeVerb::CookParms &cookparms) const
void setGoalfeedbacktexture(const UT_StringHolder &val)
void setCurlfreqcurveattrib(const UT_StringHolder &val)
UT_SharedPtr< UT_Ramp > opCurlfreqramp(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getClumppointattribs() const
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
UT_SharedPtr< UT_Ramp > getCurlampramp() const
static void saveData(std::ostream &os, int64 v)
const UT_StringHolder & getClumpsizeattrib() const
bool getCreateclumpidattrib() const
UT_StringHolder opTightnessreductiontexture(const SOP_NodeVerb::CookParms &cookparms) const
void setBlendcurveattrib(const UT_StringHolder &val)
fpreal getCookTime() const
UT_StringHolder opStrayratecurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, fpreal64 v)
void setCurlampramp(UT_SharedPtr< UT_Ramp > val)
void setSkinmaskattrib(const UT_StringHolder &val)
UT_StringHolder opStrayamountclumpattrib(const SOP_NodeVerb::CookParms &cookparms) const
Sizereductionoverride opSizereductionoverride(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getStrayfalloffcurveattrib() const
Iterationsoverride opIterationsoverride(const SOP_NodeVerb::CookParms &cookparms) const
const char * findChar(int c) const
bool getClumpwithinclumps() const
bool getSearchbeyondradius() const
void setIterationscurveattrib(const UT_StringHolder &val)
void setStrayrate(fpreal64 val)
bool opEnablecurling(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
fpreal64 getStrayamount() const
void setClumpsize(fpreal64 val)
void setStrayrateclumpattrib(const UT_StringHolder &val)
fpreal64 getSizereduction() const
void setTightnessoutputattrib(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
Tightnessreductionoverride
UT_StringHolder opCurlfreqcurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getSizereductionattrib() const
fpreal64 opClumpsize(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getHairwidthscale() const
static void loadData(UT_IStream &is, UT_Vector2I &v)
bool operator==(const SOP_HairClumpParms &src) const
const UT_StringHolder & getBlendcurveattrib() const
UT_StringHolder opBlendtexture(const SOP_NodeVerb::CookParms &cookparms) const
void setTightnessoverride(Tightnessoverride val)
void setStrayfallofftexture(const UT_StringHolder &val)
void setCreatetightnessattrib(bool val)
UT_StringHolder opBlendcurveattrib(const SOP_NodeVerb::CookParms &cookparms) const
bool opCreateclumpidattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setCurlfreqoverride(Curlfreqoverride val)
UT_StringHolder opBlendattrib(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opTightness(const SOP_NodeVerb::CookParms &cookparms) const
void setCurlampcurveattrib(const UT_StringHolder &val)
void setUvattrib(const UT_StringHolder &val)
GLsizei const GLfloat * value
fpreal64 getTightness() const
bool getCreatetightnessattrib() const
void loadFromOpSubclass(const LoadParms &loadparms) override
const OP_Context & context() const
void setStrayrateattrib(const UT_StringHolder &val)
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
void setStrayfalloffclumpattrib(const UT_StringHolder &val)
UT_StringHolder opClumpsizeattrib(const SOP_NodeVerb::CookParms &cookparms) const
void setClumpsizeoverride(Clumpsizeoverride val)
void setIterationsattrib(const UT_StringHolder &val)
bool opSearchbeyondradius(const SOP_NodeVerb::CookParms &cookparms) const
void setTightnessreductioncurveattrib(const UT_StringHolder &val)
SYS_FORCE_INLINE bool isstring() const
fpreal64 opCrossoverrate(const SOP_NodeVerb::CookParms &cookparms) const
void setStrayamountcurveattrib(const UT_StringHolder &val)
void setClumpsizetexture(const UT_StringHolder &val)
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
Strayrateoverride getStrayrateoverride() const
void setGoalfeedbackoverride(Goalfeedbackoverride val)
static void saveData(std::ostream &os, PRM_DataItemHandle s)
const UT_StringHolder & getTightnessoutputattrib() const
~SOP_HairClumpParms() override
void setCurveattrib(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
void setStrayamountattrib(const UT_StringHolder &val)
void setCurlamptexture(const UT_StringHolder &val)