#include <sequencecontrollercurve.h>
Public Member Functions | |
| SequenceControllerCurve (SequenceService &service, SequencePlayer &player, SequenceEditor &editor) | |
| double | segmentDurationChange (const std::string &trackID, const std::string &segmentID, float duration, bool adjustFollowingSegments) |
| void | setSegmentLocked (const std::string &trackID, const std::string &segmentID, bool locked) |
| template<typename T > | |
| void | addNewCurveTrack () |
| void | changeCurveSegmentValue (const std::string &trackID, const std::string &segmentID, float newValue, int curveIndex, sequencecurveenums::ESegmentValueTypes valueType) |
| void | insertCurvePoint (const std::string &trackID, const std::string &segmentID, float pos, int curveIndex) |
| void | deleteCurvePoint (const std::string &trackID, const std::string &segmentID, int index, int curveIndex) |
| void | changeCurvePoint (const std::string &trackID, const std::string &segmentID, int pointIndex, int curveIndex, float time, float value) |
| bool | changeTanPoint (const std::string &trackID, const std::string &segmentID, int pointIndex, int curveIndex, sequencecurveenums::ETanPointTypes tanType, float time, float value) |
| template<typename T > | |
| void | changeMinMaxCurveTrack (const std::string &trackID, T minimum, T maximum) |
| template<typename T > | |
| void | changeCurveType (SequenceTrackSegment &segment, math::ECurveInterp type, int curveIndex) |
| const SequenceTrackSegment * | insertSegment (const std::string &trackID, double time) override |
| void | deleteSegment (const std::string &trackID, const std::string &segmentID) override |
| void | insertTrack (rtti::TypeInfo type) override |
| void | updateCurveSegments (const std::string &trackID) |
| void | changeCurveType (const std::string &trackID, const std::string &segmentID, math::ECurveInterp type, int curveIndex) |
| void | changeSegmentColor (const std::string &trackID, const std::string &segmentID, const RGBAColorFloat &newColor) |
| template<> | |
| void NAPAPI | changeMinMaxCurveTrack (const std::string &trackID, float minimum, float maximum) |
Public Member Functions inherited from SequenceController | |
| SequenceController (SequenceService &service, SequencePlayer &player, SequenceEditor &editor) | |
| virtual | ~SequenceController ()=default |
| void | changeTrackName (const std::string &trackID, const std::string &name) |
| void | changeSegmentLabel (const std::string &trackID, const std::string &segmentID, const std::string &newLabel) |
| void | assignNewOutputID (const std::string &trackID, const std::string &outputID) |
| void | deleteTrack (const std::string &deleteTrackID) |
| void | moveTrackUp (const std::string &trackID) |
| void | moveTrackDown (const std::string &trackID) |
| const SequenceTrack * | getTrack (const std::string &trackID) const |
| const SequenceTrackSegment * | getSegment (const std::string &trackID, const std::string &segmentID) const |
| void | changeTrackHeight (const std::string &trackID, float newHeight) |
Protected Member Functions | |
| template<typename T > | |
| void | updateCurveSegments (SequenceTrack &track) |
| template<typename T > | |
| const SequenceTrackSegment * | insertCurveSegment (const std::string &trackID, double time) |
| template<typename T > | |
| bool | changeTanPoint (SequenceTrackSegment &segment, const std::string &trackID, int pointIndex, int curveIndex, sequencecurveenums::ETanPointTypes tanType, float time, float value) |
| template<typename T > | |
| void | changeCurvePoint (SequenceTrackSegment &segment, int pointIndex, int curveIndex, float time, float value) |
| template<typename T > | |
| void | changeLastCurvePoint (SequenceTrackSegment &segment, int curveIndex, float time, float value) |
| template<typename T > | |
| void | deleteCurvePoint (SequenceTrackSegment &segment, int index, int curveIndex) |
| template<typename T > | |
| void | insertCurvePoint (SequenceTrackSegment &segment, float pos, int curveIndex) |
| template<typename T > | |
| void | changeCurveSegmentValue (SequenceTrack &track, SequenceTrackSegment &segment, float newValue, int curveIndex, sequencecurveenums::ESegmentValueTypes valueType) |
Protected Member Functions inherited from SequenceController | |
| Sequence & | getSequence () |
| SequenceTrackSegment * | findSegment (const std::string &trackID, const std::string &segmentID) |
| SequenceTrack * | findTrack (const std::string &trackID) |
| void | deleteObjectFromSequencePlayer (const std::string &id) |
| void | updateTracks () |
| void | performEditAction (std::function< void()> action) |
| std::vector< std::unique_ptr< rtti::Object > > & | getPlayerOwnedObjects () |
| std::unordered_set< std::string > & | getPlayerReadObjectIDs () |
Protected Attributes | |
| std::unordered_map< rttr::type, std::function< void(SequenceTrack &)> > | mUpdateSegmentFunctionMap |
| std::unordered_map< rttr::type, std::function< const SequenceTrackSegment *(const std::string &, double)> > | mInsertSegmentFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceControllerCurve *)> > | mInsertTrackFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< bool(SequenceTrackSegment &, const std::string &, const int, const int, sequencecurveenums::ETanPointTypes, float, float)> > | mChangeTanPointFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceTrackSegment &, const int, const int, float, float)> > | mChangeCurvePointFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceTrackSegment &, const int, float, float)> > | mChangeLastCurvePointFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceTrackSegment &, const int, int)> > | mDeleteCurvePointFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceTrackSegment &, float, int)> > | mInsertCurvePointFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceTrack &, SequenceTrackSegment &segment, float, int, sequencecurveenums::ESegmentValueTypes)> > | mChangeSegmentValueFunctionMap |
| std::unordered_map< rtti::TypeInfo, std::function< void(SequenceTrackSegment &, math::ECurveInterp type, int curveIndex)> > | mChangeCurveTypeFunctionMap |
Protected Attributes inherited from SequenceController | |
| SequencePlayer & | mPlayer |
| SequenceEditor & | mEditor |
| SequenceService & | mService |
Controller class for curve tracks
| SequenceControllerCurve | ( | SequenceService & | service, |
| SequencePlayer & | player, | ||
| SequenceEditor & | editor | ||
| ) |
Constructor
| service | reference to service |
| player | reference to player |
| editor | reference to editor |
| void addNewCurveTrack |
adds a new curve track of type T ( float, vec2, vec3, vec4 )
| void changeCurvePoint | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| int | pointIndex, | ||
| int | curveIndex, | ||
| float | time, | ||
| float | value | ||
| ) |
changes a curvepoint value and time / position
| trackID | the trackID |
| segmentID | the segmentID |
| pointIndex | the point index |
| curveIndex | the curve index |
| time | new time in percentage of segment duration normalized between 0 and 1 |
| value | new value |
|
protected |
changes a curvepoint value and time / position
| segment | the segmentID |
| pointIndex | the point index |
| curveIndex | the curve index |
| time | offset for new time |
| value | offset for new value |
| void changeCurveSegmentValue | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| float | newValue, | ||
| int | curveIndex, | ||
| sequencecurveenums::ESegmentValueTypes | valueType | ||
| ) |
changes start or end value of segment of type T
| trackID | the track id |
| segmentID | id of segment |
| newValue | the new value |
| curveIndex | the curve index of the value |
| valueType | the segment value type ( first or last value ) |
|
protected |
changes start or end value of segment of type T
| track | the track id |
| segment | id of segment |
| newValue | new value |
| curveIndex | the curve index of the value |
| valueType | the segment value type ( first or last value ) |
| void changeCurveType | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| math::ECurveInterp | type, | ||
| int | curveIndex | ||
| ) |
changes curvetype ( linear or bezier )
| trackID | the trackID |
| segmentID | the segmentID |
| type | the new curve type |
| curveIndex | the index of the curve |
| void changeCurveType | ( | SequenceTrackSegment & | segment, |
| math::ECurveInterp | type, | ||
| int | curveIndex | ||
| ) |
changes curvetype ( linear or bezier )
| segment | the segment |
| type | the new curve type |
| curveIndex | index of the curve |
|
protected |
| void NAPAPI changeMinMaxCurveTrack | ( | const std::string & | trackID, |
| float | minimum, | ||
| float | maximum | ||
| ) |
| void changeMinMaxCurveTrack | ( | const std::string & | trackID, |
| T | minimum, | ||
| T | maximum | ||
| ) |
changes minimum and maximum value of track
| trackID | the trackID |
| minimum | new minimum |
| maximum | new maximum |
| void changeSegmentColor | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| const RGBAColorFloat & | newColor | ||
| ) |
changes the color of a curve segment
| trackID | the trackID |
| segmentID | the segmentID |
| newColor | the new color |
| bool changeTanPoint | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| int | pointIndex, | ||
| int | curveIndex, | ||
| sequencecurveenums::ETanPointTypes | tanType, | ||
| float | time, | ||
| float | value | ||
| ) |
changes tangent of curve point. Tangents are always aligned
| trackID | the trackID |
| segmentID | the segmentID |
| pointIndex | the point index |
| curveIndex | the curve index |
| tanType | in or out tangent |
| time | offset for new time |
| value | offset for new value |
|
protected |
changes tangent of curve point. Tangents are always aligned
| segment | the segment |
| trackID | the trackID |
| pointIndex | the point index |
| curveIndex | the curve index |
| tanType | in or out tangent |
| time | offset for new time |
| value | offset for new value |
| void deleteCurvePoint | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| int | index, | ||
| int | curveIndex | ||
| ) |
deletes point from curve
| trackID | the trackID |
| segmentID | the segmentID |
| index | the point index |
| curveIndex | the curveIndex |
|
protected |
deletes point from curve
| segment | the segmentID |
| index | the point index |
| curveIndex | the curveIndex |
|
overridevirtual |
overloaded delete segment function
| trackID | track id |
| segmentID | segment id |
Implements SequenceController.
| void insertCurvePoint | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| float | pos, | ||
| int | curveIndex | ||
| ) |
insert point in curve of segment
| trackID | the track id |
| segmentID | the segment id |
| pos | the position at which to insert the curvepoint in curve ( range 0-1 ) |
| curveIndex | the index of the curve |
|
protected |
insert point in curve of segment
| segment | the segment id |
| pos | the position at which to insert the curvepoint in curve ( range 0-1 ) |
| curveIndex | the index of the curve |
|
protected |
insertCurveSegment inserts a new curvesegment of type T ( vec2, vec3, vec4, float )
| trackID | the track in which to insert the segment |
| time | the time at when to insert segment |
|
overridevirtual |
overloaded insert segment function
| trackID | the track id |
| time | time |
Implements SequenceController.
|
overridevirtual |
| double segmentDurationChange | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| float | duration, | ||
| bool | adjustFollowingSegments | ||
| ) |
| trackID | the id of the track |
| segmentID | the id of the segment we need to edit |
| duration | the new duration |
| adjustFollowingSegments | if true, following segments will be moved |
| void setSegmentLocked | ( | const std::string & | trackID, |
| const std::string & | segmentID, | ||
| bool | locked | ||
| ) |
Sets the segment locked property
| trackID | the track id |
| segmentID | the segment id |
| locked | the locked value |
| void updateCurveSegments | ( | const std::string & | trackID | ) |
updates curve segments values to be continuous ( segment 1 end value == segment 2 start value etc )
| trackID | the track id of the track that we want to update |
|
protected |
updates curve segments values to be continuous ( segment 1 end value == segment 2 start value etc )
| track | reference to sequence track |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |