|
| | CL_SimpleChannel () |
| |
| | CL_SimpleChannel (fpreal start, int num_segments, fpreal length, CL_ChannelBehavior left_type, CL_ChannelBehavior right_type, fpreal default_value, fpreal default_slope) |
| |
| | CL_SimpleChannel (fpreal start, int num_segments, fpreal length, CL_ChannelBehavior left_type, CL_ChannelBehavior right_type, fpreal default_value, fpreal default_slope, fpreal tolerance) |
| |
| | ~CL_SimpleChannel ()=default |
| |
| | CL_SimpleChannel (const CL_SimpleChannel &other)=default |
| |
| | CL_SimpleChannel (CL_SimpleChannel &&other)=default |
| |
| CL_SimpleChannel & | operator= (const CL_SimpleChannel &other)=default |
| |
| CL_SimpleChannel & | operator= (CL_SimpleChannel &&other)=default |
| |
| bool | canEval () const |
| |
| fpreal | eval (fpreal gtime) const |
| |
| fpreal | eval (fpreal gtime, int &segment_idx_hint) const |
| |
| fpreal | eval (const CL_SimpleSegment &seg, fpreal ltime) const |
| |
| fpreal | evalSlope (fpreal gtime) const |
| |
| fpreal | evalSlope (const CL_SimpleSegment &seg, fpreal ltime) const |
| |
| fpreal | evalAccel (fpreal gtime) const |
| |
| fpreal | evalAccel (const CL_SimpleSegment &seg, fpreal ltime) const |
| |
| bool | isAtHardKey (fpreal gtime) const |
| |
| int | getSegmentIdx (fpreal ltime) const |
| |
| CL_SimpleSegment & | getSegment (int index) |
| |
| const CL_SimpleSegment & | getSegment (int index) const |
| |
const UT_Array
< CL_SimpleSegment > & | getSegments () const |
| |
| UT_StringHolder | getSegmentExpression (int index) const |
| |
| const UT_Array< UT_StringHolder > & | getSegmentExpressions () const |
| |
| void | setSegmentExpression (int index, const UT_StringHolder &expr) |
| |
| int | getSegmentInSlopeAuto (int index) const |
| |
| int | getSegmentOutSlopeAuto (int index) const |
| |
| void | setSegmentInSlopeAuto (int index, bool value) |
| |
| void | setSegmentOutSlopeAuto (int index, bool value) |
| |
| void | setSegmentInSlope (int index, fpreal slope) |
| |
| void | setSegmentOutSlope (int index, fpreal slope) |
| |
| void | setSegmentInAccel (int index, fpreal accel, bool ratio=false) |
| |
| void | setSegmentOutAccel (int index, fpreal accel, bool ratio=false) |
| |
| void | setSegmentType (int index, CL_SimpleSegmentType type) |
| |
| CL_SimpleSegmentType | getSegmentType (int index) const |
| |
| bool | insertKeyFrame (fpreal global_time, bool auto_slope=true) |
| |
| bool | destroyKeyFrame (fpreal global_time) |
| |
| bool | destroyKeyFrames (fpreal gtime_start, fpreal gtime_end) |
| |
| bool | destroySegments (int start_idx, int end_idx) |
| |
| bool | setKeyValue (fpreal gtime, fpreal value, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| bool | setKeySlope (fpreal gtime, fpreal slope, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| bool | setKeyAccel (fpreal gtime, fpreal accel, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| fpreal | getKeyValue (fpreal gtime, CL_KeyHalf half=CL_KeyHalf::InOut) const |
| |
| fpreal | getKeySlope (fpreal gtime, CL_KeyHalf half=CL_KeyHalf::InOut) const |
| |
| fpreal | getKeyAccel (fpreal gtime, CL_KeyHalf half=CL_KeyHalf::InOut) const |
| |
| bool | setKeyAutoSlope (fpreal gtime, bool auto_slope, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| bool | setRawValues (fpreal from, fpreal to, fpreal *data, int num_samples, bool auto_slope=true) |
| | Sets data evenly spaced between from and to. More...
|
| |
| bool | setRawValues (fpreal *times, fpreal *data, int num_samples) |
| | Sets data at the specified times. More...
|
| |
| void | clear () |
| | clears the channel, erasing all segments More...
|
| |
| void | setDefaultValue (fpreal value) |
| |
| void | setPreValue (fpreal value) |
| |
| void | setPreSlope (fpreal slope) |
| |
| void | setPreType (CL_ChannelBehavior type) |
| |
| void | setPostValue (fpreal value) |
| |
| void | setPostSlope (fpreal slope) |
| |
| void | setPostType (CL_ChannelBehavior type) |
| |
| fpreal | getDefaultValue () const |
| |
| fpreal | getPreValue () const |
| |
| fpreal | getPreSlope () const |
| |
| CL_ChannelBehavior | getPreType () const |
| |
| fpreal | getPostValue () const |
| |
| fpreal | getPostSlope () const |
| |
| CL_ChannelBehavior | getPostType () const |
| |
| fpreal | getTolerance () const |
| |
| void | setTolerance (fpreal tolerance) |
| |
| fpreal | localTime (fpreal t) const |
| |
| fpreal | globalTime (fpreal t) const |
| |
| fpreal | getStart () const |
| |
| fpreal | getEnd () const |
| |
| fpreal | getLength () const |
| |
| void | setStart (fpreal start) |
| |
| int | getNSegments () const |
| | Returns the number of segments including the end segment. More...
|
| |
| UT_Array< fpreal > | getKeyTimes () const |
| |
| UT_Array< fpreal > | getKeyValues (CL_KeyHalf half=CL_KeyHalf::InOut) const |
| |
| UT_Array< fpreal > | getKeySlopes (CL_KeyHalf half=CL_KeyHalf::InOut) const |
| |
| UT_Array< fpreal > | getKeyAccels (CL_KeyHalf half=CL_KeyHalf::InOut) const |
| |
| bool | getKeyTimeRange (fpreal &start, fpreal &end) const |
| |
| void | setKeys (const UT_Array< fpreal > *values=nullptr, const UT_Array< fpreal > *slopes=nullptr, const UT_Array< fpreal > *accels=nullptr, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| void | setKeyValues (const UT_Array< fpreal > &values, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| void | setKeySlopes (const UT_Array< fpreal > &slopes, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| void | setKeyAccels (const UT_Array< fpreal > &accels, CL_KeyHalf half=CL_KeyHalf::InOut) |
| |
| bool | getSurroundingSegs (fpreal gtime, CL_SimpleSegment *&left, CL_SimpleSegment *&right) |
| |
| bool | getSurroundingSegs (fpreal gtime, const CL_SimpleSegment *&left, const CL_SimpleSegment *&right) const |
| |
| bool | moveKeysWithDeltas (const UT_IntArray &indices, const UT_Array< fpreal > &time_offsets) |
| |
| void | moveKeysWithDeltas (const UT_Array< fpreal > &key_times, const UT_Array< fpreal > &time_offsets, const UT_Array< fpreal > &value_offsets) |
| |
| void | smoothAutoSlopesForSegments (UT_RLEBitArray &slope_flags, bool force=false, fpreal max_delta=-1) |
| |
| void | smoothAutoSlopes (bool force=false) |
| |
| void | trimStart (float gtime) |
| |
| void | trimEnd (float gtime) |
| |
A specialized channel for fast evaluation. Should be created from an existing CH_Channel using CH_Channel->asSimpleChannel(). Can be copied using the copy constructor. Doesn't store the in/out value/slope/accel directly. It stores precomputed bezier coefficient to avoid doing the conversion at each evaluation. Also uses UT_BezierRootFinder with precomputed coefficients to speed up CL_Cubic::reverseEvalP.
Definition at line 251 of file CL_SimpleChannel.h.