HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SOP_CurveNetwork.proto.h
Go to the documentation of this file.
1 /* Automagically Generated by generate_proto.py
2  * Do not Edit
3  */
4 #pragma once
5 
6 #include <SOP/SOP_NodeVerb.h>
7 #include <OP/OP_Utils.h>
8 #include <PRM/PRM_Parm.h>
9 #include <UT/UT_IStream.h>
10 #include <UT/UT_NTStreamUtil.h>
11 #include <UT/UT_Ramp.h>
12 #include <UT/UT_SharedPtr.h>
13 #include <UT/UT_StringHolder.h>
14 #include <UT/UT_StringStream.h>
15 #include <UT/UT_VectorTypes.h>
16 #include <SYS/SYS_Types.h>
17 
18 using namespace UT::Literal;
19 
20 class DEP_MicroNode;
21 namespace SOP_CurveNetworkEnums
22 {
23  enum class Surftype
24  {
25  ROWS = 0,
26  COLS,
27  ROWCOL,
28  TRIANGLES,
29  QUADS,
32  };
33  enum class Closev
34  {
35  NONEWV = 0,
36  WV,
37  IFPRIMWV
38  };
39  enum class Skinops
40  {
41  ALL = 0,
42  GROUP,
43  SKIP
44  };
45 }
46 
47 
49 {
50 public:
51  static int version() { return 1; }
52 
54  {
55  myUprims = ""_sh;
56  myVprims = ""_sh;
57  mySurftype = 4;
58  myKeepshape = false;
59  myClosev = 0;
60  myForce = false;
61  myOrderv = 4;
62  mySkinops = 0;
63  myInc = 2;
64  myPrim = false;
65  myPolys = true;
66 
67  }
68 
69  explicit SOP_CurveNetworkParms(const SOP_CurveNetworkParms &) = default;
70 
72 
74  {
75  if (myUprims != src.myUprims) return false;
76  if (myVprims != src.myVprims) return false;
77  if (mySurftype != src.mySurftype) return false;
78  if (myKeepshape != src.myKeepshape) return false;
79  if (myClosev != src.myClosev) return false;
80  if (myForce != src.myForce) return false;
81  if (myOrderv != src.myOrderv) return false;
82  if (mySkinops != src.mySkinops) return false;
83  if (myInc != src.myInc) return false;
84  if (myPrim != src.myPrim) return false;
85  if (myPolys != src.myPolys) return false;
86 
87  return true;
88  }
92 
93 
94 
95  void buildFromOp(const OP_Node *node, fpreal time, DEP_MicroNode *depnode)
96  {
97  if (true)
98  OP_Utils::evalOpParm(myUprims, node, "uprims", time, 0);
99  else myUprims = ""_sh;
100  if (true)
101  OP_Utils::evalOpParm(myVprims, node, "vprims", time, 0);
102  else myVprims = ""_sh;
103  if (true)
104  OP_Utils::evalOpParm(mySurftype, node, "surftype", time, 0);
105  else mySurftype = 4;
106  if (true)
107  OP_Utils::evalOpParm(myKeepshape, node, "keepshape", time, 0);
108  else myKeepshape = false;
109  if (true && ( (!((((node->getInput(1)!=0)==1))||((getVprims()!="")))) ) )
110  OP_Utils::evalOpParm(myClosev, node, "closev", time, 0);
111  else myClosev = 0;
112  if (true && ( (!((((node->getInput(1)!=0)==1))||((getVprims()!="")))) ) )
113  OP_Utils::evalOpParm(myForce, node, "force", time, 0);
114  else myForce = false;
115  if (true && ( (!((((node->getInput(1)!=0)==1))||((getVprims()!=""))||((getForce()==0)))) ) )
116  OP_Utils::evalOpParm(myOrderv, node, "orderv", time, 0);
117  else myOrderv = 4;
118  if (true && ( (!((((node->getInput(1)!=0)==1))||((getVprims()!="")))) ) )
119  OP_Utils::evalOpParm(mySkinops, node, "skinops", time, 0);
120  else mySkinops = 0;
121  if (true && ( (!((((node->getInput(1)!=0)==1))||((getVprims()!=""))||((int64(getSkinops())==0)))) ) )
122  OP_Utils::evalOpParm(myInc, node, "inc", time, 0);
123  else myInc = 2;
124  if (true)
125  OP_Utils::evalOpParm(myPrim, node, "prim", time, 0);
126  else myPrim = false;
127  if (true)
128  OP_Utils::evalOpParm(myPolys, node, "polys", time, 0);
129  else myPolys = true;
130 
131  }
132 
133 
134  virtual void loadFromOpSubclass(const LoadParms &loadparms)
135  {
136  buildFromOp(loadparms.node(), loadparms.context().getTime(), loadparms.depnode());
137  }
138 
139 
140  virtual void copyFrom(const SOP_NodeParms *src)
141  {
142  *this = *((const SOP_CurveNetworkParms *)src);
143  }
144 
145  template <typename T>
146  void
147  doGetParmValue(exint idx, T &value) const
148  {
149  switch (idx)
150  {
151  case 0:
152  coerceValue(value, myUprims);
153  break;
154  case 1:
155  coerceValue(value, myVprims);
156  break;
157  case 2:
158  coerceValue(value, mySurftype);
159  break;
160  case 3:
161  coerceValue(value, myKeepshape);
162  break;
163  case 4:
164  coerceValue(value, myClosev);
165  break;
166  case 5:
167  coerceValue(value, myForce);
168  break;
169  case 6:
170  coerceValue(value, myOrderv);
171  break;
172  case 7:
173  coerceValue(value, mySkinops);
174  break;
175  case 8:
176  coerceValue(value, myInc);
177  break;
178  case 9:
179  coerceValue(value, myPrim);
180  break;
181  case 10:
182  coerceValue(value, myPolys);
183  break;
184 
185  }
186  }
187 
188  void getParmValue(exint idx, exint &value) const
189  { doGetParmValue(idx, value); }
190  void getParmValue(exint idx, fpreal &value) const
191  { doGetParmValue(idx, value); }
193  { doGetParmValue(idx, value); }
195  { doGetParmValue(idx, value); }
197  { doGetParmValue(idx, value); }
199  { doGetParmValue(idx, value); }
201  { doGetParmValue(idx, value); }
203  { doGetParmValue(idx, value); }
205  { doGetParmValue(idx, value); }
207  { doGetParmValue(idx, value); }
209  { doGetParmValue(idx, value); }
210 
211  template <typename T>
212  void
213  doSetParmValue(exint idx, const T &value)
214  {
215  switch (idx)
216  {
217  case 0:
218  coerceValue(myUprims, value);
219  break;
220  case 1:
221  coerceValue(myVprims, value);
222  break;
223  case 2:
224  coerceValue(mySurftype, value);
225  break;
226  case 3:
227  coerceValue(myKeepshape, value);
228  break;
229  case 4:
230  coerceValue(myClosev, value);
231  break;
232  case 5:
233  coerceValue(myForce, value);
234  break;
235  case 6:
236  coerceValue(myOrderv, value);
237  break;
238  case 7:
239  coerceValue(mySkinops, value);
240  break;
241  case 8:
242  coerceValue(myInc, value);
243  break;
244  case 9:
245  coerceValue(myPrim, value);
246  break;
247  case 10:
248  coerceValue(myPolys, value);
249  break;
250 
251  }
252  }
253 
254  void setParmValue(exint idx, const exint &value)
255  { doSetParmValue(idx, value); }
256  void setParmValue(exint idx, const fpreal &value)
257  { doSetParmValue(idx, value); }
258  void setParmValue(exint idx, const UT_Vector2D &value)
259  { doSetParmValue(idx, value); }
260  void setParmValue(exint idx, const UT_Vector3D &value)
261  { doSetParmValue(idx, value); }
262  void setParmValue(exint idx, const UT_Vector4D &value)
263  { doSetParmValue(idx, value); }
264  void setParmValue(exint idx, const UT_Matrix2D &value)
265  { doSetParmValue(idx, value); }
266  void setParmValue(exint idx, const UT_Matrix3D &value)
267  { doSetParmValue(idx, value); }
268  void setParmValue(exint idx, const UT_Matrix4D &value)
269  { doSetParmValue(idx, value); }
271  { doSetParmValue(idx, value); }
273  { doSetParmValue(idx, value); }
275  { doSetParmValue(idx, value); }
276 
277  virtual exint getNumParms() const
278  {
279  return 11;
280  }
281 
282  virtual const char *getParmName(exint fieldnum) const
283  {
284  switch (fieldnum)
285  {
286  case 0:
287  return "uprims";
288  case 1:
289  return "vprims";
290  case 2:
291  return "surftype";
292  case 3:
293  return "keepshape";
294  case 4:
295  return "closev";
296  case 5:
297  return "force";
298  case 6:
299  return "orderv";
300  case 7:
301  return "skinops";
302  case 8:
303  return "inc";
304  case 9:
305  return "prim";
306  case 10:
307  return "polys";
308 
309  }
310  return 0;
311  }
312 
313  virtual ParmType getParmType(exint fieldnum) const
314  {
315  switch (fieldnum)
316  {
317  case 0:
318  return PARM_STRING;
319  case 1:
320  return PARM_STRING;
321  case 2:
322  return PARM_INTEGER;
323  case 3:
324  return PARM_INTEGER;
325  case 4:
326  return PARM_INTEGER;
327  case 5:
328  return PARM_INTEGER;
329  case 6:
330  return PARM_INTEGER;
331  case 7:
332  return PARM_INTEGER;
333  case 8:
334  return PARM_INTEGER;
335  case 9:
336  return PARM_INTEGER;
337  case 10:
338  return PARM_INTEGER;
339 
340  }
341  return PARM_UNSUPPORTED;
342  }
343 
344  // Boiler plate to load individual types.
345  static void loadData(UT_IStream &is, int64 &v)
346  { is.bread(&v, 1); }
347  static void loadData(UT_IStream &is, bool &v)
348  { int64 iv; is.bread(&iv, 1); v = iv; }
349  static void loadData(UT_IStream &is, fpreal64 &v)
350  { is.bread<fpreal64>(&v, 1); }
351  static void loadData(UT_IStream &is, UT_Vector2D &v)
352  { is.bread<fpreal64>(&v.x(), 1); is.bread<fpreal64>(&v.y(), 1); }
353  static void loadData(UT_IStream &is, UT_Vector3D &v)
354  { is.bread<fpreal64>(&v.x(), 1); is.bread<fpreal64>(&v.y(), 1);
355  is.bread<fpreal64>(&v.z(), 1); }
356  static void loadData(UT_IStream &is, UT_Vector4D &v)
357  { is.bread<fpreal64>(&v.x(), 1); is.bread<fpreal64>(&v.y(), 1);
358  is.bread<fpreal64>(&v.z(), 1); is.bread<fpreal64>(&v.w(), 1); }
359  static void loadData(UT_IStream &is, UT_Matrix2D &v)
360  { for (int r = 0; r < 2; r++) for (int c = 0; c < 2; c++) is.bread<fpreal64>(&v(r, c), 1); }
361  static void loadData(UT_IStream &is, UT_Matrix3D &v)
362  { for (int r = 0; r < 3; r++) for (int c = 0; c < 3; c++) is.bread<fpreal64>(&v(r, c), 1); }
363  static void loadData(UT_IStream &is, UT_Matrix4D &v)
364  { for (int r = 0; r < 4; r++) for (int c = 0; c < 4; c++) is.bread<fpreal64>(&v(r, c), 1); }
365  static void loadData(UT_IStream &is, UT_Vector2I &v)
366  { is.bread<int64>(&v.x(), 1); is.bread<int64>(&v.y(), 1); }
367  static void loadData(UT_IStream &is, UT_Vector3I &v)
368  { is.bread<int64>(&v.x(), 1); is.bread<int64>(&v.y(), 1);
369  is.bread<int64>(&v.z(), 1); }
370  static void loadData(UT_IStream &is, UT_Vector4I &v)
371  { is.bread<int64>(&v.x(), 1); is.bread<int64>(&v.y(), 1);
372  is.bread<int64>(&v.z(), 1); is.bread<int64>(&v.w(), 1); }
374  { is.bread(v); }
376  { UT_StringHolder rampdata;
377  loadData(is, rampdata);
378  if (rampdata.isstring())
379  {
380  v.reset(new UT_Ramp());
381  UT_IStream istr((const char *) rampdata, rampdata.length(), UT_ISTREAM_ASCII);
382  v->load(istr);
383  }
384  else v.reset();
385  }
388  loadData(is, data);
389  if (data.isstring())
390  {
391  // Find the data type.
392  char *colon = UT_StringWrap(data).findChar(':');
393  if (colon)
394  {
395  int typelen = colon - data.buffer();
397  type.strncpy(data.buffer(), typelen);
398  UT_IStream istr(((const char *) data) + typelen + 1, data.length() - (typelen + 1), UT_ISTREAM_BINARY);
399 
400  v = PRM_DataFactory::parseBinary(type.buffer(), istr);
401  }
402  }
403  else v.reset();
404  }
405 
406  static void saveData(std::ostream &os, int64 v)
407  { UTwrite(os, &v); }
408  static void saveData(std::ostream &os, bool v)
409  { int64 iv = v; UTwrite(os, &iv); }
410  static void saveData(std::ostream &os, fpreal64 v)
411  { UTwrite<fpreal64>(os, &v); }
412  static void saveData(std::ostream &os, UT_Vector2D v)
413  { UTwrite<fpreal64>(os, &v.x()); UTwrite<fpreal64>(os, &v.y()); }
414  static void saveData(std::ostream &os, UT_Vector3D v)
415  { UTwrite<fpreal64>(os, &v.x()); UTwrite<fpreal64>(os, &v.y());
416  UTwrite<fpreal64>(os, &v.z()); }
417  static void saveData(std::ostream &os, UT_Vector4D v)
418  { UTwrite<fpreal64>(os, &v.x()); UTwrite<fpreal64>(os, &v.y());
419  UTwrite<fpreal64>(os, &v.z()); UTwrite<fpreal64>(os, &v.w()); }
420  static void saveData(std::ostream &os, UT_Matrix2D v)
422  static void saveData(std::ostream &os, UT_Matrix3D v)
424  static void saveData(std::ostream &os, UT_Matrix4D v)
426  static void saveData(std::ostream &os, UT_StringHolder s)
427  { UT_StringWrap(s).saveBinary(os); }
428  static void saveData(std::ostream &os, UT_SharedPtr<UT_Ramp> s)
429  { UT_StringHolder result;
430  UT_OStringStream ostr;
431  if (s) s->save(ostr);
432  result = ostr.str();
433  saveData(os, result);
434  }
435  static void saveData(std::ostream &os, PRM_DataItemHandle s)
436  { UT_StringHolder result;
437  UT_OStringStream ostr;
438  if (s)
439  {
440  ostr << s->getDataTypeToken();
441  ostr << ":";
442  s->saveBinary(ostr);
443  }
444  result = ostr.str();
445  saveData(os, result);
446  }
447 
448 
449  void save(std::ostream &os) const
450  {
451  int32 v = version();
452  UTwrite(os, &v);
453  saveData(os, myUprims);
454  saveData(os, myVprims);
455  saveData(os, mySurftype);
456  saveData(os, myKeepshape);
457  saveData(os, myClosev);
458  saveData(os, myForce);
459  saveData(os, myOrderv);
460  saveData(os, mySkinops);
461  saveData(os, myInc);
462  saveData(os, myPrim);
463  saveData(os, myPolys);
464 
465  }
466 
467  bool load(UT_IStream &is)
468  {
469  int32 v;
470  is.bread(&v, 1);
471  if (version() != v)
472  {
473  // Fail incompatible versions
474  return false;
475  }
476  loadData(is, myUprims);
477  loadData(is, myVprims);
478  loadData(is, mySurftype);
479  loadData(is, myKeepshape);
480  loadData(is, myClosev);
481  loadData(is, myForce);
482  loadData(is, myOrderv);
483  loadData(is, mySkinops);
484  loadData(is, myInc);
485  loadData(is, myPrim);
486  loadData(is, myPolys);
487 
488  return true;
489  }
490 
491  const UT_StringHolder & getUprims() const { return myUprims; }
492  void setUprims(const UT_StringHolder & val) { myUprims = val; }
494  {
495  SOP_Node *thissop = cookparms.getNode();
496  if (!thissop) return getUprims();
497  UT_StringHolder result;
498  OP_Utils::evalOpParm(result, thissop, "uprims", cookparms.getCookTime(), 0);
499  return result;
500  }
501  const UT_StringHolder & getVprims() const { return myVprims; }
502  void setVprims(const UT_StringHolder & val) { myVprims = val; }
504  {
505  SOP_Node *thissop = cookparms.getNode();
506  if (!thissop) return getVprims();
507  UT_StringHolder result;
508  OP_Utils::evalOpParm(result, thissop, "vprims", cookparms.getCookTime(), 0);
509  return result;
510  }
511  Surftype getSurftype() const { return Surftype(mySurftype); }
512  void setSurftype(Surftype val) { mySurftype = int64(val); }
514  {
515  SOP_Node *thissop = cookparms.getNode();
516  if (!thissop) return getSurftype();
517  int64 result;
518  OP_Utils::evalOpParm(result, thissop, "surftype", cookparms.getCookTime(), 0);
519  return Surftype(result);
520  }
521  bool getKeepshape() const { return myKeepshape; }
522  void setKeepshape(bool val) { myKeepshape = val; }
523  bool opKeepshape(const SOP_NodeVerb::CookParms &cookparms) const
524  {
525  SOP_Node *thissop = cookparms.getNode();
526  if (!thissop) return getKeepshape();
527  bool result;
528  OP_Utils::evalOpParm(result, thissop, "keepshape", cookparms.getCookTime(), 0);
529  return result;
530  }
531  Closev getClosev() const { return Closev(myClosev); }
532  void setClosev(Closev val) { myClosev = int64(val); }
533  Closev opClosev(const SOP_NodeVerb::CookParms &cookparms) const
534  {
535  SOP_Node *thissop = cookparms.getNode();
536  if (!thissop) return getClosev();
537  int64 result;
538  OP_Utils::evalOpParm(result, thissop, "closev", cookparms.getCookTime(), 0);
539  return Closev(result);
540  }
541  bool getForce() const { return myForce; }
542  void setForce(bool val) { myForce = val; }
543  bool opForce(const SOP_NodeVerb::CookParms &cookparms) const
544  {
545  SOP_Node *thissop = cookparms.getNode();
546  if (!thissop) return getForce();
547  bool result;
548  OP_Utils::evalOpParm(result, thissop, "force", cookparms.getCookTime(), 0);
549  return result;
550  }
551  int64 getOrderv() const { return myOrderv; }
552  void setOrderv(int64 val) { myOrderv = val; }
553  int64 opOrderv(const SOP_NodeVerb::CookParms &cookparms) const
554  {
555  SOP_Node *thissop = cookparms.getNode();
556  if (!thissop) return getOrderv();
557  int64 result;
558  OP_Utils::evalOpParm(result, thissop, "orderv", cookparms.getCookTime(), 0);
559  return result;
560  }
561  Skinops getSkinops() const { return Skinops(mySkinops); }
562  void setSkinops(Skinops val) { mySkinops = int64(val); }
563  Skinops opSkinops(const SOP_NodeVerb::CookParms &cookparms) const
564  {
565  SOP_Node *thissop = cookparms.getNode();
566  if (!thissop) return getSkinops();
567  int64 result;
568  OP_Utils::evalOpParm(result, thissop, "skinops", cookparms.getCookTime(), 0);
569  return Skinops(result);
570  }
571  int64 getInc() const { return myInc; }
572  void setInc(int64 val) { myInc = val; }
573  int64 opInc(const SOP_NodeVerb::CookParms &cookparms) const
574  {
575  SOP_Node *thissop = cookparms.getNode();
576  if (!thissop) return getInc();
577  int64 result;
578  OP_Utils::evalOpParm(result, thissop, "inc", cookparms.getCookTime(), 0);
579  return result;
580  }
581  bool getPrim() const { return myPrim; }
582  void setPrim(bool val) { myPrim = val; }
583  bool opPrim(const SOP_NodeVerb::CookParms &cookparms) const
584  {
585  SOP_Node *thissop = cookparms.getNode();
586  if (!thissop) return getPrim();
587  bool result;
588  OP_Utils::evalOpParm(result, thissop, "prim", cookparms.getCookTime(), 0);
589  return result;
590  }
591  bool getPolys() const { return myPolys; }
592  void setPolys(bool val) { myPolys = val; }
593  bool opPolys(const SOP_NodeVerb::CookParms &cookparms) const
594  {
595  SOP_Node *thissop = cookparms.getNode();
596  if (!thissop) return getPolys();
597  bool result;
598  OP_Utils::evalOpParm(result, thissop, "polys", cookparms.getCookTime(), 0);
599  return result;
600  }
601 
602 private:
603  UT_StringHolder myUprims;
604  UT_StringHolder myVprims;
605  int64 mySurftype;
606  bool myKeepshape;
607  int64 myClosev;
608  bool myForce;
609  int64 myOrderv;
610  int64 mySkinops;
611  int64 myInc;
612  bool myPrim;
613  bool myPolys;
614 
615 };
static void saveData(std::ostream &os, UT_Vector4D v)
void setParmValue(exint idx, const UT_Matrix2D &value)
void setParmValue(exint idx, const UT_Vector2D &value)
static void loadData(UT_IStream &is, UT_Matrix2D &v)
void setParmValue(exint idx, const UT_StringHolder &value)
SOP_Node * getNode() const
Definition: SOP_NodeVerb.h:492
Skinops opSkinops(const SOP_NodeVerb::CookParms &cookparms) const
T & z(void)
Definition: UT_Vector4.h:372
void getParmValue(exint idx, PRM_DataItemHandle &value) const
void doSetParmValue(exint idx, const T &value)
virtual ParmType getParmType(exint fieldnum) const
static void loadData(UT_IStream &is, fpreal64 &v)
virtual void loadFromOpSubclass(const LoadParms &loadparms)
exint bread(int32 *buffer, exint asize=1)
void doGetParmValue(exint idx, T &value) const
void getParmValue(exint idx, UT_Vector4D &value) const
fpreal getTime() const
Definition: OP_Context.h:34
const GLdouble * v
Definition: glcorearb.h:836
static void loadData(UT_IStream &is, UT_Vector3D &v)
virtual exint getNumParms() const
void getParmValue(exint idx, UT_SharedPtr< UT_Ramp > &value) const
static void loadData(UT_IStream &is, UT_StringHolder &v)
static void loadData(UT_IStream &is, bool &v)
static void loadData(UT_IStream &is, UT_Vector3I &v)
T & x(void)
Definition: UT_Vector2.h:284
virtual void copyFrom(const SOP_NodeParms *src)
An output stream object that owns its own string buffer storage.
void getParmValue(exint idx, UT_Matrix2D &value) const
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
const UT_WorkBuffer & str() const
Returns a read-only reference to the underlying UT_WorkBuffer.
SYS_FORCE_INLINE T & x(void)
Definition: UT_Vector3.h:581
void setUprims(const UT_StringHolder &val)
void getParmValue(exint idx, UT_Matrix4D &value) const
static void loadData(UT_IStream &is, UT_Vector2D &v)
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
Closev opClosev(const SOP_NodeVerb::CookParms &cookparms) const
SYS_FORCE_INLINE T & z(void)
Definition: UT_Vector3.h:585
bool opPrim(const SOP_NodeVerb::CookParms &cookparms) const
void setParmValue(exint idx, const UT_Vector4D &value)
static void saveData(std::ostream &os, UT_Vector3D v)
static void saveData(std::ostream &os, fpreal64 v)
long long int64
Definition: SYS_Types.h:100
static void saveData(std::ostream &os, int64 v)
void getParmValue(exint idx, fpreal &value) const
exint length() const
bool opPolys(const SOP_NodeVerb::CookParms &cookparms) const
char * findChar(int c) const
Find first occurrance of character. Returns NULL upon failure.
Definition: UT_String.h:550
SYS_FORCE_INLINE const char * buffer() const
static void saveData(std::ostream &os, PRM_DataItemHandle s)
bool operator==(const SOP_CurveNetworkParms &src) const
Surftype opSurftype(const SOP_NodeVerb::CookParms &cookparms) const
void setParmValue(exint idx, const exint &value)
int64 exint
Definition: SYS_Types.h:109
UT_StringHolder opUprims(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector2D v)
const OP_Node * node() const
Definition: SOP_NodeVerb.h:104
double fpreal64
Definition: SYS_Types.h:185
const UT_StringHolder & getVprims() const
bool load(UT_IStream &is)
static void saveData(std::ostream &os, UT_Matrix3D v)
OP_Node * getInput(unsigned idx, bool mark_used=false) const
Returns the node connected to a particular input (may be null).
static void loadData(UT_IStream &is, UT_Matrix4D &v)
static void saveData(std::ostream &os, UT_Matrix4D v)
void getParmValue(exint idx, UT_Vector2D &value) const
void getParmValue(exint idx, UT_Vector3D &value) const
UT_StringHolder opVprims(const SOP_NodeVerb::CookParms &cookparms) const
void buildFromOp(const OP_Node *node, fpreal time, DEP_MicroNode *depnode)
GLboolean * data
Definition: glcorearb.h:130
int int32
Definition: SYS_Types.h:28
T & y(void)
Definition: UT_Vector4.h:370
static void loadData(UT_IStream &is, UT_Matrix3D &v)
int64 opOrderv(const SOP_NodeVerb::CookParms &cookparms) const
void saveBinary(std::ostream &os) const
Save string to binary stream.
Definition: UT_String.h:294
const UT_StringHolder & getUprims() const
DEP_MicroNode * depnode() const
Definition: SOP_NodeVerb.h:111
int64 opInc(const SOP_NodeVerb::CookParms &cookparms) const
void setParmValue(exint idx, const PRM_DataItemHandle &value)
static void loadData(UT_IStream &is, int64 &v)
void setParmValue(exint idx, const fpreal &value)
SYS_FORCE_INLINE T & y(void)
Definition: UT_Vector3.h:583
GLsizei const GLfloat * value
Definition: glcorearb.h:823
double fpreal
Definition: SYS_Types.h:263
void strncpy(const char *src, exint maxlen)
void setParmValue(exint idx, const UT_Matrix3D &value)
static void loadData(UT_IStream &is, UT_Vector4I &v)
Utility class for containing a color ramp.
Definition: UT_Ramp.h:84
GLuint GLfloat * val
Definition: glcorearb.h:1607
void setVprims(const UT_StringHolder &val)
static void saveData(std::ostream &os, UT_Matrix2D v)
#define SOP_API
Definition: SOP_API.h:10
const char * buffer() const
void setParmValue(exint idx, const UT_Matrix4D &value)
GLint GLint GLsizei GLint GLenum GLenum type
Definition: glcorearb.h:107
fpreal getCookTime() const
Definition: SOP_NodeVerb.h:499
static void saveData(std::ostream &os, UT_StringHolder s)
T & x(void)
Definition: UT_Vector4.h:368
void getParmValue(exint idx, exint &value) const
static void saveData(std::ostream &os, bool v)
T & y(void)
Definition: UT_Vector2.h:286
GLboolean r
Definition: glcorearb.h:1221
bool opForce(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
virtual const char * getParmName(exint fieldnum) const
T & w(void)
Definition: UT_Vector4.h:374
void getParmValue(exint idx, UT_StringHolder &value) const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
bool opKeepshape(const SOP_NodeVerb::CookParms &cookparms) const
void setParmValue(exint idx, const UT_SharedPtr< UT_Ramp > &value)
void setParmValue(exint idx, const UT_Vector3D &value)
void setSurftype(Surftype val)
static void loadData(UT_IStream &is, UT_Vector2I &v)
const OP_Context & context() const
Definition: SOP_NodeVerb.h:109
void getParmValue(exint idx, UT_Matrix3D &value) const
void save(std::ostream &os) const
static void loadData(UT_IStream &is, UT_Vector4D &v)
SYS_FORCE_INLINE bool isstring() const
GLenum src
Definition: glcorearb.h:1792