|
Zrythm v2.0.0-alpha.1
a highly automated and intuitive digital audio workstation
|
Base class for timeline data providers. More...
#include <src/structure/arrangement/timeline_data_provider.h>


Public Types | |
| using | IntervalType = std::pair<units::sample_t, units::sample_t> |
Public Member Functions | |
| TimelineDataProvider (QObject *parent=nullptr) | |
| template<ClipObject ClipType> | |
| void | generate_events (this auto &self, const dsp::TempoMap &tempo_map, utils::RangeOf< const ClipType * > auto clips, utils::ExpandableTickRange affected_range) |
| Generate the event sequence to be used during realtime processing. | |
| virtual void | clear_all_caches ()=0 |
| virtual void | remove_sequences_matching_interval_from_all_caches (IntervalType interval)=0 |
| virtual const dsp::TimelineDataCache * | get_base_cache () const =0 |
Protected Member Functions | |
| virtual dsp::TimelineDataCache * | get_base_cache ()=0 |
Protected Attributes | |
| dsp::ITransport::PlayState | last_seen_transport_state_ |
| Last transport state we've seen. | |
| units::sample_t | next_expected_transport_position_ |
| Next expected transport position (for detecting jumps). | |
Base class for timeline data providers.
Provides common functionality for all timeline data provider types. This is an abstract base class that defines the interface that all derived provider classes must implement.
Definition at line 26 of file timeline_data_provider.h.
| using zrythm::structure::arrangement::TimelineDataProvider::IntervalType = std::pair<units::sample_t, units::sample_t> |
Definition at line 31 of file timeline_data_provider.h.
|
inlineexplicit |
Definition at line 33 of file timeline_data_provider.h.
|
inline |
Generate the event sequence to be used during realtime processing.
To be called as needed from the UI thread when a new cache is requested.
| ClipType | Either MidiClip, AudioClip, ChordClip, or AutomationClip |
| self | The derived class instance (explicit this parameter) |
| tempo_map | The tempo map for timing conversion. |
| clips | The clips to process. |
| affected_range | The range of ticks to process. |
Definition at line 52 of file timeline_data_provider.h.
|
protected |
Last transport state we've seen.
Definition at line 134 of file timeline_data_provider.h.
|
protected |
Next expected transport position (for detecting jumps).
Definition at line 139 of file timeline_data_provider.h.