|
Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
|
Base class for all objects in the arranger. More...
#include <src/structure/arrangement/arranger_object.h>


Public Types | |
| enum class | Type : std::uint8_t { MidiRegion , AudioRegion , ChordRegion , AutomationRegion , MidiNote , ChordObject , ScaleObject , Marker , AutomationPoint , AudioSourceObject , TempoObject , TimeSignatureObject } |
| The type of the object. More... | |
Public Member Functions | |
| bool | is_start_hit_by_range (const units::sample_t frames_start, const units::sample_t frames_end, bool range_start_inclusive=true, bool range_end_inclusive=false) const |
| auto | type () const |
| dsp::AtomicPositionQmlAdapter * | position () const |
| ArrangerObjectBounds * | bounds () const |
| ArrangerObjectLoopRange * | loopRange () const |
| ArrangerObjectName * | name () const |
| ArrangerObjectColor * | color () const |
| ArrangerObjectMuteFunctionality * | mute () const |
| ArrangerObjectFadeRange * | fadeRange () const |
| Q_SIGNAL void | propertiesChanged () |
| Emitted when any of the properties of the object changed. | |
| ArrangerObject * | parentObject () const |
| void | setParentObject (ArrangerObject *object) |
| Q_SIGNAL void | parentObjectChanged (QObject *parentObject) |
| auto & | get_tempo_map () const |
| Public Member Functions inherited from zrythm::utils::UuidIdentifiableObject< ArrangerObject > | |
| UuidIdentifiableObject & | operator= (const UuidIdentifiableObject &other)=default |
| auto | get_uuid () const |
Protected Member Functions | |
| ArrangerObject (Type type, const dsp::TempoMap &tempo_map, ArrangerObjectFeatures features, QObject *parent=nullptr) noexcept | |
| Construct a new ArrangerObject. | |
Friends | |
| void | init_from (ArrangerObject &obj, const ArrangerObject &other, utils::ObjectCloneType clone_type) |
| void | to_json (nlohmann::json &j, const ArrangerObject &arranger_object) |
| void | from_json (const nlohmann::json &j, ArrangerObject &arranger_object) |
Base class for all objects in the arranger.
The ArrangerObject class is the base class for all objects that can be placed in the arranger, such as regions, MIDI notes, chord objects, etc. It provides common functionality and properties shared by all these objects.
Definition at line 29 of file arranger_object.h.
|
strongprotected |
Definition at line 122 of file arranger_object.h.
|
strong |
The type of the object.
Definition at line 52 of file arranger_object.h.
|
protectednoexcept |
Construct a new ArrangerObject.
| tempo_map | |
| derived | The derived class instance, to be used for parenting any QObjects created by this class. |
|
inline |
Definition at line 100 of file arranger_object.h.
|
inline |
Definition at line 103 of file arranger_object.h.
|
inline |
Definition at line 105 of file arranger_object.h.
|
inline |
Definition at line 119 of file arranger_object.h.
|
inline |
Definition at line 76 of file arranger_object.h.
|
inline |
Definition at line 101 of file arranger_object.h.
|
inline |
Definition at line 104 of file arranger_object.h.
|
inline |
Definition at line 102 of file arranger_object.h.
|
inline |
Definition at line 112 of file arranger_object.h.
|
inline |
Definition at line 95 of file arranger_object.h.
|
inline |
Definition at line 93 of file arranger_object.h.
|
read |
Definition at line 38 of file arranger_object.h.
|
read |
Definition at line 42 of file arranger_object.h.
|
read |
Definition at line 45 of file arranger_object.h.
|
read |
Definition at line 40 of file arranger_object.h.
|
read |
Definition at line 44 of file arranger_object.h.
|
read |
Definition at line 41 of file arranger_object.h.
|
readwrite |
Definition at line 35 of file arranger_object.h.
|
read |
Definition at line 37 of file arranger_object.h.
|
read |
Definition at line 36 of file arranger_object.h.