#include <sequencecontroller.h>
Public Member Functions | |
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) |
virtual void | insertTrack (rttr::type type)=0 |
virtual const SequenceTrackSegment * | insertSegment (const std::string &trackID, double time)=0 |
virtual void | deleteSegment (const std::string &trackID, const std::string &segmentID)=0 |
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 | |
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 | |
SequencePlayer & | mPlayer |
SequenceEditor & | mEditor |
SequenceService & | mService |
Base class for controllers for specific track types
SequenceController | ( | SequenceService & | service, |
SequencePlayer & | player, | ||
SequenceEditor & | editor | ||
) |
Constructor
service | reference to service |
player | reference to player being used |
editor | reference to editor |
|
virtualdefault |
Deconstructor
void assignNewOutputID | ( | const std::string & | trackID, |
const std::string & | outputID | ||
) |
assign track to specific output, the SequencePlayer will create an adapter linking the track to output with given id
trackID | the track id that gets an assigned object |
outputID | the output id that is assigned to the track and used to create the adapter |
void changeSegmentLabel | ( | const std::string & | trackID, |
const std::string & | segmentID, | ||
const std::string & | newLabel | ||
) |
Change segment label
trackID | the track id |
segmentID | the segment id |
newLabel | the new segment label |
void changeTrackHeight | ( | const std::string & | trackID, |
float | newHeight | ||
) |
Change a track height
trackID | the track id |
newHeight | the new track height |
void changeTrackName | ( | const std::string & | trackID, |
const std::string & | name | ||
) |
Change track name
trackID | the track id |
name | the new track name |
|
protected |
deletes an object owned by sequenceplayer from sequenceplayer
id | object id |
|
pure virtual |
deleted segment from track, must be overloaded
trackID | the track |
segmentID | the segment |
Implemented in SequenceControllerCurve, SequenceControllerEvent, and SequenceControllerAudio.
void deleteTrack | ( | const std::string & | deleteTrackID | ) |
deletes a track
deleteTrackID | the id of the track that needs to be deleted |
|
protected |
finds segment
trackID | the trackID |
segmentID | the segmentID |
|
protected |
finds segment
trackID | the trackID |
|
protected |
|
protected |
const SequenceTrackSegment* getSegment | ( | const std::string & | trackID, |
const std::string & | segmentID | ||
) | const |
returns const pointer to SequenceTrackSegment, nullptr when not found
trackID | the trackID |
segmentID | the segmentID |
|
protected |
const SequenceTrack* getTrack | ( | const std::string & | trackID | ) | const |
returns const pointer to sequence track, null if not found
trackID | id of track to find |
|
pure virtual |
inserts segment in track, must be overloaded
trackID | the trackID in which to insert new segment |
time | the time at which to insert the segment |
Implemented in SequenceControllerCurve, SequenceControllerEvent, and SequenceControllerAudio.
|
pure virtual |
inserts track that corresponds to type of controller, must be overloaded
type | the type of track |
Implemented in SequenceControllerAudio, SequenceControllerEvent, and SequenceControllerCurve.
void moveTrackDown | ( | const std::string & | trackID | ) |
moves track up in the array of tracks
trackID | the id of the track that needs to be moved |
void moveTrackUp | ( | const std::string & | trackID | ) |
moves track up in the array of tracks
trackID | the id of the track that needs to be moved |
|
protected |
calls perform edit action on editor class
action | the edit action |
|
protected |
updates duration of sequence by longest track
|
protected |
|
protected |
|
protected |