20 using namespace UT::Literal;
23 namespace SOP_Measure_2_0Enums
112 myPrincipalReportAs = 0;
114 myIntegrationMode = 0;
115 mySrcAttrib =
"P"_sh;
117 myScaleNormalize =
true;
118 myIntegrationDomain = 0;
119 myPieceAttrib =
"class"_sh;
120 myUseCustomPos =
false;
121 myPosAttrib =
"P"_sh;
122 myUseRangeMin =
false;
124 myUseRangeMax =
false;
126 myUseCenterWidth =
true;
133 myAttribName =
"area"_sh;
134 myUseTotalAttrib =
false;
135 myTotalAttribName =
"totalarea"_sh;
136 myUseRangeGroup =
false;
137 myRangeGroup =
"inrange"_sh;
138 myBakeIntoOutput =
false;
139 myUseRemapRange =
false;
150 if (myGroup != src.myGroup)
return false;
151 if (myGroupType != src.myGroupType)
return false;
152 if (myMeasure != src.myMeasure)
return false;
153 if (myCurvatureType != src.myCurvatureType)
return false;
154 if (myPrincipalType != src.myPrincipalType)
return false;
155 if (myPrincipalSign != src.myPrincipalSign)
return false;
156 if (myPrincipalReportAs != src.myPrincipalReportAs)
return false;
157 if (myUmbilicCutoff != src.myUmbilicCutoff)
return false;
158 if (myIntegrationMode != src.myIntegrationMode)
return false;
159 if (mySrcAttrib != src.mySrcAttrib)
return false;
160 if (mySrcComp != src.mySrcComp)
return false;
161 if (myScaleNormalize != src.myScaleNormalize)
return false;
162 if (myIntegrationDomain != src.myIntegrationDomain)
return false;
163 if (myPieceAttrib != src.myPieceAttrib)
return false;
164 if (myUseCustomPos != src.myUseCustomPos)
return false;
165 if (myPosAttrib != src.myPosAttrib)
return false;
166 if (myUseRangeMin != src.myUseRangeMin)
return false;
167 if (myRangeMin != src.myRangeMin)
return false;
168 if (myUseRangeMax != src.myUseRangeMax)
return false;
169 if (myRangeMax != src.myRangeMax)
return false;
170 if (myUseCenterWidth != src.myUseCenterWidth)
return false;
171 if (myWidth != src.myWidth)
return false;
172 if (myWidthScale != src.myWidthScale)
return false;
173 if (myCenterType != src.myCenterType)
return false;
174 if (myFixedCenter != src.myFixedCenter)
return false;
175 if (myColorramp != src.myColorramp)
return false;
176 if (myVectorScale != src.myVectorScale)
return false;
177 if (myAttribName != src.myAttribName)
return false;
178 if (myUseTotalAttrib != src.myUseTotalAttrib)
return false;
179 if (myTotalAttribName != src.myTotalAttribName)
return false;
180 if (myUseRangeGroup != src.myUseRangeGroup)
return false;
181 if (myRangeGroup != src.myRangeGroup)
return false;
182 if (myBakeIntoOutput != src.myBakeIntoOutput)
return false;
183 if (myUseRemapRange != src.myUseRemapRange)
return false;
184 if (myRemapRange != src.myRemapRange)
return false;
210 graph->
evalOpParm(myGroup, nodeidx,
"group", time, 0);
213 graph->
evalOpParm(myGroupType, nodeidx,
"grouptype", time, 0);
216 graph->
evalOpParm(myMeasure, nodeidx,
"measure", time, 0);
218 if (
true && ( (!(((
int64(getMeasure())!=4)))) ) )
219 graph->
evalOpParm(myCurvatureType, nodeidx,
"curvaturetype", time, 0);
221 if (
true && ( (!(((
int64(getMeasure())!=4))||((
int64(getCurvatureType())!=2)))) ) )
222 graph->
evalOpParm(myPrincipalType, nodeidx,
"principaltype", time, 0);
224 if (
true && ( (!(((
int64(getMeasure())!=4))||((
int64(getCurvatureType())!=2)))) ) )
225 graph->
evalOpParm(myPrincipalSign, nodeidx,
"principalsign", time, 0);
226 myPrincipalReportAs = 0;
227 if (
true && ( (!(((
int64(getMeasure())!=4))||((
int64(getCurvatureType())!=2)))) ) )
228 graph->
evalOpParm(myPrincipalReportAs, nodeidx,
"principalreportas", time, 0);
230 if (
true && ( (!(((
int64(getMeasure())!=4))||((
int64(getCurvatureType())!=2))||((
int64(getPrincipalReportAs())==0)))) ) )
231 graph->
evalOpParm(myUmbilicCutoff, nodeidx,
"umbiliccutoff", time, 0);
232 myIntegrationMode = 0;
233 if (
true && ( (!(((
int64(getMeasure())!=7)&&(
int64(getMeasure())!=8)))) ) )
234 graph->
evalOpParm(myIntegrationMode, nodeidx,
"integrationmode", time, 0);
235 mySrcAttrib =
"P"_sh;
236 if (
true && ( (!(((
int64(getMeasure())==4))||((
int64(getMeasure())==2))||((
int64(getMeasure())==0))||((
int64(getMeasure())==1))||((
int64(getMeasure())==3)))) ) )
237 graph->
evalOpParm(mySrcAttrib, nodeidx,
"srcattrib", time, 0);
239 if (
true && ( (!(((
int64(getMeasure())==4))||((
int64(getMeasure())==2))||((
int64(getMeasure())==0))||((
int64(getMeasure())==1))||((
int64(getMeasure())==3)))) ) )
240 graph->
evalOpParm(mySrcComp, nodeidx,
"srccomp", time, 0);
241 myScaleNormalize =
true;
242 if (
true && ( (!(((
int64(getMeasure())!=4)&&(
int64(getMeasure())!=5)&&(
int64(getMeasure())!=6)&&(
int64(getMeasure())!=8))||((
int64(getMeasure())==4)&&(
int64(getCurvatureType())==0)))) ) )
243 graph->
evalOpParm(myScaleNormalize, nodeidx,
"scalenormalize", time, 0);
244 myIntegrationDomain = 0;
246 graph->
evalOpParm(myIntegrationDomain, nodeidx,
"integrationdomain", time, 0);
247 myPieceAttrib =
"class"_sh;
248 if (
true && ( (!(((
int64(getIntegrationDomain())!=1)))) ) )
249 graph->
evalOpParm(myPieceAttrib, nodeidx,
"pieceattrib", time, 0);
250 myUseCustomPos =
false;
252 graph->
evalOpParm(myUseCustomPos, nodeidx,
"usecustompos", time, 0);
253 myPosAttrib =
"P"_sh;
254 if (
true && ( (!(((getUseCustomPos()==0)))) ) )
255 graph->
evalOpParm(myPosAttrib, nodeidx,
"posattrib", time, 0);
256 myUseRangeMin =
false;
257 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1)))) ) )
258 graph->
evalOpParm(myUseRangeMin, nodeidx,
"userangemin", time, 0);
260 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseRangeMin()==0)))) ) )
261 graph->
evalOpParm(myRangeMin, nodeidx,
"rangemin", time, 0);
262 myUseRangeMax =
false;
263 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1)))) ) )
264 graph->
evalOpParm(myUseRangeMax, nodeidx,
"userangemax", time, 0);
266 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseRangeMax()==0)))) ) )
267 graph->
evalOpParm(myRangeMax, nodeidx,
"rangemax", time, 0);
268 myUseCenterWidth =
true;
269 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1)))) ) )
270 graph->
evalOpParm(myUseCenterWidth, nodeidx,
"usecenterwidth", time, 0);
272 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseCenterWidth()==0)))) ) )
273 graph->
evalOpParm(myWidth, nodeidx,
"width", time, 0);
275 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseCenterWidth()==0)))) ) )
276 graph->
evalOpParm(myWidthScale, nodeidx,
"widthscale", time, 0);
278 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseCenterWidth()==0)))) ) )
279 graph->
evalOpParm(myCenterType, nodeidx,
"centertype", time, 0);
281 if (
true && ( (!(((
int64(getCenterType())!=0))||((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseCenterWidth()==0)))) ) )
282 graph->
evalOpParm(myFixedCenter, nodeidx,
"fixedcenter", time, 0);
284 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1)))) ) )
285 graph->
evalOpParm(myColorramp, nodeidx,
"colorramp", time, 0);
287 if (
true && ( (!(((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==0))||((
int64(getMeasure())==2))||((
int64(getMeasure())==0))||((
int64(getMeasure())==1))||((
int64(getMeasure())==3))||((
int64(getMeasure())==6)&&(
int64(getSrcComp())!=3))||((
int64(getMeasure())==8)&&(
int64(getSrcComp())!=3))||((
int64(getMeasure())==7)&&(
int64(getSrcComp())!=3)))) ) )
288 graph->
evalOpParm(myVectorScale, nodeidx,
"vectorscale", time, 0);
289 myAttribName =
"area"_sh;
291 graph->
evalOpParm(myAttribName, nodeidx,
"attribname", time, 0);
292 myUseTotalAttrib =
false;
294 graph->
evalOpParm(myUseTotalAttrib, nodeidx,
"usetotalattrib", time, 0);
295 myTotalAttribName =
"totalarea"_sh;
296 if (
true && ( (!(((getUseTotalAttrib()==0)))) ) )
297 graph->
evalOpParm(myTotalAttribName, nodeidx,
"totalattribname", time, 0);
298 myUseRangeGroup =
false;
299 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseRangeMin()==0)&&(getUseRangeMax()==0)&&(getUseCenterWidth()==0)))) ) )
300 graph->
evalOpParm(myUseRangeGroup, nodeidx,
"userangegroup", time, 0);
301 myRangeGroup =
"inrange"_sh;
302 if (
true && ( (!(((getUseRangeGroup()==0)))) ) )
303 graph->
evalOpParm(myRangeGroup, nodeidx,
"rangegroup", time, 0);
304 myBakeIntoOutput =
false;
305 if (
true && ( (!(((
int64(getMeasure())==3))||((
int64(getMeasure())==4)&&(
int64(getPrincipalReportAs())==1))||((getUseRangeMin()==0)&&(getUseRangeMax()==0)&&(getUseCenterWidth()==0)))) ) )
306 graph->
evalOpParm(myBakeIntoOutput, nodeidx,
"bakeintooutput", time, 0);
307 myUseRemapRange =
false;
308 if (
true && ( (!(((getBakeIntoOutput()==0)))) ) )
309 graph->
evalOpParm(myUseRemapRange, nodeidx,
"useremaprange", time, 0);
311 if (
true && ( (!(((getBakeIntoOutput()==0))||((getUseRemapRange()==0)))) ) )
312 graph->
evalOpParm(myRemapRange, nodeidx,
"remaprange", time, 0);
328 template <
typename T>
335 if (idx.
size() != instance.
size()+1)
340 coerceValue(value, myGroup);
343 coerceValue(value, myGroupType);
346 coerceValue(value, myMeasure);
349 coerceValue(value, myCurvatureType);
352 coerceValue(value, myPrincipalType);
355 coerceValue(value, myPrincipalSign);
358 coerceValue(value, myPrincipalReportAs);
361 coerceValue(value, myUmbilicCutoff);
364 coerceValue(value, myIntegrationMode);
367 coerceValue(value, mySrcAttrib);
370 coerceValue(value, mySrcComp);
373 coerceValue(value, myScaleNormalize);
376 coerceValue(value, myIntegrationDomain);
379 coerceValue(value, myPieceAttrib);
382 coerceValue(value, myUseCustomPos);
385 coerceValue(value, myPosAttrib);
388 coerceValue(value, myUseRangeMin);
391 coerceValue(value, myRangeMin);
394 coerceValue(value, myUseRangeMax);
397 coerceValue(value, myRangeMax);
400 coerceValue(value, myUseCenterWidth);
403 coerceValue(value, myWidth);
406 coerceValue(value, myWidthScale);
409 coerceValue(value, myCenterType);
412 coerceValue(value, myFixedCenter);
415 coerceValue(value, myColorramp);
418 coerceValue(value, myVectorScale);
421 coerceValue(value, myAttribName);
424 coerceValue(value, myUseTotalAttrib);
427 coerceValue(value, myTotalAttribName);
430 coerceValue(value, myUseRangeGroup);
433 coerceValue(value, myRangeGroup);
436 coerceValue(value, myBakeIntoOutput);
439 coerceValue(value, myUseRemapRange);
442 coerceValue(value, myRemapRange);
449 { doGetParmValue(idx, instance, value); }
451 { doGetParmValue(idx, instance, value); }
453 { doGetParmValue(idx, instance, value); }
455 { doGetParmValue(idx, instance, value); }
457 { doGetParmValue(idx, instance, value); }
459 { doGetParmValue(idx, instance, value); }
461 { doGetParmValue(idx, instance, value); }
463 { doGetParmValue(idx, instance, value); }
465 { doGetParmValue(idx, instance, value); }
467 { doGetParmValue(idx, instance, value); }
469 { doGetParmValue(idx, instance, value); }
471 template <
typename T>
478 if (idx.
size() != instance.
size()+1)
483 coerceValue(myGroup, value);
486 coerceValue(myGroupType, value);
489 coerceValue(myMeasure, value);
492 coerceValue(myCurvatureType, value);
495 coerceValue(myPrincipalType, value);
498 coerceValue(myPrincipalSign, value);
501 coerceValue(myPrincipalReportAs, value);
504 coerceValue(myUmbilicCutoff, value);
507 coerceValue(myIntegrationMode, value);
510 coerceValue(mySrcAttrib, value);
513 coerceValue(mySrcComp, value);
516 coerceValue(myScaleNormalize, value);
519 coerceValue(myIntegrationDomain, value);
522 coerceValue(myPieceAttrib, value);
525 coerceValue(myUseCustomPos, value);
528 coerceValue(myPosAttrib, value);
531 coerceValue(myUseRangeMin, value);
534 coerceValue(myRangeMin, value);
537 coerceValue(myUseRangeMax, value);
540 coerceValue(myRangeMax, value);
543 coerceValue(myUseCenterWidth, value);
546 coerceValue(myWidth, value);
549 coerceValue(myWidthScale, value);
552 coerceValue(myCenterType, value);
555 coerceValue(myFixedCenter, value);
558 coerceValue(myColorramp, value);
561 coerceValue(myVectorScale, value);
564 coerceValue(myAttribName, value);
567 coerceValue(myUseTotalAttrib, value);
570 coerceValue(myTotalAttribName, value);
573 coerceValue(myUseRangeGroup, value);
576 coerceValue(myRangeGroup, value);
579 coerceValue(myBakeIntoOutput, value);
582 coerceValue(myUseRemapRange, value);
585 coerceValue(myRemapRange, value);
592 { doSetParmValue(idx, instance, value); }
594 { doSetParmValue(idx, instance, value); }
596 { doSetParmValue(idx, instance, value); }
598 { doSetParmValue(idx, instance, value); }
600 { doSetParmValue(idx, instance, value); }
602 { doSetParmValue(idx, instance, value); }
604 { doSetParmValue(idx, instance, value); }
606 { doSetParmValue(idx, instance, value); }
608 { doSetParmValue(idx, instance, value); }
610 { doSetParmValue(idx, instance, value); }
612 { doSetParmValue(idx, instance, value); }
628 if (fieldnum.
size() < 1)
639 return "curvaturetype";
641 return "principaltype";
643 return "principalsign";
645 return "principalreportas";
647 return "umbiliccutoff";
649 return "integrationmode";
655 return "scalenormalize";
657 return "integrationdomain";
659 return "pieceattrib";
661 return "usecustompos";
665 return "userangemin";
669 return "userangemax";
673 return "usecenterwidth";
681 return "fixedcenter";
685 return "vectorscale";
689 return "usetotalattrib";
691 return "totalattribname";
693 return "userangegroup";
697 return "bakeintooutput";
699 return "useremaprange";
709 if (fieldnum.
size() < 1)
710 return PARM_UNSUPPORTED;
785 return PARM_UNSUPPORTED;
821 loadData(is, rampdata);
839 int typelen = colon - data.
buffer();
853 {
int64 iv =
v; UTwrite(os, &iv); }
855 { UTwrite<fpreal64>(os, &
v); }
857 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
859 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
860 UTwrite<fpreal64>(os, &v.
z()); }
862 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
863 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
875 if (s) s->save(ostr);
877 saveData(os, result);
884 ostr << s->getDataTypeToken();
889 saveData(os, result);
893 void save(std::ostream &os)
const
897 saveData(os, myGroup);
898 saveData(os, myGroupType);
899 saveData(os, myMeasure);
900 saveData(os, myCurvatureType);
901 saveData(os, myPrincipalType);
902 saveData(os, myPrincipalSign);
903 saveData(os, myPrincipalReportAs);
904 saveData(os, myUmbilicCutoff);
905 saveData(os, myIntegrationMode);
906 saveData(os, mySrcAttrib);
907 saveData(os, mySrcComp);
908 saveData(os, myScaleNormalize);
909 saveData(os, myIntegrationDomain);
910 saveData(os, myPieceAttrib);
911 saveData(os, myUseCustomPos);
912 saveData(os, myPosAttrib);
913 saveData(os, myUseRangeMin);
914 saveData(os, myRangeMin);
915 saveData(os, myUseRangeMax);
916 saveData(os, myRangeMax);
917 saveData(os, myUseCenterWidth);
918 saveData(os, myWidth);
919 saveData(os, myWidthScale);
920 saveData(os, myCenterType);
921 saveData(os, myFixedCenter);
922 saveData(os, myColorramp);
923 saveData(os, myVectorScale);
924 saveData(os, myAttribName);
925 saveData(os, myUseTotalAttrib);
926 saveData(os, myTotalAttribName);
927 saveData(os, myUseRangeGroup);
928 saveData(os, myRangeGroup);
929 saveData(os, myBakeIntoOutput);
930 saveData(os, myUseRemapRange);
931 saveData(os, myRemapRange);
944 loadData(is, myGroup);
945 loadData(is, myGroupType);
946 loadData(is, myMeasure);
947 loadData(is, myCurvatureType);
948 loadData(is, myPrincipalType);
949 loadData(is, myPrincipalSign);
950 loadData(is, myPrincipalReportAs);
951 loadData(is, myUmbilicCutoff);
952 loadData(is, myIntegrationMode);
953 loadData(is, mySrcAttrib);
954 loadData(is, mySrcComp);
955 loadData(is, myScaleNormalize);
956 loadData(is, myIntegrationDomain);
957 loadData(is, myPieceAttrib);
958 loadData(is, myUseCustomPos);
959 loadData(is, myPosAttrib);
960 loadData(is, myUseRangeMin);
961 loadData(is, myRangeMin);
962 loadData(is, myUseRangeMax);
963 loadData(is, myRangeMax);
964 loadData(is, myUseCenterWidth);
965 loadData(is, myWidth);
966 loadData(is, myWidthScale);
967 loadData(is, myCenterType);
968 loadData(is, myFixedCenter);
969 loadData(is, myColorramp);
970 loadData(is, myVectorScale);
971 loadData(is, myAttribName);
972 loadData(is, myUseTotalAttrib);
973 loadData(is, myTotalAttribName);
974 loadData(is, myUseRangeGroup);
975 loadData(is, myRangeGroup);
976 loadData(is, myBakeIntoOutput);
977 loadData(is, myUseRemapRange);
978 loadData(is, myRemapRange);
988 if (!thissop)
return getGroup();
990 OP_Utils::evalOpParm(result, thissop,
"group", cookparms.
getCookTime(), 0);
998 if (!thissop)
return getGroupType();
1000 OP_Utils::evalOpParm(result, thissop,
"grouptype", cookparms.
getCookTime(), 0);
1008 if (!thissop)
return getMeasure();
1010 OP_Utils::evalOpParm(result, thissop,
"measure", cookparms.
getCookTime(), 0);
1018 if (!thissop)
return getCurvatureType();
1020 OP_Utils::evalOpParm(result, thissop,
"curvaturetype", cookparms.
getCookTime(), 0);
1028 if (!thissop)
return getPrincipalType();
1030 OP_Utils::evalOpParm(result, thissop,
"principaltype", cookparms.
getCookTime(), 0);
1038 if (!thissop)
return getPrincipalSign();
1040 OP_Utils::evalOpParm(result, thissop,
"principalsign", cookparms.
getCookTime(), 0);
1048 if (!thissop)
return getPrincipalReportAs();
1050 OP_Utils::evalOpParm(result, thissop,
"principalreportas", cookparms.
getCookTime(), 0);
1058 if (!thissop)
return getUmbilicCutoff();
1060 OP_Utils::evalOpParm(result, thissop,
"umbiliccutoff", cookparms.
getCookTime(), 0);
1068 if (!thissop)
return getIntegrationMode();
1070 OP_Utils::evalOpParm(result, thissop,
"integrationmode", cookparms.
getCookTime(), 0);
1078 if (!thissop)
return getSrcAttrib();
1080 OP_Utils::evalOpParm(result, thissop,
"srcattrib", cookparms.
getCookTime(), 0);
1088 if (!thissop)
return getSrcComp();
1090 OP_Utils::evalOpParm(result, thissop,
"srccomp", cookparms.
getCookTime(), 0);
1098 if (!thissop)
return getScaleNormalize();
1100 OP_Utils::evalOpParm(result, thissop,
"scalenormalize", cookparms.
getCookTime(), 0);
1108 if (!thissop)
return getIntegrationDomain();
1110 OP_Utils::evalOpParm(result, thissop,
"integrationdomain", cookparms.
getCookTime(), 0);
1118 if (!thissop)
return getPieceAttrib();
1120 OP_Utils::evalOpParm(result, thissop,
"pieceattrib", cookparms.
getCookTime(), 0);
1128 if (!thissop)
return getUseCustomPos();
1130 OP_Utils::evalOpParm(result, thissop,
"usecustompos", cookparms.
getCookTime(), 0);
1138 if (!thissop)
return getPosAttrib();
1140 OP_Utils::evalOpParm(result, thissop,
"posattrib", cookparms.
getCookTime(), 0);
1148 if (!thissop)
return getUseRangeMin();
1150 OP_Utils::evalOpParm(result, thissop,
"userangemin", cookparms.
getCookTime(), 0);
1158 if (!thissop)
return getRangeMin();
1160 OP_Utils::evalOpParm(result, thissop,
"rangemin", cookparms.
getCookTime(), 0);
1168 if (!thissop)
return getUseRangeMax();
1170 OP_Utils::evalOpParm(result, thissop,
"userangemax", cookparms.
getCookTime(), 0);
1178 if (!thissop)
return getRangeMax();
1180 OP_Utils::evalOpParm(result, thissop,
"rangemax", cookparms.
getCookTime(), 0);
1188 if (!thissop)
return getUseCenterWidth();
1190 OP_Utils::evalOpParm(result, thissop,
"usecenterwidth", cookparms.
getCookTime(), 0);
1198 if (!thissop)
return getWidth();
1200 OP_Utils::evalOpParm(result, thissop,
"width", cookparms.
getCookTime(), 0);
1208 if (!thissop)
return getWidthScale();
1210 OP_Utils::evalOpParm(result, thissop,
"widthscale", cookparms.
getCookTime(), 0);
1218 if (!thissop)
return getCenterType();
1220 OP_Utils::evalOpParm(result, thissop,
"centertype", cookparms.
getCookTime(), 0);
1228 if (!thissop)
return getFixedCenter();
1230 OP_Utils::evalOpParm(result, thissop,
"fixedcenter", cookparms.
getCookTime(), 0);
1238 if (!thissop)
return getColorramp();
1240 OP_Utils::evalOpParm(result, thissop,
"colorramp", cookparms.
getCookTime(), 0);
1248 if (!thissop)
return getVectorScale();
1250 OP_Utils::evalOpParm(result, thissop,
"vectorscale", cookparms.
getCookTime(), 0);
1258 if (!thissop)
return getAttribName();
1260 OP_Utils::evalOpParm(result, thissop,
"attribname", cookparms.
getCookTime(), 0);
1268 if (!thissop)
return getUseTotalAttrib();
1270 OP_Utils::evalOpParm(result, thissop,
"usetotalattrib", cookparms.
getCookTime(), 0);
1278 if (!thissop)
return getTotalAttribName();
1280 OP_Utils::evalOpParm(result, thissop,
"totalattribname", cookparms.
getCookTime(), 0);
1288 if (!thissop)
return getUseRangeGroup();
1290 OP_Utils::evalOpParm(result, thissop,
"userangegroup", cookparms.
getCookTime(), 0);
1298 if (!thissop)
return getRangeGroup();
1300 OP_Utils::evalOpParm(result, thissop,
"rangegroup", cookparms.
getCookTime(), 0);
1308 if (!thissop)
return getBakeIntoOutput();
1310 OP_Utils::evalOpParm(result, thissop,
"bakeintooutput", cookparms.
getCookTime(), 0);
1318 if (!thissop)
return getUseRemapRange();
1320 OP_Utils::evalOpParm(result, thissop,
"useremaprange", cookparms.
getCookTime(), 0);
1328 if (!thissop)
return getRemapRange();
1330 OP_Utils::evalOpParm(result, thissop,
"remaprange", cookparms.
getCookTime(), 0);
1338 int64 myCurvatureType;
1339 int64 myPrincipalType;
1340 int64 myPrincipalSign;
1341 int64 myPrincipalReportAs;
1343 int64 myIntegrationMode;
1346 bool myScaleNormalize;
1347 int64 myIntegrationDomain;
1349 bool myUseCustomPos;
1355 bool myUseCenterWidth;
1363 bool myUseTotalAttrib;
1365 bool myUseRangeGroup;
1367 bool myBakeIntoOutput;
1368 bool myUseRemapRange;
Measure getMeasure() const
const UT_StringHolder & getPieceAttrib() const
Measure opMeasure(const SOP_NodeVerb::CookParms &cookparms) const
CenterType opCenterType(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, bool v)
bool opUseRangeGroup(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getAttribName() const
static void loadData(UT_IStream &is, UT_Matrix4D &v)
UT_StringHolder opPieceAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
bool getUseRangeMin() const
static void loadData(UT_IStream &is, UT_Vector3D &v)
bool getUseCenterWidth() const
PrincipalType getPrincipalType() const
SrcComp opSrcComp(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
bool getBakeIntoOutput() const
SOP_Node * getNode() const
void setWidth(fpreal64 val)
static void loadData(UT_IStream &is, bool &v)
fpreal64 opWidth(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, PRM_DataItemHandle s)
bool getUseTotalAttrib() const
void setPrincipalReportAs(PrincipalReportAs val)
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setRangeMax(fpreal64 val)
bool opBakeIntoOutput(const SOP_NodeVerb::CookParms &cookparms) const
UT_SharedPtr< UT_Ramp > getColorramp() const
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
CurvatureType getCurvatureType() const
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
bool opUseRangeMin(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix2D v)
exint bread(int32 *buffer, exint asize=1)
GT_API const UT_StringHolder time
UT_Vector2T< fpreal64 > UT_Vector2D
WidthScale opWidthScale(const SOP_NodeVerb::CookParms &cookparms) const
GLuint const GLfloat * val
IntegrationMode opIntegrationMode(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
const UT_StringHolder & getTotalAttribName() const
static void loadData(UT_IStream &is, UT_Matrix3D &v)
void setUseTotalAttrib(bool val)
bool getUseRemapRange() const
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
void setIntegrationMode(IntegrationMode val)
exint getNestNumParms(TempIndex idx) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
SYS_FORCE_INLINE const char * buffer() const
const SOP_GraphProxy * graph() const
void setUseRemapRange(bool val)
PrincipalReportAs opPrincipalReportAs(const SOP_NodeVerb::CookParms &cookparms) const
An output stream object that owns its own string buffer storage.
UT_StringHolder opGroup(const SOP_NodeVerb::CookParms &cookparms) const
void setUseRangeMax(bool val)
ParmType getNestParmType(TempIndex fieldnum) const override
void copyFrom(const SOP_NodeParms *src) override
IntegrationDomain opIntegrationDomain(const SOP_NodeVerb::CookParms &cookparms) const
CenterType getCenterType() const
UT_SharedPtr< UT_Ramp > opColorramp(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opVectorScale(const SOP_NodeVerb::CookParms &cookparms) const
bool getUseRangeMax() const
void setUmbilicCutoff(fpreal64 val)
static void saveData(std::ostream &os, UT_Vector2D v)
void setScaleNormalize(bool val)
IntegrationDomain getIntegrationDomain() const
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
GroupType getGroupType() const
CurvatureType opCurvatureType(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getSrcAttrib() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
void setPosAttrib(const UT_StringHolder &val)
IntegrationMode getIntegrationMode() const
bool opUseCenterWidth(const SOP_NodeVerb::CookParms &cookparms) const
void setIntegrationDomain(IntegrationDomain val)
UT_StringHolder opRangeGroup(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseRemapRange(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opSrcAttrib(const SOP_NodeVerb::CookParms &cookparms) const
PrincipalType opPrincipalType(const SOP_NodeVerb::CookParms &cookparms) const
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
static void loadData(UT_IStream &is, UT_Vector2I &v)
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
UT_Vector2D getRemapRange() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
bool getUseRangeGroup() const
bool opUseTotalAttrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, fpreal64 &v)
void setMeasure(Measure val)
void setVectorScale(fpreal64 val)
void setUseCenterWidth(bool val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
void setRemapRange(UT_Vector2D val)
void setRangeGroup(const UT_StringHolder &val)
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
GLint GLenum GLsizei GLint GLsizei const void * data
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
static void loadData(UT_IStream &is, UT_StringHolder &v)
PrincipalSign getPrincipalSign() const
void setPrincipalType(PrincipalType val)
void setGroup(const UT_StringHolder &val)
PrincipalSign opPrincipalSign(const SOP_NodeVerb::CookParms &cookparms) const
void setTotalAttribName(const UT_StringHolder &val)
bool operator==(const SOP_Measure_2_0Parms &src) const
void setColorramp(UT_SharedPtr< UT_Ramp > val)
bool opUseRangeMax(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opFixedCenter(const SOP_NodeVerb::CookParms &cookparms) const
void setPieceAttrib(const UT_StringHolder &val)
void setUseRangeMin(bool val)
static void saveData(std::ostream &os, fpreal64 v)
fpreal64 opRangeMin(const SOP_NodeVerb::CookParms &cookparms) const
void setUseRangeGroup(bool val)
fpreal64 opRangeMax(const SOP_NodeVerb::CookParms &cookparms) const
bool load(UT_IStream &is)
static void loadData(UT_IStream &is, UT_Vector3I &v)
static void loadData(UT_IStream &is, UT_Vector4D &v)
fpreal64 getVectorScale() const
void setAttribName(const UT_StringHolder &val)
bool getScaleNormalize() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
static void saveData(std::ostream &os, UT_Vector4D v)
void setRangeMin(fpreal64 val)
void save(std::ostream &os) const
fpreal64 getRangeMin() const
void saveBinary(std::ostream &os) const
Save string to binary stream.
void setUseCustomPos(bool val)
void setFixedCenter(fpreal64 val)
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
static void saveData(std::ostream &os, UT_Matrix4D v)
UT_Vector2D opRemapRange(const SOP_NodeVerb::CookParms &cookparms) const
GT_API const UT_StringHolder version
DEP_MicroNode * depnode() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
static void loadData(UT_IStream &is, UT_Vector4I &v)
bool opUseCustomPos(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
static void saveData(std::ostream &os, UT_Matrix3D v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
#define SCALAR(T)
Simplify checking for scalar types.
fpreal64 getWidth() const
bool getUseCustomPos() const
const char * getNestParmName(TempIndex fieldnum) const override
UT_StringHolder opPosAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
void setGroupType(GroupType val)
WidthScale getWidthScale() const
void setCurvatureType(CurvatureType val)
Utility class for containing a color ramp.
~SOP_Measure_2_0Parms() override
static void loadData(UT_IStream &is, int64 &v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
GLdouble GLdouble GLdouble r
void buildFromOp(const SOP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
static void saveData(std::ostream &os, UT_Vector3D v)
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
fpreal getCookTime() const
const UT_StringHolder & getRangeGroup() const
void setPrincipalSign(PrincipalSign val)
const char * findChar(int c) const
fpreal64 opUmbilicCutoff(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
UT_StringHolder opTotalAttribName(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getFixedCenter() const
UT_StringHolder opAttribName(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getUmbilicCutoff() const
void setCenterType(CenterType val)
bool opScaleNormalize(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getGroup() const
PrincipalReportAs getPrincipalReportAs() const
static void saveData(std::ostream &os, UT_StringHolder s)
void setSrcAttrib(const UT_StringHolder &val)
GLsizei const GLfloat * value
static void loadData(UT_IStream &is, UT_Matrix2D &v)
fpreal64 getRangeMax() const
bool operator!=(const SOP_Measure_2_0Parms &src) const
const OP_Context & context() const
static void saveData(std::ostream &os, int64 v)
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
void loadFromOpSubclass(const LoadParms &loadparms) override
SYS_FORCE_INLINE bool isstring() const
void setBakeIntoOutput(bool val)
SrcComp getSrcComp() const
const UT_StringHolder & getPosAttrib() const
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
void setSrcComp(SrcComp val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
GroupType opGroupType(const SOP_NodeVerb::CookParms &cookparms) const
void setWidthScale(WidthScale val)