Public Member Functions | Public Attributes | List of all members
SequenceEditor Class Reference

#include <sequenceeditor.h>

Public Member Functions

 SequenceEditor (SequenceService &service)
bool init (utility::ErrorState &errorState) override
void save (const std::string &file)
void load (const std::string &file)
void changeSequenceDuration (double newDuration)
SequenceControllergetControllerWithTrackType (rtti::TypeInfo trackType)
SequenceControllergetControllerWithTrackID (const std::string &trackID)
template<typename T >
T & getController ()
void insertMarker (double time, const std::string &message)
void changeMarkerTime (const std::string &markerID, double time)
void deleteMarker (const std::string &markerID)
void changeMarkerMessage (const std::string &markerID, const std::string &markerMessage)
- Public Member Functions inherited from Resource
 Resource ()
- Public Member Functions inherited from Object
 Object ()
virtual ~Object ()
virtual void onDestroy ()
 Object (Object &)=delete
Objectoperator= (const Object &)=delete
 Object (Object &&)=delete
Objectoperator= (Object &&)=delete

Public Attributes

ResourcePtr< SequencePlayermSequencePlayer = nullptr
 Property: 'Sequence Player' ResourcePtr to the sequence player. More...
- Public Attributes inherited from Object
std::string mID
 Property: 'mID' unique name of the object. Used as an identifier by the system. More...

Additional Inherited Members

- Static Public Member Functions inherited from Object
static bool isIDProperty (rtti::Instance &object, const rtti::Property &property)


The SequenceEditor is responsible for editing the sequence (model) and makes sure the model stays valid during editing. It also holds a resource ptr to a player, to make sure that editing the sequence stays thread safe.

Inheritance diagram for SequenceEditor:
Collaboration diagram for SequenceEditor:

Constructor & Destructor Documentation

◆ SequenceEditor()

Member Function Documentation

◆ changeMarkerMessage()

void changeMarkerMessage ( const std::string &  markerID,
const std::string &  markerMessage 

changes marker message of specified marker id, asserts when marker not found

markerIDthe id of the marker to edit
markerMessageconst reference to string value of marker message

◆ changeMarkerTime()

void changeMarkerTime ( const std::string &  markerID,
double  time 

changes marker time, assert when markerID not found

markerIDthe id of the marker
timethe new time in seconds for the marker

◆ changeSequenceDuration()

void changeSequenceDuration ( double  newDuration)

changes sequence duration

newDurationnew duration of sequence

◆ deleteMarker()

void deleteMarker ( const std::string &  markerID)

deletes marker with specified id, assert when markerID not found

markerIDthe id of the marker to delete

◆ getController()

T& getController ( )

Gets reference the controller for a type, performs static cast

Template Parameters
Ttype of controller
reference to controller type

◆ getControllerWithTrackID()

SequenceController* getControllerWithTrackID ( const std::string &  trackID)

Returns pointer to base class of controller type that is used for specified track type of track id Return null when track is not found, or controller is not found

trackIDthe track id of the track to find controller for
ptr to controller base class, null ptr when not found

◆ getControllerWithTrackType()

SequenceController* getControllerWithTrackType ( rtti::TypeInfo  trackType)

Returns pointer to base class of controller type, asserts when type not found

typerttr::type information of controller type to be returned
ptr to controller base class, null ptr when not found

◆ init()

bool init ( utility::ErrorState errorState)

initializes editor

errorStatecontains any errors
returns true on successful initialization

Reimplemented from Object.

◆ insertMarker()

void insertMarker ( double  time,
const std::string &  message 

inserts marker at given time in seconds

timethe time at where to insert the new marker in seconds
messageconst reference to the message that the new marker should contain

◆ load()

void load ( const std::string &  file)

loads sequence of file


◆ save()

void save ( const std::string &  file)

saves sequence of player to file


Member Data Documentation

◆ mSequencePlayer

ResourcePtr<SequencePlayer> mSequencePlayer = nullptr

Property: 'Sequence Player' ResourcePtr to the sequence player.