9 #ifndef __HOM_ChannelPrim_h__
10 #define __HOM_ChannelPrim_h__
46 virtual double start() = 0;
47 virtual double end() = 0;
48 virtual double length() = 0;
50 virtual double defaultValue() = 0;
51 virtual void setDefaultValue(
double value) = 0;
54 virtual double eval(
double frame) = 0;
55 virtual double _evalSlope(
double frame) = 0;
57 virtual bool hasKeyAtFrame(
double frame) = 0;
59 virtual void insertKey(
double frame,
bool auto_slope =
true) = 0;
60 virtual void destroyKey(
double frame) = 0;
62 virtual void clear() = 0;
66 virtual int keyIndex(
double frame) = 0;
68 virtual bool setKeyValue(
double frame,
double value,
70 virtual bool setKeySlope(
double frame,
double slope,
72 virtual bool setKeyAccel(
double frame,
double accel,
75 virtual bool setKeyAutoSlope(
double frame,
bool auto_slope,
83 virtual std::vector<double> keyFrames() = 0;
84 virtual std::vector<double> keyValues() = 0;
86 virtual void moveKeyframes(
const std::vector<int> &key_indices,
87 const std::vector<double> &frame_offsets) = 0;
89 virtual void smoothAutoSlopes(
bool force =
false) = 0;
90 virtual void smoothAutoSlopesForKeys(
int start_index,
92 bool force =
false) = 0;
SIM_API const UT_StringHolder vertex
#define HOM_DESTRUCT_OBJECT(pointer)
GA_API const UT_StringHolder accel
GLsizei const GLchar *const * string
GLuint GLsizei GLsizei * length
string __repr__(VtArray< T > const &self)
~HOM_ChannelPrim() override
#define HOM_CONSTRUCT_OBJECT(pointer)
HUSD_API bool eval(VtValue &val, T &ret_val)
SIM_API const UT_StringHolder force
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)
HOM_ChannelPrim(const HOM_ChannelPrim &face)