23 namespace SOP_VolumeVisualizationEnums
35 using namespace UT::Literal;
54 using namespace UT::Literal;
73 using namespace UT::Literal;
92 using namespace UT::Literal;
113 using namespace UT::Literal;
114 switch (enum_value) {
139 mySetambientcolors =
false;
142 mySetambientshadows =
false;
143 myAmbientshadows = 1;
144 mySetshadowcolor =
false;
149 mySetambientmapsize =
false;
150 myAmbientmapsize = 0.5;
151 mySetambientsteprate =
false;
152 myAmbientsteprate = 4;
153 myDensityfield =
"density"_UTsh;
154 myDensityrampmode = 1;
157 myCdrangeoverride =
false;
162 myEmitfield =
""_UTsh;
163 myEmitrangeoverride =
false;
167 myEmitcdfield =
""_UTsh;
168 myEmitcdrampmode = 1;
169 myEmitcdramp =
UT_Ramp::buildFromDefault(
"1pos ( 0 ) 1c ( 0 0 0 ) 1interp ( linear ) 2pos ( 1 ) 2c ( 1 0.325 0.1 ) 2interp ( linear )");
170 myEmitcdfieldscale = 1;
171 myEmitcdtemperature0 = 0;
172 myEmitcdtemperature = 5000;
173 myEmitcdtonemap =
true;
174 myEmitcdadaptation = 0.15;
176 myEnablescatter =
false;
177 myExtinctionratio = 1;
178 myScatteringiter = 25;
179 myEmitcdrangeoverride =
false;
193 if (myVisMode != src.myVisMode)
return false;
194 if (myRangemin != src.myRangemin)
return false;
195 if (myRangemax != src.myRangemax)
return false;
196 if (myDensityscale != src.myDensityscale)
return false;
197 if (myShadowscale != src.myShadowscale)
return false;
198 if (mySetambientcolors != src.mySetambientcolors)
return false;
199 if (myAmbientexposed != src.myAmbientexposed)
return false;
200 if (myAmbientoccluded != src.myAmbientoccluded)
return false;
201 if (mySetambientshadows != src.mySetambientshadows)
return false;
202 if (myAmbientshadows != src.myAmbientshadows)
return false;
203 if (mySetshadowcolor != src.mySetshadowcolor)
return false;
204 if (myShadowcolor != src.myShadowcolor)
return false;
205 if (myUseDict != src.myUseDict)
return false;
206 if (mySetmaxres != src.mySetmaxres)
return false;
207 if (myMaxres != src.myMaxres)
return false;
208 if (mySetambientmapsize != src.mySetambientmapsize)
return false;
209 if (myAmbientmapsize != src.myAmbientmapsize)
return false;
210 if (mySetambientsteprate != src.mySetambientsteprate)
return false;
211 if (myAmbientsteprate != src.myAmbientsteprate)
return false;
212 if (myDensityfield != src.myDensityfield)
return false;
213 if (myDensityrampmode != src.myDensityrampmode)
return false;
214 if (myDensityramp != src.myDensityramp)
215 {
if (!myDensityramp || !src.myDensityramp || !(*myDensityramp == *src.myDensityramp))
return false; }
216 if (myCdfield != src.myCdfield)
return false;
217 if (myCdrangeoverride != src.myCdrangeoverride)
return false;
218 if (myCdrange != src.myCdrange)
return false;
219 if (myCdrampmode != src.myCdrampmode)
return false;
220 if (myCdramp != src.myCdramp)
221 {
if (!myCdramp || !src.myCdramp || !(*myCdramp == *src.myCdramp))
return false; }
222 if (myEmitscale != src.myEmitscale)
return false;
223 if (myEmitfield != src.myEmitfield)
return false;
224 if (myEmitrangeoverride != src.myEmitrangeoverride)
return false;
225 if (myEmitrange != src.myEmitrange)
return false;
226 if (myEmitrampmode != src.myEmitrampmode)
return false;
227 if (myEmitramp != src.myEmitramp)
228 {
if (!myEmitramp || !src.myEmitramp || !(*myEmitramp == *src.myEmitramp))
return false; }
229 if (myEmitcdfield != src.myEmitcdfield)
return false;
230 if (myEmitcdrampmode != src.myEmitcdrampmode)
return false;
231 if (myEmitcdramp != src.myEmitcdramp)
232 {
if (!myEmitcdramp || !src.myEmitcdramp || !(*myEmitcdramp == *src.myEmitcdramp))
return false; }
233 if (myEmitcdfieldscale != src.myEmitcdfieldscale)
return false;
234 if (myEmitcdtemperature0 != src.myEmitcdtemperature0)
return false;
235 if (myEmitcdtemperature != src.myEmitcdtemperature)
return false;
236 if (myEmitcdtonemap != src.myEmitcdtonemap)
return false;
237 if (myEmitcdadaptation != src.myEmitcdadaptation)
return false;
238 if (myEmitcdburn != src.myEmitcdburn)
return false;
239 if (myEnablescatter != src.myEnablescatter)
return false;
240 if (myExtinctionratio != src.myExtinctionratio)
return false;
241 if (myScatteringiter != src.myScatteringiter)
return false;
242 if (myEmitcdrangeoverride != src.myEmitcdrangeoverride)
return false;
243 if (myEmitcdrange != src.myEmitcdrange)
return false;
266 graph->
evalOpParm(myVisMode, nodeidx,
"vismode", time, graph->
isDirect()?
nullptr:depnode);
269 graph->
evalOpParm(myRangemin, nodeidx,
"rangemin", time, graph->
isDirect()?
nullptr:depnode);
272 graph->
evalOpParm(myRangemax, nodeidx,
"rangemax", time, graph->
isDirect()?
nullptr:depnode);
275 graph->
evalOpParm(myDensityscale, nodeidx,
"densityscale", time, graph->
isDirect()?
nullptr:depnode);
278 graph->
evalOpParm(myShadowscale, nodeidx,
"shadowscale", time, graph->
isDirect()?
nullptr:depnode);
279 mySetambientcolors =
false;
281 graph->
evalOpParm(mySetambientcolors, nodeidx,
"setambientcolors", time, graph->
isDirect()?
nullptr:depnode);
283 if (
true && ( (
true&&!(((getSetambientcolors()==0)))) ) )
284 graph->
evalOpParm(myAmbientexposed, nodeidx,
"ambientexposed", time, graph->
isDirect()?
nullptr:depnode);
286 if (
true && ( (
true&&!(((getSetambientcolors()==0)))) ) )
287 graph->
evalOpParm(myAmbientoccluded, nodeidx,
"ambientoccluded", time, graph->
isDirect()?
nullptr:depnode);
288 mySetambientshadows =
false;
290 graph->
evalOpParm(mySetambientshadows, nodeidx,
"setambientshadows", time, graph->
isDirect()?
nullptr:depnode);
291 myAmbientshadows = 1;
292 if (
true && ( (
true&&!(((getSetambientshadows()==0)))) ) )
293 graph->
evalOpParm(myAmbientshadows, nodeidx,
"ambientshadows", time, graph->
isDirect()?
nullptr:depnode);
294 mySetshadowcolor =
false;
296 graph->
evalOpParm(mySetshadowcolor, nodeidx,
"setshadowcolor", time, graph->
isDirect()?
nullptr:depnode);
298 if (
true && ( (
true&&!(((getSetshadowcolor()==0)))) ) )
299 graph->
evalOpParm(myShadowcolor, nodeidx,
"shadowcolor", time, graph->
isDirect()?
nullptr:depnode);
302 graph->
evalOpParm(myUseDict, nodeidx,
"usedict", time, graph->
isDirect()?
nullptr:depnode);
305 graph->
evalOpParm(mySetmaxres, nodeidx,
"setmaxres", time, graph->
isDirect()?
nullptr:depnode);
307 if (
true && ( (
true&&!(((getSetmaxres()==0)))) ) )
308 graph->
evalOpParm(myMaxres, nodeidx,
"maxres", time, graph->
isDirect()?
nullptr:depnode);
309 mySetambientmapsize =
false;
311 graph->
evalOpParm(mySetambientmapsize, nodeidx,
"setambientmapsize", time, graph->
isDirect()?
nullptr:depnode);
312 myAmbientmapsize = 0.5;
313 if (
true && ( (
true&&!(((getSetambientmapsize()==0)))) ) )
314 graph->
evalOpParm(myAmbientmapsize, nodeidx,
"ambientmapsize", time, graph->
isDirect()?
nullptr:depnode);
315 mySetambientsteprate =
false;
317 graph->
evalOpParm(mySetambientsteprate, nodeidx,
"setambientsteprate", time, graph->
isDirect()?
nullptr:depnode);
318 myAmbientsteprate = 4;
319 if (
true && ( (
true&&!(((getSetambientsteprate()==0)))) ) )
320 graph->
evalOpParm(myAmbientsteprate, nodeidx,
"ambientsteprate", time, graph->
isDirect()?
nullptr:depnode);
321 myDensityfield =
"density"_UTsh;
323 graph->
evalOpParm(myDensityfield, nodeidx,
"densityfield", time, graph->
isDirect()?
nullptr:depnode);
324 myDensityrampmode = 1;
326 graph->
evalOpParm(myDensityrampmode, nodeidx,
"densityrampmode", time, graph->
isDirect()?
nullptr:depnode);
328 if (
true && ( (
true&&!(((
int64(getDensityrampmode())==0)))) ) )
329 graph->
evalOpParm(myDensityramp, nodeidx,
"densityramp", time, graph->
isDirect()?
nullptr:depnode);
332 graph->
evalOpParm(myCdfield, nodeidx,
"cdfield", time, graph->
isDirect()?
nullptr:depnode);
333 myCdrangeoverride =
false;
335 graph->
evalOpParm(myCdrangeoverride, nodeidx,
"cdrangeoverride", time, graph->
isDirect()?
nullptr:depnode);
337 if (
true && ( (
true&&!(((getCdrangeoverride()==0)))) ) )
338 graph->
evalOpParm(myCdrange, nodeidx,
"cdrange", time, graph->
isDirect()?
nullptr:depnode);
341 graph->
evalOpParm(myCdrampmode, nodeidx,
"cdrampmode", time, graph->
isDirect()?
nullptr:depnode);
343 if (
true && ( (
true&&!(((
int64(getCdrampmode())==0)))) ) )
344 graph->
evalOpParm(myCdramp, nodeidx,
"cdramp", time, graph->
isDirect()?
nullptr:depnode);
347 graph->
evalOpParm(myEmitscale, nodeidx,
"emitscale", time, graph->
isDirect()?
nullptr:depnode);
348 myEmitfield =
""_UTsh;
350 graph->
evalOpParm(myEmitfield, nodeidx,
"emitfield", time, graph->
isDirect()?
nullptr:depnode);
351 myEmitrangeoverride =
false;
353 graph->
evalOpParm(myEmitrangeoverride, nodeidx,
"emitrangeoverride", time, graph->
isDirect()?
nullptr:depnode);
355 if (
true && ( (
true&&!(((getEmitrangeoverride()==0)))) ) )
356 graph->
evalOpParm(myEmitrange, nodeidx,
"emitrange", time, graph->
isDirect()?
nullptr:depnode);
359 graph->
evalOpParm(myEmitrampmode, nodeidx,
"emitrampmode", time, graph->
isDirect()?
nullptr:depnode);
361 if (
true && ( (
true&&!(((
int64(getEmitrampmode())==0)))) ) )
362 graph->
evalOpParm(myEmitramp, nodeidx,
"emitramp", time, graph->
isDirect()?
nullptr:depnode);
363 myEmitcdfield =
""_UTsh;
365 graph->
evalOpParm(myEmitcdfield, nodeidx,
"emitcdfield", time, graph->
isDirect()?
nullptr:depnode);
366 myEmitcdrampmode = 1;
368 graph->
evalOpParm(myEmitcdrampmode, nodeidx,
"emitcdrampmode", time, graph->
isDirect()?
nullptr:depnode);
369 myEmitcdramp =
UT_Ramp::buildFromDefault(
"1pos ( 0 ) 1c ( 0 0 0 ) 1interp ( linear ) 2pos ( 1 ) 2c ( 1 0.325 0.1 ) 2interp ( linear )");
370 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())==0))||((
int64(getEmitcdrampmode())==3))||((
int64(getEmitcdrampmode())==4)))) ) )
371 graph->
evalOpParm(myEmitcdramp, nodeidx,
"emitcdramp", time, graph->
isDirect()?
nullptr:depnode);
372 myEmitcdfieldscale = 1;
373 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())!=3)&&(
int64(getEmitcdrampmode())!=4)))) ) )
374 graph->
evalOpParm(myEmitcdfieldscale, nodeidx,
"emitcdfieldscale", time, graph->
isDirect()?
nullptr:depnode);
375 myEmitcdtemperature0 = 0;
376 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())!=3)&&(
int64(getEmitcdrampmode())!=4)))) ) )
377 graph->
evalOpParm(myEmitcdtemperature0, nodeidx,
"emitcdtemperature0", time, graph->
isDirect()?
nullptr:depnode);
378 myEmitcdtemperature = 5000;
379 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())!=3)&&(
int64(getEmitcdrampmode())!=4)))) ) )
380 graph->
evalOpParm(myEmitcdtemperature, nodeidx,
"emitcdtemperature", time, graph->
isDirect()?
nullptr:depnode);
381 myEmitcdtonemap =
true;
382 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())!=3)))) ) )
383 graph->
evalOpParm(myEmitcdtonemap, nodeidx,
"emitcdtonemap", time, graph->
isDirect()?
nullptr:depnode);
384 myEmitcdadaptation = 0.15;
385 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())!=3))||((getEmitcdtonemap()==0)))) ) )
386 graph->
evalOpParm(myEmitcdadaptation, nodeidx,
"emitcdadaptation", time, graph->
isDirect()?
nullptr:depnode);
388 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())!=3))||((getEmitcdtonemap()==0)))) ) )
389 graph->
evalOpParm(myEmitcdburn, nodeidx,
"emitcdburn", time, graph->
isDirect()?
nullptr:depnode);
390 myEnablescatter =
false;
392 graph->
evalOpParm(myEnablescatter, nodeidx,
"enablescatter", time, graph->
isDirect()?
nullptr:depnode);
393 myExtinctionratio = 1;
394 if (
true && ( (
true&&!(((getEnablescatter()==0)))) ) )
395 graph->
evalOpParm(myExtinctionratio, nodeidx,
"extinctionratio", time, graph->
isDirect()?
nullptr:depnode);
396 myScatteringiter = 25;
397 if (
true && ( (
true&&!(((getEnablescatter()==0)))) ) )
398 graph->
evalOpParm(myScatteringiter, nodeidx,
"scatteringiter", time, graph->
isDirect()?
nullptr:depnode);
399 myEmitcdrangeoverride =
false;
400 if (
true && ( (
true&&!(((
int64(getEmitcdrampmode())==3))||((
int64(getEmitcdrampmode())==4)))) ) )
401 graph->
evalOpParm(myEmitcdrangeoverride, nodeidx,
"emitcdrangeoverride", time, graph->
isDirect()?
nullptr:depnode);
403 if (
true && ( (
true&&!(((getEmitcdrangeoverride()==0))||((
int64(getEmitcdrampmode())==3))||((
int64(getEmitcdrampmode())==4)))) ) )
404 graph->
evalOpParm(myEmitcdrange, nodeidx,
"emitcdrange", time, graph->
isDirect()?
nullptr:depnode);
420 template <
typename T>
427 if (idx.
size() != instance.
size()+1)
432 coerceValue(value, myVisMode);
435 coerceValue(value, myRangemin);
438 coerceValue(value, myRangemax);
441 coerceValue(value, myDensityscale);
444 coerceValue(value, myShadowscale);
447 coerceValue(value, mySetambientcolors);
450 coerceValue(value, myAmbientexposed);
453 coerceValue(value, myAmbientoccluded);
456 coerceValue(value, mySetambientshadows);
459 coerceValue(value, myAmbientshadows);
462 coerceValue(value, mySetshadowcolor);
465 coerceValue(value, myShadowcolor);
468 coerceValue(value, myUseDict);
471 coerceValue(value, mySetmaxres);
474 coerceValue(value, myMaxres);
477 coerceValue(value, mySetambientmapsize);
480 coerceValue(value, myAmbientmapsize);
483 coerceValue(value, mySetambientsteprate);
486 coerceValue(value, myAmbientsteprate);
489 coerceValue(value, myDensityfield);
492 coerceValue(value, myDensityrampmode);
495 coerceValue(value, myDensityramp);
498 coerceValue(value, myCdfield);
501 coerceValue(value, myCdrangeoverride);
504 coerceValue(value, myCdrange);
507 coerceValue(value, myCdrampmode);
510 coerceValue(value, myCdramp);
513 coerceValue(value, myEmitscale);
516 coerceValue(value, myEmitfield);
519 coerceValue(value, myEmitrangeoverride);
522 coerceValue(value, myEmitrange);
525 coerceValue(value, myEmitrampmode);
528 coerceValue(value, myEmitramp);
531 coerceValue(value, myEmitcdfield);
534 coerceValue(value, myEmitcdrampmode);
537 coerceValue(value, myEmitcdramp);
540 coerceValue(value, myEmitcdfieldscale);
543 coerceValue(value, myEmitcdtemperature0);
546 coerceValue(value, myEmitcdtemperature);
549 coerceValue(value, myEmitcdtonemap);
552 coerceValue(value, myEmitcdadaptation);
555 coerceValue(value, myEmitcdburn);
558 coerceValue(value, myEnablescatter);
561 coerceValue(value, myExtinctionratio);
564 coerceValue(value, myScatteringiter);
567 coerceValue(value, myEmitcdrangeoverride);
570 coerceValue(value, myEmitcdrange);
588 { doGetParmValue(idx, instance, value); }
590 { doGetParmValue(idx, instance, value); }
592 { doGetParmValue(idx, instance, value); }
594 { doGetParmValue(idx, instance, value); }
596 { doGetParmValue(idx, instance, value); }
598 { doGetParmValue(idx, instance, value); }
600 { doGetParmValue(idx, instance, value); }
602 { doGetParmValue(idx, instance, value); }
604 { doGetParmValue(idx, instance, value); }
606 { doGetParmValue(idx, instance, value); }
608 { doGetParmValue(idx, instance, value); }
610 template <
typename T>
617 if (idx.
size() != instance.
size()+1)
622 coerceValue(myVisMode, clampMinValue(0, clampMaxValue(2, value ) ));
625 coerceValue(myRangemin, ( ( value ) ));
628 coerceValue(myRangemax, ( ( value ) ));
631 coerceValue(myDensityscale, clampMinValue(0, ( value ) ));
634 coerceValue(myShadowscale, clampMinValue(0, ( value ) ));
637 coerceValue(mySetambientcolors, ( ( value ) ));
640 coerceValue(myAmbientexposed, clampMinValue(0, ( value ) ));
643 coerceValue(myAmbientoccluded, clampMinValue(0, ( value ) ));
646 coerceValue(mySetambientshadows, ( ( value ) ));
649 coerceValue(myAmbientshadows, clampMinValue(0, ( value ) ));
652 coerceValue(mySetshadowcolor, ( ( value ) ));
655 coerceValue(myShadowcolor, clampMinValue(0, clampMaxValue(1, value ) ));
658 coerceValue(myUseDict, ( ( value ) ));
661 coerceValue(mySetmaxres, ( ( value ) ));
664 coerceValue(myMaxres, clampMinValue(1, ( value ) ));
667 coerceValue(mySetambientmapsize, ( ( value ) ));
670 coerceValue(myAmbientmapsize, clampMinValue(0.1, clampMaxValue(1, value ) ));
673 coerceValue(mySetambientsteprate, ( ( value ) ));
676 coerceValue(myAmbientsteprate, clampMinValue(1, clampMaxValue(10, value ) ));
679 coerceValue(myDensityfield, ( ( value ) ));
682 coerceValue(myDensityrampmode, clampMinValue(0, clampMaxValue(2, value ) ));
685 coerceValue(myDensityramp, clampMinValue(1, ( value ) ));
688 coerceValue(myCdfield, ( ( value ) ));
691 coerceValue(myCdrangeoverride, ( ( value ) ));
694 coerceValue(myCdrange, ( ( value ) ));
697 coerceValue(myCdrampmode, clampMinValue(0, clampMaxValue(2, value ) ));
700 coerceValue(myCdramp, clampMinValue(1, ( value ) ));
703 coerceValue(myEmitscale, clampMinValue(0, ( value ) ));
706 coerceValue(myEmitfield, ( ( value ) ));
709 coerceValue(myEmitrangeoverride, ( ( value ) ));
712 coerceValue(myEmitrange, ( ( value ) ));
715 coerceValue(myEmitrampmode, clampMinValue(0, clampMaxValue(2, value ) ));
718 coerceValue(myEmitramp, clampMinValue(1, ( value ) ));
721 coerceValue(myEmitcdfield, ( ( value ) ));
724 coerceValue(myEmitcdrampmode, clampMinValue(0, clampMaxValue(4, value ) ));
727 coerceValue(myEmitcdramp, clampMinValue(1, ( value ) ));
730 coerceValue(myEmitcdfieldscale, ( ( value ) ));
733 coerceValue(myEmitcdtemperature0, clampMinValue(0, ( value ) ));
736 coerceValue(myEmitcdtemperature, clampMinValue(350, ( value ) ));
739 coerceValue(myEmitcdtonemap, ( ( value ) ));
742 coerceValue(myEmitcdadaptation, clampMinValue(0, ( value ) ));
745 coerceValue(myEmitcdburn, ( ( value ) ));
748 coerceValue(myEnablescatter, ( ( value ) ));
751 coerceValue(myExtinctionratio, clampMinValue(0, clampMaxValue(1, value ) ));
754 coerceValue(myScatteringiter, clampMinValue(1, ( value ) ));
757 coerceValue(myEmitcdrangeoverride, ( ( value ) ));
760 coerceValue(myEmitcdrange, ( ( value ) ));
767 { doSetParmValue(idx, instance, value); }
769 { doSetParmValue(idx, instance, value); }
771 { doSetParmValue(idx, instance, value); }
773 { doSetParmValue(idx, instance, value); }
775 { doSetParmValue(idx, instance, value); }
777 { doSetParmValue(idx, instance, value); }
779 { doSetParmValue(idx, instance, value); }
781 { doSetParmValue(idx, instance, value); }
783 { doSetParmValue(idx, instance, value); }
785 { doSetParmValue(idx, instance, value); }
787 { doSetParmValue(idx, instance, value); }
803 if (fieldnum.
size() < 1)
814 return "densityscale";
816 return "shadowscale";
818 return "setambientcolors";
820 return "ambientexposed";
822 return "ambientoccluded";
824 return "setambientshadows";
826 return "ambientshadows";
828 return "setshadowcolor";
830 return "shadowcolor";
838 return "setambientmapsize";
840 return "ambientmapsize";
842 return "setambientsteprate";
844 return "ambientsteprate";
846 return "densityfield";
848 return "densityrampmode";
850 return "densityramp";
854 return "cdrangeoverride";
866 return "emitrangeoverride";
870 return "emitrampmode";
874 return "emitcdfield";
876 return "emitcdrampmode";
880 return "emitcdfieldscale";
882 return "emitcdtemperature0";
884 return "emitcdtemperature";
886 return "emitcdtonemap";
888 return "emitcdadaptation";
892 return "enablescatter";
894 return "extinctionratio";
896 return "scatteringiter";
898 return "emitcdrangeoverride";
900 return "emitcdrange";
908 if (fieldnum.
size() < 1)
909 return PARM_UNSUPPORTED;
1001 return PARM_INTEGER;
1003 return PARM_INTEGER;
1005 return PARM_VECTOR2;
1008 return PARM_UNSUPPORTED;
1013 { is.
bread(&v, 1); }
1044 loadData(is, rampdata);
1062 int typelen = colon - data.
buffer();
1074 { UTwrite(os, &v); }
1076 {
int64 iv =
v; UTwrite(os, &iv); }
1078 { UTwrite<fpreal64>(os, &
v); }
1080 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1082 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1083 UTwrite<fpreal64>(os, &v.
z()); }
1085 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1086 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1098 if (s) s->save(ostr);
1099 result = ostr.
str();
1100 saveData(os, result);
1107 ostr << s->getDataTypeToken();
1109 s->saveBinary(ostr);
1111 result = ostr.
str();
1112 saveData(os, result);
1120 saveData(os, myVisMode);
1121 saveData(os, myRangemin);
1122 saveData(os, myRangemax);
1123 saveData(os, myDensityscale);
1124 saveData(os, myShadowscale);
1125 saveData(os, mySetambientcolors);
1126 saveData(os, myAmbientexposed);
1127 saveData(os, myAmbientoccluded);
1128 saveData(os, mySetambientshadows);
1129 saveData(os, myAmbientshadows);
1130 saveData(os, mySetshadowcolor);
1131 saveData(os, myShadowcolor);
1132 saveData(os, myUseDict);
1133 saveData(os, mySetmaxres);
1134 saveData(os, myMaxres);
1135 saveData(os, mySetambientmapsize);
1136 saveData(os, myAmbientmapsize);
1137 saveData(os, mySetambientsteprate);
1138 saveData(os, myAmbientsteprate);
1139 saveData(os, myDensityfield);
1140 saveData(os, myDensityrampmode);
1141 saveData(os, myDensityramp);
1142 saveData(os, myCdfield);
1143 saveData(os, myCdrangeoverride);
1144 saveData(os, myCdrange);
1145 saveData(os, myCdrampmode);
1146 saveData(os, myCdramp);
1147 saveData(os, myEmitscale);
1148 saveData(os, myEmitfield);
1149 saveData(os, myEmitrangeoverride);
1150 saveData(os, myEmitrange);
1151 saveData(os, myEmitrampmode);
1152 saveData(os, myEmitramp);
1153 saveData(os, myEmitcdfield);
1154 saveData(os, myEmitcdrampmode);
1155 saveData(os, myEmitcdramp);
1156 saveData(os, myEmitcdfieldscale);
1157 saveData(os, myEmitcdtemperature0);
1158 saveData(os, myEmitcdtemperature);
1159 saveData(os, myEmitcdtonemap);
1160 saveData(os, myEmitcdadaptation);
1161 saveData(os, myEmitcdburn);
1162 saveData(os, myEnablescatter);
1163 saveData(os, myExtinctionratio);
1164 saveData(os, myScatteringiter);
1165 saveData(os, myEmitcdrangeoverride);
1166 saveData(os, myEmitcdrange);
1179 loadData(is, myVisMode);
1180 loadData(is, myRangemin);
1181 loadData(is, myRangemax);
1182 loadData(is, myDensityscale);
1183 loadData(is, myShadowscale);
1184 loadData(is, mySetambientcolors);
1185 loadData(is, myAmbientexposed);
1186 loadData(is, myAmbientoccluded);
1187 loadData(is, mySetambientshadows);
1188 loadData(is, myAmbientshadows);
1189 loadData(is, mySetshadowcolor);
1190 loadData(is, myShadowcolor);
1191 loadData(is, myUseDict);
1192 loadData(is, mySetmaxres);
1193 loadData(is, myMaxres);
1194 loadData(is, mySetambientmapsize);
1195 loadData(is, myAmbientmapsize);
1196 loadData(is, mySetambientsteprate);
1197 loadData(is, myAmbientsteprate);
1198 loadData(is, myDensityfield);
1199 loadData(is, myDensityrampmode);
1200 loadData(is, myDensityramp);
1201 loadData(is, myCdfield);
1202 loadData(is, myCdrangeoverride);
1203 loadData(is, myCdrange);
1204 loadData(is, myCdrampmode);
1205 loadData(is, myCdramp);
1206 loadData(is, myEmitscale);
1207 loadData(is, myEmitfield);
1208 loadData(is, myEmitrangeoverride);
1209 loadData(is, myEmitrange);
1210 loadData(is, myEmitrampmode);
1211 loadData(is, myEmitramp);
1212 loadData(is, myEmitcdfield);
1213 loadData(is, myEmitcdrampmode);
1214 loadData(is, myEmitcdramp);
1215 loadData(is, myEmitcdfieldscale);
1216 loadData(is, myEmitcdtemperature0);
1217 loadData(is, myEmitcdtemperature);
1218 loadData(is, myEmitcdtonemap);
1219 loadData(is, myEmitcdadaptation);
1220 loadData(is, myEmitcdburn);
1221 loadData(is, myEnablescatter);
1222 loadData(is, myExtinctionratio);
1223 loadData(is, myScatteringiter);
1224 loadData(is, myEmitcdrangeoverride);
1225 loadData(is, myEmitcdrange);
1235 if (!thissop)
return getVisMode();
1237 OP_Utils::evalOpParm(result, thissop,
"vismode", cookparms.
getCookTime(), 0);
1245 if (!thissop)
return getRangemin();
1247 OP_Utils::evalOpParm(result, thissop,
"rangemin", cookparms.
getCookTime(), 0);
1255 if (!thissop)
return getRangemax();
1257 OP_Utils::evalOpParm(result, thissop,
"rangemax", cookparms.
getCookTime(), 0);
1265 if (!thissop)
return getDensityscale();
1267 OP_Utils::evalOpParm(result, thissop,
"densityscale", cookparms.
getCookTime(), 0);
1275 if (!thissop)
return getShadowscale();
1277 OP_Utils::evalOpParm(result, thissop,
"shadowscale", cookparms.
getCookTime(), 0);
1285 if (!thissop)
return getSetambientcolors();
1287 OP_Utils::evalOpParm(result, thissop,
"setambientcolors", cookparms.
getCookTime(), 0);
1295 if (!thissop)
return getAmbientexposed();
1297 OP_Utils::evalOpParm(result, thissop,
"ambientexposed", cookparms.
getCookTime(), 0);
1305 if (!thissop)
return getAmbientoccluded();
1307 OP_Utils::evalOpParm(result, thissop,
"ambientoccluded", cookparms.
getCookTime(), 0);
1315 if (!thissop)
return getSetambientshadows();
1317 OP_Utils::evalOpParm(result, thissop,
"setambientshadows", cookparms.
getCookTime(), 0);
1325 if (!thissop)
return getAmbientshadows();
1327 OP_Utils::evalOpParm(result, thissop,
"ambientshadows", cookparms.
getCookTime(), 0);
1335 if (!thissop)
return getSetshadowcolor();
1337 OP_Utils::evalOpParm(result, thissop,
"setshadowcolor", cookparms.
getCookTime(), 0);
1345 if (!thissop)
return getShadowcolor();
1347 OP_Utils::evalOpParm(result, thissop,
"shadowcolor", cookparms.
getCookTime(), 0);
1355 if (!thissop)
return getUseDict();
1357 OP_Utils::evalOpParm(result, thissop,
"usedict", cookparms.
getCookTime(), 0);
1365 if (!thissop)
return getSetmaxres();
1367 OP_Utils::evalOpParm(result, thissop,
"setmaxres", cookparms.
getCookTime(), 0);
1375 if (!thissop)
return getMaxres();
1377 OP_Utils::evalOpParm(result, thissop,
"maxres", cookparms.
getCookTime(), 0);
1385 if (!thissop)
return getSetambientmapsize();
1387 OP_Utils::evalOpParm(result, thissop,
"setambientmapsize", cookparms.
getCookTime(), 0);
1395 if (!thissop)
return getAmbientmapsize();
1397 OP_Utils::evalOpParm(result, thissop,
"ambientmapsize", cookparms.
getCookTime(), 0);
1405 if (!thissop)
return getSetambientsteprate();
1407 OP_Utils::evalOpParm(result, thissop,
"setambientsteprate", cookparms.
getCookTime(), 0);
1415 if (!thissop)
return getAmbientsteprate();
1417 OP_Utils::evalOpParm(result, thissop,
"ambientsteprate", cookparms.
getCookTime(), 0);
1425 if (!thissop)
return getDensityfield();
1427 OP_Utils::evalOpParm(result, thissop,
"densityfield", cookparms.
getCookTime(), 0);
1435 if (!thissop)
return getDensityrampmode();
1437 OP_Utils::evalOpParm(result, thissop,
"densityrampmode", cookparms.
getCookTime(), 0);
1445 if (!thissop)
return getDensityramp();
1447 OP_Utils::evalOpParm(result, thissop,
"densityramp", cookparms.
getCookTime(), 0);
1455 if (!thissop)
return getCdfield();
1457 OP_Utils::evalOpParm(result, thissop,
"cdfield", cookparms.
getCookTime(), 0);
1465 if (!thissop)
return getCdrangeoverride();
1467 OP_Utils::evalOpParm(result, thissop,
"cdrangeoverride", cookparms.
getCookTime(), 0);
1475 if (!thissop)
return getCdrange();
1477 OP_Utils::evalOpParm(result, thissop,
"cdrange", cookparms.
getCookTime(), 0);
1485 if (!thissop)
return getCdrampmode();
1487 OP_Utils::evalOpParm(result, thissop,
"cdrampmode", cookparms.
getCookTime(), 0);
1495 if (!thissop)
return getCdramp();
1497 OP_Utils::evalOpParm(result, thissop,
"cdramp", cookparms.
getCookTime(), 0);
1505 if (!thissop)
return getEmitscale();
1507 OP_Utils::evalOpParm(result, thissop,
"emitscale", cookparms.
getCookTime(), 0);
1515 if (!thissop)
return getEmitfield();
1517 OP_Utils::evalOpParm(result, thissop,
"emitfield", cookparms.
getCookTime(), 0);
1525 if (!thissop)
return getEmitrangeoverride();
1527 OP_Utils::evalOpParm(result, thissop,
"emitrangeoverride", cookparms.
getCookTime(), 0);
1535 if (!thissop)
return getEmitrange();
1537 OP_Utils::evalOpParm(result, thissop,
"emitrange", cookparms.
getCookTime(), 0);
1545 if (!thissop)
return getEmitrampmode();
1547 OP_Utils::evalOpParm(result, thissop,
"emitrampmode", cookparms.
getCookTime(), 0);
1555 if (!thissop)
return getEmitramp();
1557 OP_Utils::evalOpParm(result, thissop,
"emitramp", cookparms.
getCookTime(), 0);
1565 if (!thissop)
return getEmitcdfield();
1567 OP_Utils::evalOpParm(result, thissop,
"emitcdfield", cookparms.
getCookTime(), 0);
1575 if (!thissop)
return getEmitcdrampmode();
1577 OP_Utils::evalOpParm(result, thissop,
"emitcdrampmode", cookparms.
getCookTime(), 0);
1585 if (!thissop)
return getEmitcdramp();
1587 OP_Utils::evalOpParm(result, thissop,
"emitcdramp", cookparms.
getCookTime(), 0);
1595 if (!thissop)
return getEmitcdfieldscale();
1597 OP_Utils::evalOpParm(result, thissop,
"emitcdfieldscale", cookparms.
getCookTime(), 0);
1605 if (!thissop)
return getEmitcdtemperature0();
1607 OP_Utils::evalOpParm(result, thissop,
"emitcdtemperature0", cookparms.
getCookTime(), 0);
1615 if (!thissop)
return getEmitcdtemperature();
1617 OP_Utils::evalOpParm(result, thissop,
"emitcdtemperature", cookparms.
getCookTime(), 0);
1625 if (!thissop)
return getEmitcdtonemap();
1627 OP_Utils::evalOpParm(result, thissop,
"emitcdtonemap", cookparms.
getCookTime(), 0);
1635 if (!thissop)
return getEmitcdadaptation();
1637 OP_Utils::evalOpParm(result, thissop,
"emitcdadaptation", cookparms.
getCookTime(), 0);
1645 if (!thissop)
return getEmitcdburn();
1647 OP_Utils::evalOpParm(result, thissop,
"emitcdburn", cookparms.
getCookTime(), 0);
1655 if (!thissop)
return getEnablescatter();
1657 OP_Utils::evalOpParm(result, thissop,
"enablescatter", cookparms.
getCookTime(), 0);
1665 if (!thissop)
return getExtinctionratio();
1667 OP_Utils::evalOpParm(result, thissop,
"extinctionratio", cookparms.
getCookTime(), 0);
1675 if (!thissop)
return getScatteringiter();
1677 OP_Utils::evalOpParm(result, thissop,
"scatteringiter", cookparms.
getCookTime(), 0);
1685 if (!thissop)
return getEmitcdrangeoverride();
1687 OP_Utils::evalOpParm(result, thissop,
"emitcdrangeoverride", cookparms.
getCookTime(), 0);
1695 if (!thissop)
return getEmitcdrange();
1697 OP_Utils::evalOpParm(result, thissop,
"emitcdrange", cookparms.
getCookTime(), 0);
1707 bool mySetambientcolors;
1710 bool mySetambientshadows;
1712 bool mySetshadowcolor;
1717 bool mySetambientmapsize;
1719 bool mySetambientsteprate;
1722 int64 myDensityrampmode;
1725 bool myCdrangeoverride;
1731 bool myEmitrangeoverride;
1733 int64 myEmitrampmode;
1736 int64 myEmitcdrampmode;
1741 bool myEmitcdtonemap;
1744 bool myEnablescatter;
1746 int64 myScatteringiter;
1747 bool myEmitcdrangeoverride;
bool opEmitrangeoverride(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3D opAmbientexposed(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
static void loadData(UT_IStream &is, UT_Vector2I &v)
int64 getScatteringiter() const
bool getEmitcdrangeoverride() const
void setEmitcdtemperature0(fpreal64 val)
void setAmbientexposed(UT_Vector3D val)
Emitcdrampmode getEmitcdrampmode() const
SOP_Node * getNode() const
void setSetmaxres(bool val)
void setAmbientshadows(fpreal64 val)
fpreal64 getAmbientsteprate() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
void setDensityscale(fpreal64 val)
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
bool getSetambientsteprate() const
bool opSetambientshadows(const SOP_NodeVerb::CookParms &cookparms) const
bool getSetambientmapsize() const
static UT_SharedPtr< UT_Ramp > buildFromDefault(const char *def)
Returns a ramp constructed from the canonical default strings.
void setSetambientsteprate(bool val)
void setVisMode(VisMode val)
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
bool opSetshadowcolor(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opEmitscale(const SOP_NodeVerb::CookParms &cookparms) const
void setEmitcdburn(fpreal64 val)
fpreal64 opEmitcdtemperature(const SOP_NodeVerb::CookParms &cookparms) const
void setScatteringiter(int64 val)
UT_SharedPtr< UT_Ramp > opEmitcdramp(const SOP_NodeVerb::CookParms &cookparms) const
exint bread(int32 *buffer, exint asize=1)
UT_SharedPtr< UT_Ramp > opDensityramp(const SOP_NodeVerb::CookParms &cookparms) const
GT_API const UT_StringHolder time
constexpr SYS_FORCE_INLINE T & y() noexcept
UT_Vector2T< fpreal64 > UT_Vector2D
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
ParmType getNestParmType(TempIndex fieldnum) const override
bool opSetambientcolors(const SOP_NodeVerb::CookParms &cookparms) const
GLsizei const GLfloat * value
bool operator==(const SOP_VolumeVisualizationParms &src) const
void save(std::ostream &os) const
static void loadData(UT_IStream &is, UT_Matrix3D &v)
void setEmitscale(fpreal64 val)
const OP_Context & context() const
constexpr SYS_FORCE_INLINE T & z() noexcept
void setSetambientmapsize(bool val)
SYS_FORCE_INLINE const char * buffer() const
UT_SharedPtr< UT_Ramp > opEmitramp(const SOP_NodeVerb::CookParms &cookparms) const
An output stream object that owns its own string buffer storage.
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
void setEmitcdfield(const UT_StringHolder &val)
const char * getNestParmName(TempIndex fieldnum) const override
UT_StringHolder opEmitcdfield(const SOP_NodeVerb::CookParms &cookparms) const
**But if you need a result
UT_SharedPtr< UT_Ramp > getEmitcdramp() const
exint getNestNumParms(TempIndex idx) const override
UT_SharedPtr< UT_Ramp > getDensityramp() const
bool opEmitcdrangeoverride(const SOP_NodeVerb::CookParms &cookparms) const
bool getEmitcdtonemap() const
fpreal64 opAmbientmapsize(const SOP_NodeVerb::CookParms &cookparms) const
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
UT_Vector3D opAmbientoccluded(const SOP_NodeVerb::CookParms &cookparms) const
void setSetambientshadows(bool val)
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
Densityrampmode opDensityrampmode(const SOP_NodeVerb::CookParms &cookparms) const
void setEnablescatter(bool val)
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
fpreal64 opDensityscale(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setRangemin(fpreal64 val)
bool opEnablescatter(const SOP_NodeVerb::CookParms &cookparms) const
UT_SharedPtr< UT_Ramp > getEmitramp() const
void setDensityramp(UT_SharedPtr< UT_Ramp > val)
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
constexpr SYS_FORCE_INLINE T & x() noexcept
void setMaxres(int64 val)
fpreal64 getEmitcdfieldscale() const
void setEmitcdadaptation(fpreal64 val)
UT_SharedPtr< UT_Ramp > opCdramp(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opExtinctionratio(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getAmbientshadows() const
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
constexpr SYS_FORCE_INLINE T & x() noexcept
fpreal64 opShadowscale(const SOP_NodeVerb::CookParms &cookparms) const
bool getSetmaxres() const
void setEmitcdtonemap(bool val)
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
fpreal64 opRangemin(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opDensityfield(const SOP_NodeVerb::CookParms &cookparms) const
Emitrampmode opEmitrampmode(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, PRM_DataItemHandle s)
UT_Vector2D getEmitrange() const
void setCdrangeoverride(bool val)
void setEmitrampmode(Emitrampmode val)
int64 opMaxres(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector2D opEmitrange(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, int64 v)
void setSetshadowcolor(bool val)
bool operator!=(const SOP_VolumeVisualizationParms &src) const
fpreal64 getRangemin() const
void setSetambientcolors(bool val)
static void loadData(UT_IStream &is, fpreal64 &v)
UT_Vector2D opEmitcdrange(const SOP_NodeVerb::CookParms &cookparms) const
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
bool getSetambientcolors() const
static void loadData(UT_IStream &is, UT_Vector4I &v)
constexpr SYS_FORCE_INLINE T & z() noexcept
static void saveData(std::ostream &os, UT_Matrix3D v)
void setEmitcdrampmode(Emitcdrampmode val)
fpreal64 opEmitcdburn(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix4D v)
UT_SharedPtr< UT_Ramp > getCdramp() const
static void loadData(UT_IStream &is, UT_Matrix4D &v)
fpreal64 opEmitcdadaptation(const SOP_NodeVerb::CookParms &cookparms) const
void setUseDict(bool val)
void setCdrange(UT_Vector2D val)
const OP_GraphProxy * graph() const
static void loadData(UT_IStream &is, bool &v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
static void saveData(std::ostream &os, UT_Matrix2D v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
fpreal64 getDensityscale() const
void setShadowscale(fpreal64 val)
SOP_VolumeVisualizationParms()
bool load(UT_IStream &is)
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
bool opCdrangeoverride(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
fpreal64 getShadowscale() const
void setEmitramp(UT_SharedPtr< UT_Ramp > val)
void setEmitcdrangeoverride(bool val)
bool getEmitrangeoverride() const
void setAmbientmapsize(fpreal64 val)
UT_Vector2D opCdrange(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
const UT_StringHolder & getEmitcdfield() const
void setAmbientoccluded(UT_Vector3D val)
UT_Vector3T< fpreal64 > UT_Vector3D
bool opEmitcdtonemap(const SOP_NodeVerb::CookParms &cookparms) const
bool getSetambientshadows() const
fpreal64 getRangemax() const
void setEmitrange(UT_Vector2D val)
void setDensityfield(const UT_StringHolder &val)
bool opSetambientmapsize(const SOP_NodeVerb::CookParms &cookparms) const
bool getSetshadowcolor() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
Densityrampmode getDensityrampmode() const
void setRangemax(fpreal64 val)
static void saveData(std::ostream &os, UT_Vector2D v)
static void saveData(std::ostream &os, fpreal64 v)
void setCdrampmode(Cdrampmode val)
void saveBinary(std::ostream &os) const
Save string to binary stream.
int64 opScatteringiter(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getExtinctionratio() const
bool opUseDict(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
GT_API const UT_StringHolder version
bool opSetambientsteprate(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opEmitcdfieldscale(const SOP_NodeVerb::CookParms &cookparms) const
void setEmitcdfieldscale(fpreal64 val)
bool getCdrangeoverride() const
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
fpreal64 opRangemax(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
fpreal64 opAmbientshadows(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opEmitcdtemperature0(const SOP_NodeVerb::CookParms &cookparms) const
void setEmitcdtemperature(fpreal64 val)
static void loadData(UT_IStream &is, UT_Vector3I &v)
UT_StringHolder opCdfield(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opAmbientsteprate(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
Emitcdrampmode opEmitcdrampmode(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector4D v)
static void loadData(UT_IStream &is, UT_StringHolder &v)
const UT_StringHolder & getDensityfield() const
UT_Vector3D getShadowcolor() const
void setCdramp(UT_SharedPtr< UT_Ramp > val)
Cdrampmode getCdrampmode() const
fpreal64 getEmitcdadaptation() const
fpreal64 getEmitcdtemperature() const
DEP_MicroNode * depnode() const
LeafData & operator=(const LeafData &)=delete
static void loadData(UT_IStream &is, UT_Matrix2D &v)
Utility class for containing a color ramp.
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
void setCdfield(const UT_StringHolder &val)
constexpr SYS_FORCE_INLINE T & w() noexcept
void setEmitcdrange(UT_Vector2D val)
virtual UT_StringHolder baseGetSignature() const
UT_Vector2D getEmitcdrange() const
UT_Vector3D opShadowcolor(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, bool v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
Emitrampmode getEmitrampmode() const
fpreal getCookTime() const
UT_Vector3D getAmbientoccluded() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
fpreal64 getEmitscale() const
const char * findChar(int c) const
void setShadowcolor(UT_Vector3D val)
static void saveData(std::ostream &os, UT_Vector3D v)
SYS_FORCE_INLINE UT_StringHolder getToken(VisMode enum_value)
const UT_StringHolder & getEmitfield() const
void loadFromOpSubclass(const LoadParms &loadparms) override
bool isParmColorRamp(exint idx) const override
UT_StringHolder opEmitfield(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getCdfield() const
void setEmitcdramp(UT_SharedPtr< UT_Ramp > val)
fpreal64 getEmitcdtemperature0() const
void copyFrom(const OP_NodeParms *src) override
fpreal64 getAmbientmapsize() const
void setExtinctionratio(fpreal64 val)
VisMode getVisMode() const
constexpr SYS_FORCE_INLINE T & y() noexcept
static void loadData(UT_IStream &is, UT_Vector3D &v)
static void saveData(std::ostream &os, UT_StringHolder s)
void setDensityrampmode(Densityrampmode val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
virtual bool isDirect() const =0
Direct proxies mirror actual nodes:
bool opSetmaxres(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3D getAmbientexposed() const
fpreal64 getEmitcdburn() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
void setEmitfield(const UT_StringHolder &val)
static void loadData(UT_IStream &is, UT_Vector4D &v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
bool getEnablescatter() const
constexpr SYS_FORCE_INLINE T & y() noexcept
SYS_FORCE_INLINE bool isstring() const
void setAmbientsteprate(fpreal64 val)
void setEmitrangeoverride(bool val)
static void loadData(UT_IStream &is, int64 &v)
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
Cdrampmode opCdrampmode(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector2D getCdrange() const
constexpr SYS_FORCE_INLINE T & x() noexcept
VisMode opVisMode(const SOP_NodeVerb::CookParms &cookparms) const