|
| void | append_children (this RegionT &self, std::vector< RegionOwnedObject * > &children) |
| | Fills the given vector with all the children of this region.
|
| |
| void | fill_midi_events (TrackPtrVariant track_var, const EngineProcessTimeInfo &time_nfo, bool note_off_at_end, bool is_note_off_for_loop_or_region_end, dsp::MidiEventVector &midi_events) const |
| | Fills MIDI event queue from this MIDI or Chord region.
|
| |
| auto | get_object_ptr (const ArrangerObject::Uuid id) const |
| |
| auto | get_object_ptr (const ArrangerObjectUuidReference &id) const |
| |
| auto & | get_arranger_object_registry () const |
| |
| auto & | get_arranger_object_registry () |
| |
| void | remove_all_children (this RegionT &self) |
| | Removes all children objects from the region.
|
| |
| bool | get_muted (bool check_parent) const override |
| | Gets the mute status of the object.
|
| |
| ArrangerObjectPtrVariant | add_clone_to_project (bool fire_events) const final |
| | Appends the ArrangerObject to where it belongs in the project (eg, a Track), without taking into account its previous index (eg, before deletion if undoing).
|
| |
| ArrangerObjectPtrVariant | insert_clone_to_project () const final |
| | Inserts the object where it belongs in the project (eg, a Track).
|
| |
| void | set_link_group (int group_idx, bool update_identifier) |
| | Sets the link group to the region.
|
| |
| void | update_identifier (this RegionT &self) |
| | Disconnects the region and anything using it.
|
| |
|
void | unlink () |
| | Removes the link group from the region, if any.
|
| |
|
bool | are_members_valid (bool is_project, dsp::FramesPerTick frames_per_tick) const |
| |
| void | stretch (double ratio) |
| | Stretch the region's contents.
|
| |
|
void | create_link_group_if_none () |
| |
| bool | is_midi () const |
| |
| bool | is_audio () const |
| |
| bool | is_automation () const |
| |
| bool | is_chord () const |
| |
|
RegionLinkGroup * | get_link_group () |
| | Returns the region's link group.
|
| |
| bool | has_link_group () const |
| |
| signed_frame_t | timeline_frames_to_local (signed_frame_t timeline_frames, bool normalize) const |
| | Converts frames on the timeline (global) to local frames (in the clip).
|
| |
| void | get_frames_till_next_loop_or_end (signed_frame_t timeline_frames, signed_frame_t *ret_frames, bool *is_loop) const |
| | Returns the number of frames until the next loop end point or the end of the region.
|
| |
|
void | update_link_group () |
| | Updates all other regions in the region link group, if any.
|
| |
|
bool | is_recording () |
| | Returns if this region is currently being recorded onto.
|
| |
| auto | get_type () const |
| |
| bool | is_start_hit_by_range (const dsp::Position &start, const dsp::Position &end, bool range_start_inclusive=true, bool range_end_inclusive=false) const |
| | Returns whether the given object is hit by the given range.
|
| |
| bool | is_start_hit_by_range (const signed_frame_t global_frames_start, const signed_frame_t global_frames_end, bool range_start_inclusive=true, bool range_end_inclusive=false) const |
| |
| void | set_parent_on_base_qproperties (QObject &derived) |
| | Set the parent on QObject's that are children of this class.
|
| |
| auto | get_position () const |
| | Getter.
|
| |
| void | position_setter_validated (const dsp::Position &pos, dsp::TicksPerFrame ticks_per_frame) |
| | The setter is for use in e.g.
|
| |
| void | set_position_unvalidated (const dsp::Position &pos) |
| |
| bool | is_position_valid (const dsp::Position &pos, PositionType pos_type, dsp::TicksPerFrame ticks_per_frame) const |
| | Returns if the given Position is valid.
|
| |
| bool | set_position (const dsp::Position &pos, PositionType pos_type, bool validate, dsp::TicksPerFrame ticks_per_frame) |
| | Sets the given position on the object, optionally attempting to validate before.
|
| |
|
void | move (double ticks, dsp::FramesPerTick frames_per_tick) |
| | Moves the object by the given amount of ticks.
|
| |
| void | set_track_id (const TrackUuid &track_id) |
| |
| void | set_track_id (std::optional< TrackUuid > track_id) |
| |
| void | unset_track_id () |
| |
| void | update_positions (bool from_ticks, bool bpm_change, dsp::FramesPerTick frames_per_tick) |
| | Updates the positions in each child recursively.
|
| |
| auto | get_track () const |
| | Returns the Track this ArrangerObject is in.
|
| |
| std::optional< TrackUuid > | get_track_id () const |
| |
| virtual bool | validate (bool is_project, dsp::FramesPerTick frames_per_tick) const =0 |
| | Validates the arranger object.
|
| |
| std::optional< ArrangerObjectPtrVariant > | remove_from_project (bool free_obj, bool fire_events=false) |
| | Removes the object (which can be obtained from find_in_project()) from its parent in the project.
|
| |
| void | set_selection_status_getter (SelectionStatusGetter getter) |
| |
| void | unset_selection_status_getter () |
| |
| virtual bool | is_deletable () const |
| | Returns whether the given object is deletable or not (eg, start marker).
|
| |
| | UuidIdentifiableObject (const Uuid &id) |
| |
|
| UuidIdentifiableObject (const UuidIdentifiableObject &other)=default |
| |
|
| UuidIdentifiableObject (UuidIdentifiableObject &&other)=default |
| |
|
UuidIdentifiableObject & | operator= (const UuidIdentifiableObject &other)=default |
| |
|
UuidIdentifiableObject & | operator= (UuidIdentifiableObject &&other)=default |
| |
| auto | get_uuid () const |
| |
| void | copy_members_from (const UuidIdentifiableObject &other) |
| |
| | NamedObject (NameValidator validator=[](const utils::Utf8String &) { return true;}) |
| |
| utils::Utf8String | get_name () const |
| | Returns the name of the object.
|
| |
|
void | gen_escaped_name () |
| | Generates the escaped name for the object.
|
| |
| void | set_name (this auto &&self, const utils::Utf8String &name) |
| | Sets the name of the object.
|
| |
| void | generate_name_from_automation_track (this auto &self, const auto &track, const auto &at) |
| |
| void | generate_name_from_track (this auto &self, const auto &track) |
| |
| void | generate_name (this auto &self, std::optional< utils::Utf8String > base_name, const auto *at, const auto *track) |
| |
| void | set_name_with_action (const utils::Utf8String &name) |
| | Changes the name and adds an action to the undo stack.
|
| |
| utils::Utf8String | gen_human_friendly_name () const final |
| | Generates a human readable name for the object.
|
| |
|
void | set_muted (bool muted, bool fire_events) |
| | Sets the mute status of the object.
|
| |
|
int | get_num_loops (bool count_incomplete) const |
| | Returns the number of loops in the ArrangerObject, optionally including incomplete ones.
|
| |
| const auto & | get_clip_start_pos () const |
| | Getter.
|
| |
| const auto & | get_loop_start_pos () const |
| | Getter.
|
| |
| const auto & | get_loop_end_pos () const |
| | Getter.
|
| |
| void | clip_start_position_setter_validated (const dsp::Position &pos, dsp::TicksPerFrame ticks_per_frame) |
| | The setter is for use in e.g.
|
| |
| void | loop_start_position_setter_validated (const dsp::Position &pos, dsp::TicksPerFrame ticks_per_frame) |
| | The setter is for use in e.g.
|
| |
| void | loop_end_position_setter_validated (const dsp::Position &pos, dsp::TicksPerFrame ticks_per_frame) |
| | The setter is for use in e.g.
|
| |
| void | set_loop_start_position_unvalidated (const dsp::Position &pos) |
| |
| void | set_loop_end_position_unvalidated (const dsp::Position &pos) |
| |
| void | set_clip_start_position_unvalidated (const dsp::Position &pos) |
| |
| double | get_loop_length_in_ticks () const |
| | Returns the length of the loop in ticks.
|
| |
| auto | get_loop_length_in_frames () const |
| | Returns the length of the loop in frames.
|
| |
| bool | is_looped () const |
| |
| auto | get_end_position () const |
| | Getter.
|
| |
|
void | parent_base_qproperties (QObject &derived) |
| |
| void | end_position_setter_validated (const dsp::Position &pos, dsp::TicksPerFrame ticks_per_frame) |
| | The setter is for use in e.g.
|
| |
| void | set_end_position_unvalidated (const dsp::Position &pos) |
| |
| auto | get_length_in_ticks () const |
| | Returns the length in ticks.
|
| |
| auto | get_length_in_frames () const |
| | Returns the length in frames.
|
| |
| void | resize (bool left, ResizeType type, double ticks, bool during_ui_action) |
| | Resizes the object on the left side or right side by given amount of ticks, for objects that do not have loops (currently none?
|
| |
template<typename SelfT>
requires (FinalArrangerObjectSubclass<SelfT>) |
| void | set_start_pos_full_size (this SelfT &self, const Position &pos, dsp::FramesPerTick frames_per_tick) |
| | Sets the end position of the ArrangerObject and also sets the loop end and fade out (if object supports those) so that they are at the end.
|
| |
template<typename SelfT>
requires (FinalArrangerObjectSubclass<SelfT>) |
| void | set_end_pos_full_size (this SelfT &self, const dsp::Position &pos, dsp::FramesPerTick frames_per_tick) |
| | Sets the end position of the ArrangerObject and also sets the loop end and fade out (if object supports those) to that position.
|
| |
| bool | is_hit (const dsp::Position &pos, bool object_end_pos_inclusive=false) const |
| | Returns whether the object is hit by the given position (local position if non-timeline object).
|
| |
| bool | is_hit (const signed_frame_t frames, bool object_end_pos_inclusive=false) const |
| |
| bool | is_hit_by_range (const dsp::Position &start, const dsp::Position &end, bool range_start_inclusive=true, bool range_end_inclusive=false, bool object_end_pos_inclusive=false) const |
| | Returns whether the given object is hit by the given range.
|
| |
| bool | is_hit_by_range (signed_frame_t global_frames_start, signed_frame_t global_frames_end, bool range_start_inclusive=true, bool range_end_inclusive=false, bool object_end_pos_inclusive=false) const |
| |
| virtual bool | is_inside_range (const dsp::Position &start, const dsp::Position &end) const |
| | Checks if any part of the object is hit by the given range.
|
| |
|
QColor | get_effective_color () const |
| | Returns the color of the object if set, otherwise the owner track's color.
|
| |
|
| ArrangerObjectRegistry & | object_registry_ |
| |
| std::optional< int > | link_group_ |
| |
| int | bounce_ = 0 |
| | Set to ON during bouncing if this region should be included.
|
| |
| bool | stretching_ = false |
| | Whether currently running the stretching algorithm.
|
| |
| double | stretch_ratio_ = 1.0 |
| | Used during arranger UI overlay actions.
|
| |
| double | before_length_ = 0.0 |
| | The length before stretching, in ticks.
|
| |
| Flags | flags_ {} |
| | Track this object belongs to (cache to be set during graph calculation).
|
| |
| bool | muted_ = false |
| | Whether muted or not.
|
| |
| dsp::Position | clip_start_pos_ |
| | Start position of the clip loop, relative to the object's start.
|
| |
| dsp::Position | loop_start_pos_ |
| | Loop start Position relative to the object's start.
|
| |
| dsp::Position | loop_end_pos_ |
| | End position of the clip loop, relative to the object's start.
|
| |
| PositionProxy * | end_pos_ = nullptr |
| | End Position, if the object has one.
|
| |
| Color | color_ |
| | Color independent of owner (Track/Region etc.).
|
| |
| bool | use_color_ = false |
| | Whether to use the custom color.
|
| |
| static constexpr double | DEFAULT_NUDGE_TICKS = 0.1 |
| |
| | Region (ArrangerObjectRegistry &object_registry) |
| |
|
void | copy_members_from (const Region &other, ObjectCloneType clone_type) |
| |
|
void | copy_members_from (const TimelineObject &other, ObjectCloneType clone_type) |
| |
|
| ArrangerObject (Type type, TrackResolver track_resolver) noexcept |
| |
|
void | copy_members_from (const ArrangerObject &other, ObjectCloneType clone_type) |
| |
|
bool | are_members_valid (bool is_project, dsp::FramesPerTick frames_per_tick) const |
| | To be called by validate() implementations.
|
| |
| void | copy_members_from (const NamedObject &other, ObjectCloneType clone_type) |
| |
|
void | copy_members_from (const MuteableObject &other, ObjectCloneType clone_type) |
| |
|
void | copy_members_from (const LoopableObject &other, ObjectCloneType clone_type) |
| |
|
bool | are_members_valid (bool is_project, dsp::FramesPerTick frames_per_tick) const |
| |
|
void | copy_members_from (const BoundedObject &other, ObjectCloneType clone_type) |
| |
|
bool | are_members_valid (bool is_project, dsp::FramesPerTick frames_per_tick) const |
| |
|
void | copy_members_from (const ColoredObject &other, ObjectCloneType clone_type) |
| |
| template<typename Derived> |
| void | init_colored_object (this Derived &self) |
| |
| TrackResolver | track_resolver_ |
| |
| PositionProxy * | pos_ = nullptr |
| | Position (or start Position if the object has length).
|
| |
| std::optional< TrackUuid > | track_id_ |
| | ID of the track this object belongs to.
|
| |
| std::optional< SelectionStatusGetter > | selection_status_getter_ |
| | Whether part of an auditioner track.
|
| |
| utils::Utf8String | name_ |
| | Name to be shown on the widget.
|
| |
| utils::Utf8String | escaped_name_ |
| | Escaped name for drawing.
|
| |
| NameValidator | name_validator_ |
| |
template<typename RegionT>
class RegionImpl< RegionT >
- Template Parameters
-
| RegionT | The region type to specialize for (CRTP type). |
Definition at line 240 of file region.h.