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 |
The rectangle this object was last drawn in (ie, after any necessary clipping), in absolute coordinates. | |
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. | |
bool | use_cache |
Set to true to blit the cached surface, false to redraw. | |
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 121 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 269 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 281 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 158 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 247 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 148 of file arranger_object.h.
CurveOptions ArrangerObject::fade_in_opts |
Fade in curve options.
Definition at line 188 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 178 of file arranger_object.h.
CurveOptions ArrangerObject::fade_out_opts |
Fade out curve options.
Definition at line 191 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 185 of file arranger_object.h.
ArrangerObjectFlags ArrangerObject::flags |
Flags.
Definition at line 126 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 196 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 239 of file arranger_object.h.
bool ArrangerObject::is_auditioner |
Whether part of an auditioner track.
Definition at line 289 of file arranger_object.h.
GdkRectangle ArrangerObject::last_name_rect |
Last drawn name rectangle, if object has a name.
Definition at line 285 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 171 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 162 of file arranger_object.h.
int ArrangerObject::magic |
Definition at line 225 of file arranger_object.h.
ArrangerObject* ArrangerObject::main |
The opposite of the above.
This will be set on the transient objects.
Definition at line 220 of file arranger_object.h.
bool ArrangerObject::muted |
Whether muted or not (if applicable).
Definition at line 223 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 138 of file arranger_object.h.
RegionIdentifier ArrangerObject::region_id |
Parent region identifier for objects that are part of a region.
Definition at line 228 of file arranger_object.h.
int ArrangerObject::texth |
Definition at line 206 of file arranger_object.h.
int ArrangerObject::textw |
The rectangle this object was last drawn in (ie, after any necessary clipping), in absolute coordinates.
Cache text H extents and W extents for the text, if the object has any.
Definition at line 205 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 214 of file arranger_object.h.
ArrangerObjectType ArrangerObject::type |
Definition at line 123 of file arranger_object.h.
bool ArrangerObject::use_cache |
Set to true to blit the cached surface, false to redraw.
Definition at line 257 of file arranger_object.h.