9 #ifndef __HOM_ParmTuple_h__
10 #define __HOM_ParmTuple_h__
39 virtual int __hash__() = 0;
45 SWIGOUT(%newobject parmTemplate;)
54 virtual void _set(
const std::vector<double> &float_values) = 0;
55 virtual void setPending(
const std::vector<double> &float_values) = 0;
56 virtual void _set(
const std::vector<std::string> &string_values) = 0;
57 virtual void setPending(
const std::vector<std::string> &string_values) = 0;
58 virtual void _set(
const std::vector<HOM_Ramp *> &ramp_values) = 0;
59 virtual void setPending(
const std::vector<HOM_Ramp *> &ramp_values) = 0;
61 virtual void revertToDefaults() = 0;
62 virtual void revertToAndRestorePermanentDefaults() = 0;
65 virtual bool isAtDefault(
bool compare_temporary_defaults=
true,
66 bool compare_expressions=
true) = 0;
67 virtual bool isAtRampDefault() = 0;
69 virtual std::vector<double> evalAsFloats() = 0;
71 virtual std::vector<double> evalAsFloatsAtFrame(
double frame) = 0;
73 virtual std::vector<int> evalAsInts() = 0;
75 virtual std::vector<int> evalAsIntsAtFrame(
double frame) = 0;
77 virtual std::vector<std::string> evalAsStrings() = 0;
79 virtual std::vector<std::string> evalAsStringsAtFrame(
double frame) = 0;
81 virtual std::vector<HOM_ElemPtr<HOM_Ramp> > evalAsRamps() = 0;
83 SWIGOUT(%newobject evalAsRampAtFrame;)
86 SWIGOUT(%newobject evalAsGeometries;)
89 SWIGOUT(%newobject evalAsGeometryAtFrame;)
92 virtual std::vector<std::map<std::string, std::string> >
94 virtual std::vector<std::map<std::string, std::string> >
95 evalAsJSONMapsAtFrame(
double frame) = 0;
98 virtual void lock(
bool on) = 0;
99 virtual void lock(
const std::vector<bool> &bool_values) = 0;
100 virtual void setAutoscope(
const std::vector<bool> &bool_values) = 0;
102 virtual bool isSpare() = 0;
104 virtual bool isTimeDependent() = 0;
106 virtual bool isMultiParmInstance() = 0;
107 virtual bool isMultiParmParent() = 0;
108 SWIGOUT(%newobject parentMultiParm;)
109 virtual HOM_Parm *parentMultiParm() = 0;
110 virtual std::vector<int> multiParmInstanceIndices() = 0;
112 virtual int multiParmInstancesPerItem() = 0;
113 virtual int multiParmInstancesCount() = 0;
114 virtual int multiParmStartOffset() = 0;
116 virtual std::vector<HOM_ElemPtr<HOM_ParmTuple> > multiParmInstances() = 0;
118 virtual std::vector<std::string> containingFolders() = 0;
119 virtual std::vector<int> containingFolderIndices() = 0;
120 virtual std::vector<HOM_ElemPtr<HOM_ParmTuple> >
121 containingFolderSetParmTuples() = 0;
123 virtual void setKeyframe(
const std::vector<HOM_BaseKeyframe *> &keyframes) = 0;
124 virtual void deleteKeyframeAtFrame(
double frame) = 0;
125 virtual void deleteAllKeyframes() = 0;
127 SWIGOUT(%newobject __getitem__;)
129 virtual int __len__() = 0;
130 virtual bool __bool__() = 0;
132 SWIGOUT(%newobject createClip;)
136 bool apply_immediately,
137 bool current_value_only=
false,
138 bool create_locked=
false,
139 bool set_value_to_default=
false) = 0;
141 virtual void appendClip(
HOM_Node &chop_node,
142 bool apply_immediately,
143 bool current_value_only=
false,
144 bool create_locked=
false,
145 bool set_value_to_default=
false) = 0;
150 bool use_blosc_compression =
true,
151 double sample_rate = 0) = 0;
156 bool blosc_compressed =
true,
157 double sample_rate = 0,
163 double sample_rate = 0) = 0;
167 double sample_rate = 0,
170 virtual void copyToParmClipboard() = 0;
175 virtual std::string asCode(
bool brief=
false,
bool save_values=
true,
176 bool save_keyframes=
true,
177 bool save_keys_in_frames=
false,
178 bool save_flag_values=
true,
179 bool save_aliases=
true,
180 const char *function_name=NULL) = 0;
187 virtual int parmDataTypeEnumId() = 0;
195 virtual int dataParmTypeEnumId() = 0;
200 virtual bool isDisabled() = 0;
202 virtual void disable(
bool on) = 0;
204 virtual bool isHidden() = 0;
206 virtual void hide(
bool on) = 0;
208 virtual bool isConstrained() = 0;
210 virtual bool isShowingExpression() = 0;
211 virtual void showExpression(
bool value) = 0;
216 %warnfilter(321)
eval;
217 InterpreterObject
eval()
219 return HOMevalParmTuple(*
self);
222 InterpreterObject evalAtFrame(
double frame)
224 return HOMevalParmTupleAtFrame(*
self, frame);
227 InterpreterObject evalAtTime(
double time)
229 return HOMevalParmTupleAtFrame(*
self,
HOM().timeToFrame(time));
#define HOM_DESTRUCT_OBJECT(pointer)
GT_API const UT_StringHolder time
GLsizei const GLchar *const * string
const GLuint GLenum const void * binary
string __repr__(VtArray< T > const &self)
std::string help(const App *app, const Error &e)
Printout the full help string on error (if this fn is set, the old default for CLI11) ...
void ignore(T const &) VULKAN_HPP_NOEXCEPT
#define HOM_CONSTRUCT_OBJECT(pointer)
bool operator!=(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Inequality operator, does exact floating point comparisons.
#define HOM_MIN_NEGATIVE_DOUBLE
HUSD_API bool eval(VtValue &val, T &ret_val)
GLuint const GLchar * name
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)
HOM_API HOM_Module & HOM()
bool operator==(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Equality operator, does exact floating point comparisons.
HOM_ParmTuple(const HOM_ParmTuple &parm_tuple)