Zrythm
a highly automated and intuitive digital audio workstation
|
Base struct for arranger objects. More...
#include <gui/backend/arranger_object.h>
Public Member Functions | |
void | arranger_object_move (ArrangerObject *self, const double ticks) |
Moves the object by the given amount of ticks. | |
bool | arranger_object_validate (const ArrangerObject *const self) |
Validates the arranger object. | |
void | arranger_object_set_name (ArrangerObject *self, const char *name, int fire_events) |
Sets the name of the object, if the object can have a name. | |
Data Fields | |
ArrangerObjectType | type |
ArrangerObjectFlags | flags |
Flags. | |
Position | pos |
Position (or start Position if the object has length). | |
Position | end_pos |
End Position, if the object has one. | |
Position | clip_start_pos |
Start position of the clip loop, relative to the object's start. | |
Position | loop_start_pos |
Loop start Position, if the object has one, relative to the object's start. | |
Position | loop_end_pos |
End position of the clip loop, relative to the object's start. | |
Position | fade_in_pos |
Fade in position, relative to the object's start. | |
Position | fade_out_pos |
Fade out position, relative to the object's start. | |
CurveOptions | fade_in_opts |
Fade in curve options. | |
CurveOptions | fade_out_opts |
Fade out curve options. | |
GdkRectangle | full_rect |
The full rectangle this object covers including off-screen parts, in absolute coordinates. | |
int | textw |
Cache text H extents and W extents for the text, if the object has any. | |
int | texth |
ArrangerObject * | transient |
A copy ArrangerObject corresponding to this, such as when ctrl+dragging. | |
ArrangerObject * | main |
The opposite of the above. | |
bool | muted |
Whether muted or not (if applicable). | |
int | magic |
RegionIdentifier | region_id |
Parent region identifier for objects that are part of a region. | |
int | index_in_prev_lane |
Object's index in the previous lane (before being moved to a new lane/track). | |
bool | deleted_temporarily |
Whether deleted with delete tool. | |
cairo_t * | cached_cr [2] |
Cached cairo_t. | |
cairo_surface_t * | cached_surface [2] |
Cached surface containing drawing. | |
GdkRectangle | last_name_rect |
Last drawn name rectangle, if object has a name. | |
bool | is_auditioner |
Whether part of an auditioner track. | |
Base struct for arranger objects.
Definition at line 114 of file arranger_object.h.
cairo_t* ArrangerObject::cached_cr[2] |
Cached cairo_t.
Has 2 elements in case the object needs to draw more than 1 copy (such as lane/track regions).
Definition at line 246 of file arranger_object.h.
cairo_surface_t* ArrangerObject::cached_surface[2] |
Cached surface containing drawing.
Has 2 elements in case the object needs to draw more than 1 copy (such as lane/track regions).
Definition at line 258 of file arranger_object.h.
Position ArrangerObject::clip_start_pos |
Start position of the clip loop, relative to the object's start.
The first time the region plays it will start playing from the clip_start_pos and then loop to this position.
Definition at line 147 of file arranger_object.h.
bool ArrangerObject::deleted_temporarily |
Whether deleted with delete tool.
This is used to simply hide these objects until the action finishes so that they can be cloned for the actions.
Definition at line 231 of file arranger_object.h.
Position ArrangerObject::end_pos |
End Position, if the object has one.
This is exclusive of the material, i.e., the data at this position is not counted (for audio regions at least, TODO check for others).
Definition at line 137 of file arranger_object.h.
CurveOptions ArrangerObject::fade_in_opts |
Fade in curve options.
Definition at line 177 of file arranger_object.h.
Position ArrangerObject::fade_in_pos |
Fade in position, relative to the object's start.
Must always be before Arranger_object.fade_out_pos.
Definition at line 167 of file arranger_object.h.
CurveOptions ArrangerObject::fade_out_opts |
Fade out curve options.
Definition at line 180 of file arranger_object.h.
Position ArrangerObject::fade_out_pos |
Fade out position, relative to the object's start.
Must always be after ArrangerObject.fade_in_pos.
Definition at line 174 of file arranger_object.h.
ArrangerObjectFlags ArrangerObject::flags |
Flags.
Definition at line 119 of file arranger_object.h.
GdkRectangle ArrangerObject::full_rect |
The full rectangle this object covers including off-screen parts, in absolute coordinates.
Definition at line 185 of file arranger_object.h.
int ArrangerObject::index_in_prev_lane |
Object's index in the previous lane (before being moved to a new lane/track).
Used at runtime when duplicating objects in new lanes/tracks so we can put the object back to its place before creating new copies.
Definition at line 223 of file arranger_object.h.
bool ArrangerObject::is_auditioner |
Whether part of an auditioner track.
Definition at line 265 of file arranger_object.h.
GdkRectangle ArrangerObject::last_name_rect |
Last drawn name rectangle, if object has a name.
Definition at line 261 of file arranger_object.h.
Position ArrangerObject::loop_end_pos |
End position of the clip loop, relative to the object's start.
Once this is reached, the clip will go back to the clip loop start position.
Definition at line 160 of file arranger_object.h.
Position ArrangerObject::loop_start_pos |
Loop start Position, if the object has one, relative to the object's start.
Definition at line 151 of file arranger_object.h.
int ArrangerObject::magic |
Definition at line 209 of file arranger_object.h.
ArrangerObject* ArrangerObject::main |
The opposite of the above.
This will be set on the transient objects.
Definition at line 204 of file arranger_object.h.
bool ArrangerObject::muted |
Whether muted or not (if applicable).
Definition at line 207 of file arranger_object.h.
Position ArrangerObject::pos |
Position (or start Position if the object has length).
For audio/MIDI, the material starts at this frame.
Midway Position between previous and next AutomationPoint's, if AutomationCurve.
Definition at line 129 of file arranger_object.h.
RegionIdentifier ArrangerObject::region_id |
Parent region identifier for objects that are part of a region.
Definition at line 212 of file arranger_object.h.
int ArrangerObject::texth |
Definition at line 190 of file arranger_object.h.
int ArrangerObject::textw |
Cache text H extents and W extents for the text, if the object has any.
Definition at line 189 of file arranger_object.h.
ArrangerObject* ArrangerObject::transient |
A copy ArrangerObject corresponding to this, such as when ctrl+dragging.
This will be the clone object saved in the cloned arranger selections in each arranger during actions, and would get drawn separately.
Definition at line 198 of file arranger_object.h.
ArrangerObjectType ArrangerObject::type |
Definition at line 116 of file arranger_object.h.