Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
MuteableObject Class Reference
Inheritance diagram for MuteableObject:
Collaboration diagram for MuteableObject:

Public Member Functions

virtual bool get_muted (bool check_parent) const
 Gets the mute status of the object.
 
void set_muted (bool muted, bool fire_events)
 Sets the mute status of the object.
 
- Public Member Functions inherited from ArrangerObject
auto get_type () const
 
virtual utils::Utf8String gen_human_friendly_name () const
 Generates a human readable name for the object.
 
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< TrackUuidget_track_id () const
 
virtual bool validate (bool is_project, dsp::FramesPerTick frames_per_tick) const =0
 Validates the arranger object.
 
virtual ArrangerObjectPtrVariant add_clone_to_project (bool fire_events) const =0
 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).
 
virtual ArrangerObjectPtrVariant insert_clone_to_project () const =0
 Inserts the object where it belongs in the project (eg, a Track).
 
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).
 
- Public Member Functions inherited from zrythm::utils::UuidIdentifiableObject< ArrangerObject >
 UuidIdentifiableObject (const Uuid &id)
 
 UuidIdentifiableObject (const UuidIdentifiableObject &other)=default
 
 UuidIdentifiableObject (UuidIdentifiableObject &&other)=default
 
UuidIdentifiableObjectoperator= (const UuidIdentifiableObject &other)=default
 
UuidIdentifiableObjectoperator= (UuidIdentifiableObject &&other)=default
 
auto get_uuid () const
 
void copy_members_from (const UuidIdentifiableObject &other)
 

Data Fields

bool muted_ = false
 Whether muted or not.
 
- Data Fields inherited from ArrangerObject
Flags flags_ {}
 Track this object belongs to (cache to be set during graph calculation).
 

Protected Member Functions

void copy_members_from (const MuteableObject &other, ObjectCloneType clone_type)
 
- Protected Member Functions inherited from ArrangerObject
 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.
 

Friends

void to_json (nlohmann::json &j, const MuteableObject &object)
 
void from_json (const nlohmann::json &j, MuteableObject &object)
 

Additional Inherited Members

- Public Types inherited from ArrangerObject
enum class  ResizeType {
  Normal , Loop , Fade , Stretch ,
  StretchTempoChange
}
 Flag used in some functions. More...
 
enum class  Type {
  MidiRegion , AudioRegion , ChordRegion , AutomationRegion ,
  MidiNote , ChordObject , ScaleObject , Marker ,
  AutomationPoint
}
 The type of the object. More...
 
enum class  Flags { NonProject = 1 << 0 }
 Flags. More...
 
enum class  PositionType {
  Start , End , ClipStart , LoopStart ,
  LoopEnd , FadeIn , FadeOut
}
 
using SelectionStatusGetter = std::function<bool (const Uuid &)>
 
using Position = zrythm::dsp::Position
 
using ArrangerObjectPtr = ArrangerObject *
 
- Static Public Attributes inherited from ArrangerObject
static constexpr double DEFAULT_NUDGE_TICKS = 0.1
 
- Protected Attributes inherited from ArrangerObject
TrackResolver track_resolver_
 
PositionProxypos_ = nullptr
 Position (or start Position if the object has length).
 
std::optional< TrackUuidtrack_id_
 ID of the track this object belongs to.
 
std::optional< SelectionStatusGetter > selection_status_getter_
 Whether part of an auditioner track.
 

Detailed Description

Definition at line 9 of file muteable_object.h.

Constructor & Destructor Documentation

◆ MuteableObject()

MuteableObject::MuteableObject ( )
inlinenoexcept

Definition at line 13 of file muteable_object.h.

Member Function Documentation

◆ get_muted()

virtual bool MuteableObject::get_muted ( bool check_parent) const
inlinevirtual

Gets the mute status of the object.

Parameters
check_parentWhether to check parent (parent region or parent track lane if region), otherwise only whether this object itself is muted is returned. This will take the solo status of other lanes if true and if this is a region that can have lanes.

Reimplemented in AudioRegion, AutomationRegion, RegionImpl< RegionT >, RegionImpl< AudioRegion >, RegionImpl< AutomationRegion >, RegionImpl< ChordRegion >, RegionImpl< ChordRegion >, and RegionImpl< MidiRegion >.

Definition at line 25 of file muteable_object.h.

Friends And Related Symbol Documentation

◆ from_json

void from_json ( const nlohmann::json & j,
MuteableObject & object )
friend

Definition at line 42 of file muteable_object.h.

◆ to_json

void to_json ( nlohmann::json & j,
const MuteableObject & object )
friend

Definition at line 38 of file muteable_object.h.

Field Documentation

◆ muted_

bool MuteableObject::muted_ = false

Whether muted or not.

Definition at line 49 of file muteable_object.h.


The documentation for this class was generated from the following file: