51 targetfield =
""_UTsh;
52 weightfield =
""_UTsh;
58 enabledirguide =
false;
68 if (rank != src.
rank)
return false;
69 if (srcvdb != src.
srcvdb)
return false;
70 if (srcweight != src.
srcweight)
return false;
73 if (operation != src.
operation)
return false;
75 if (noneg != src.
noneg)
return false;
97 for (
int i = 0; i < list.
entries(); i++)
117 buf.
appendSprintf(
"%s", (list(i).useveclength) ?
"true" :
"false");
125 buf.
appendSprintf(
"%s", (list(i).enabledirguide) ?
"true" :
"false");
143 myDopGeometry =
""_UTsh;
144 mySrcSuffix =
""_UTsh;
146 myUseInstances =
false;
147 myInstanceGeo =
""_UTsh;
161 if (myDopGeometry != src.myDopGeometry)
return false;
162 if (mySrcSuffix != src.mySrcSuffix)
return false;
163 if (mySourceType != src.mySourceType)
return false;
164 if (myUseInstances != src.myUseInstances)
return false;
165 if (myInstanceGeo != src.myInstanceGeo)
return false;
166 if (myPosition != src.myPosition)
return false;
167 if (mySources != src.mySources)
return false;
189 {
return !strcmp(recordtype,
"Params"); }
194 if (recordtypenum == 0)
return "Params";
199 if (isMyRecord(recordtype))
return 1;
204 if (isMyRecord(recordtype))
210 int fieldnum)
const override
212 if (!isMyRecord(recordtype))
236 int fieldnum)
const override
238 if (!isMyRecord(recordtype))
264 const char *fieldname,
267 if (!isMyRecord(recordtype))
273 if (!strcmp(fieldname,
"dopgeo"))
275 result = UTmakeUnique<UT_OptionString>(myParms.myDopGeometry);
278 if (!strcmp(fieldname,
"srcsuffix"))
280 result = UTmakeUnique<UT_OptionString>(myParms.mySrcSuffix);
283 if (!strcmp(fieldname,
"srctype"))
285 result = UTmakeUnique<UT_OptionInt>(myParms.mySourceType);
288 if (!strcmp(fieldname,
"useinst"))
290 result = UTmakeUnique<UT_OptionBool>(myParms.myUseInstances);
293 if (!strcmp(fieldname,
"instgeo"))
295 result = UTmakeUnique<UT_OptionString>(myParms.myInstanceGeo);
298 if (!strcmp(fieldname,
"loc"))
300 result = UTmakeUnique<UT_OptionVector3>(myParms.myPosition);
303 if (!strcmp(fieldname,
"sources"))
305 result = UTmakeUnique<UT_OptionString>(myParms.createString(myParms.mySources));
317 {
return new Query(owner, *
this); }
355 loadData(is, rampdata);
373 int typelen = colon - data.
buffer();
387 {
int64 iv =
v; UTwrite(os, &iv); }
389 { UTwrite<fpreal64>(os, &
v); }
391 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
393 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
394 UTwrite<fpreal64>(os, &v.
z()); }
396 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
397 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
409 if (s) s->save(ostr);
411 saveData(os, result);
418 ostr << s->getDataTypeToken();
423 saveData(os, result);
427 void save(std::ostream &os)
const
431 saveData(os, myDopGeometry);
432 saveData(os, mySrcSuffix);
433 saveData(os, mySourceType);
434 saveData(os, myUseInstances);
435 saveData(os, myInstanceGeo);
436 saveData(os, myPosition);
439 UTwrite(os, &length);
442 auto && _curentry = mySources(i);
444 saveData(os, _curentry.activate);
445 saveData(os, _curentry.rank);
446 saveData(os, _curentry.srcvdb);
447 saveData(os, _curentry.srcweight);
448 saveData(os, _curentry.targetfield);
449 saveData(os, _curentry.weightfield);
450 saveData(os, _curentry.operation);
451 saveData(os, _curentry.useveclength);
452 saveData(os, _curentry.noneg);
453 saveData(os, _curentry.accguidestr);
454 saveData(os, _curentry.decguidestr);
455 saveData(os, _curentry.enabledirguide);
456 saveData(os, _curentry.dirguidestr);
457 saveData(os, _curentry.scale);
458 saveData(os, _curentry.normalize);
474 loadData(is, myDopGeometry);
475 loadData(is, mySrcSuffix);
476 loadData(is, mySourceType);
477 loadData(is, myUseInstances);
478 loadData(is, myInstanceGeo);
479 loadData(is, myPosition);
483 mySources.setSize(length);
486 auto && _curentry = mySources(i);
488 loadData(is, _curentry.activate);
489 loadData(is, _curentry.rank);
490 loadData(is, _curentry.srcvdb);
491 loadData(is, _curentry.srcweight);
492 loadData(is, _curentry.targetfield);
493 loadData(is, _curentry.weightfield);
494 loadData(is, _curentry.operation);
495 loadData(is, _curentry.useveclength);
496 loadData(is, _curentry.noneg);
497 loadData(is, _curentry.accguidestr);
498 loadData(is, _curentry.decguidestr);
499 loadData(is, _curentry.enabledirguide);
500 loadData(is, _curentry.dirguidestr);
501 loadData(is, _curentry.scale);
502 loadData(is, _curentry.normalize);
bool isMyRecord(const char *recordtype) const
GLenum GLuint GLenum GLsizei const GLchar * buf
const SIM_OpenCLMergeVDBParms & myParms
static void loadData(UT_IStream &is, UT_Matrix2D &v)
SIM_OpenCLMergeVDBParms()
static void saveData(std::ostream &os, UT_StringHolder s)
UT_StringHolder targetfield
static void loadData(UT_IStream &is, UT_Vector3I &v)
void setSources(const UT_Array< Sources > &val)
exint bread(int32 *buffer, exint asize=1)
constexpr SYS_FORCE_INLINE T & y() noexcept
static void saveData(std::ostream &os, UT_Vector2D v)
static void loadData(UT_IStream &is, UT_Vector2D &v)
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
void setUseInstances(bool val)
UT_String makeQuotedString(char delimiter='\'', bool escape_nonprinting=false) const
constexpr SYS_FORCE_INLINE T & z() noexcept
SIM_Query * createQueryObject(const SIM_Data *owner) const
SYS_FORCE_INLINE const char * buffer() const
static void loadData(UT_IStream &is, fpreal64 &v)
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
GLuint GLsizei GLsizei * length
An output stream object that owns its own string buffer storage.
static void saveData(std::ostream &os, UT_Matrix4D v)
static void saveData(std::ostream &os, int64 v)
**But if you need a result
const UT_Array< Sources > & getSources() const
static void loadData(UT_IStream &is, UT_Vector3D &v)
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
static void loadData(UT_IStream &is, UT_StringHolder &v)
void setInstanceGeo(const UT_StringHolder &val)
constexpr SYS_FORCE_INLINE T & x() noexcept
bool getFieldRawSubclass(const char *recordtype, int recordnum, const char *fieldname, UT_OptionEntryPtr &result) const override
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
constexpr SYS_FORCE_INLINE T & x() noexcept
static void loadData(UT_IStream &is, UT_Vector4D &v)
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
GA_API const UT_StringHolder scale
int getNumRecordsSubclass(const char *recordtype) const override
UT_Vector3D getPosition() const
UT_OptionType getFieldTypeSubclass(const char *recordtype, int fieldnum) const override
static void loadData(UT_IStream &is, UT_Vector2I &v)
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
constexpr SYS_FORCE_INLINE T & z() noexcept
bool operator!=(const SIM_OpenCLMergeVDBParms &src) const
exint read(bool *array, exint sz=1)
bool operator==(const SIM_OpenCLMergeVDBParms &src) const
UT_StringHolder srcweight
int getNumFieldsSubclass(const char *recordtype) const override
static void loadData(UT_IStream &is, UT_Matrix4D &v)
bool getUseInstances() const
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
const char * getFieldNameSubclass(const char *recordtype, int fieldnum) const override
bool load(UT_IStream &is)
const char * getRecordTypeNameSubclass(int recordtypenum) const override
void setDopGeometry(const UT_StringHolder &val)
static void saveData(std::ostream &os, bool v)
static void saveData(std::ostream &os, PRM_DataItemHandle s)
SYS_FORCE_INLINE void strcat(const char *src)
void saveBinary(std::ostream &os) const
Save string to binary stream.
int64 getSourceType() const
static void saveData(std::ostream &os, UT_Vector4D v)
GT_API const UT_StringHolder version
exint entries() const
Alias of size(). size() is preferred.
section HDK_USDHydraEventScripts USD a python event script is run This gives the render delegate the opportunity to perform any required external initialization or other renderer specific action that may be required The script is found by searching the HOUDINI_SCRIPT_PATH for a file named scene DelegateName_Events py Within this file should be two activate(pane)`and`deactivate(pane)`.These methods are called before the old renderer is deactivated and before the new renderer is activated.The`hou.SceneViewer`pane object is passed as an argument to both of these methods.Note that deactivating a renderer doesn't mean the renderer is going to be destroyed.It may be paused as Houdini switches to the Houdini VK renderer
void save(std::ostream &os) const
GA_API const UT_StringHolder parms
int int appendSprintf(const char *fmt,...) SYS_PRINTF_CHECK_ATTRIBUTE(2
LeafData & operator=(const LeafData &)=delete
Utility class for containing a color ramp.
constexpr SYS_FORCE_INLINE T & w() noexcept
SYS_FORCE_INLINE void append(char character)
static void loadData(UT_IStream &is, UT_Vector4I &v)
static void loadData(UT_IStream &is, UT_Matrix3D &v)
UT_StringHolder createString(const UT_Array< Sources > &list) const
static void loadData(UT_IStream &is, int64 &v)
const char * findChar(int c) const
bool operator==(const Sources &src) const
static void saveData(std::ostream &os, UT_Matrix3D v)
bool operator!=(const Sources &src) const
static void saveData(std::ostream &os, UT_Vector3D v)
static void saveData(std::ostream &os, UT_Matrix2D v)
const UT_StringHolder & getDopGeometry() const
static void loadData(UT_IStream &is, bool &v)
constexpr SYS_FORCE_INLINE T & y() noexcept
Query(const SIM_Data *owner, const SIM_OpenCLMergeVDBParms &parms)
const UT_StringHolder & getSrcSuffix() const
void setPosition(UT_Vector3D val)
void setSourceType(int64 val)
UT_StringHolder weightfield
constexpr SYS_FORCE_INLINE T & y() noexcept
UT_UniquePtr< UT_OptionEntry > UT_OptionEntryPtr
SYS_FORCE_INLINE bool isstring() const
const UT_StringHolder & getInstanceGeo() const
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
static void saveData(std::ostream &os, fpreal64 v)
void setSrcSuffix(const UT_StringHolder &val)
constexpr SYS_FORCE_INLINE T & x() noexcept
int getNumRecordTypesSubclass() const override