|
DSPark 1.6.1
Header-only audio DSP framework in pure C++20 — zero dependencies
|
Host transport snapshot, delivered once per audio block. More...
#include <DSParkPlugin.h>
Public Member Functions | |
| double | secondsPerBeat () const noexcept |
| Seconds per quarter note at the current tempo. | |
| double | samplesPerBeat (double sampleRate) const noexcept |
| Samples per quarter note - the basis for tempo-synced delays/LFOs. | |
Public Attributes | |
| double | tempoBpm = 120.0 |
| Current tempo (when tempoValid). | |
| double | ppqPosition = 0.0 |
| Musical position of frame 0, in quarter notes. | |
| double | barStartPpq = 0.0 |
| Quarter-note position of the current bar start. | |
| int | timeSigNumerator = 4 |
| e.g. 3 in 3/4 (when timeSigValid). | |
| int | timeSigDenominator = 4 |
| e.g. 4 in 3/4 (when timeSigValid). | |
| double | loopStartPpq = 0.0 |
| Cycle start (when loopValid). | |
| double | loopEndPpq = 0.0 |
| Cycle end (when loopValid). | |
| bool | playing = false |
| Transport is rolling. | |
| bool | recording = false |
| Transport is recording. | |
| bool | looping = false |
| Cycle/loop mode is engaged. | |
| bool | tempoValid = false |
| tempoBpm came from the host. | |
| bool | positionValid = false |
| ppqPosition/barStartPpq came from the host. | |
| bool | timeSigValid = false |
| Time signature came from the host. | |
| bool | loopValid = false |
| Loop points came from the host. | |
Host transport snapshot, delivered once per audio block.
Implement void setTransport(const dspark::plugin::TransportInfo&) noexcept (see HasTransport) and every backend feeds it from the native source before each processBlock: the VST3 ProcessContext, the CLAP transport event, the AU host callbacks. Check the *Valid flags - hosts differ in what they provide (an offline renderer may have no timeline at all). Fields hold their defaults when the matching flag is false.
Definition at line 329 of file DSParkPlugin.h.
|
inlinenoexcept |
Samples per quarter note - the basis for tempo-synced delays/LFOs.
Definition at line 353 of file DSParkPlugin.h.
|
inlinenoexcept |
Seconds per quarter note at the current tempo.
Definition at line 347 of file DSParkPlugin.h.
| double dspark::plugin::TransportInfo::barStartPpq = 0.0 |
Quarter-note position of the current bar start.
Definition at line 333 of file DSParkPlugin.h.
| double dspark::plugin::TransportInfo::loopEndPpq = 0.0 |
Cycle end (when loopValid).
Definition at line 337 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::looping = false |
Cycle/loop mode is engaged.
Definition at line 340 of file DSParkPlugin.h.
| double dspark::plugin::TransportInfo::loopStartPpq = 0.0 |
Cycle start (when loopValid).
Definition at line 336 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::loopValid = false |
Loop points came from the host.
Definition at line 344 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::playing = false |
Transport is rolling.
Definition at line 338 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::positionValid = false |
ppqPosition/barStartPpq came from the host.
Definition at line 342 of file DSParkPlugin.h.
| double dspark::plugin::TransportInfo::ppqPosition = 0.0 |
Musical position of frame 0, in quarter notes.
Definition at line 332 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::recording = false |
Transport is recording.
Definition at line 339 of file DSParkPlugin.h.
| double dspark::plugin::TransportInfo::tempoBpm = 120.0 |
Current tempo (when tempoValid).
Definition at line 331 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::tempoValid = false |
tempoBpm came from the host.
Definition at line 341 of file DSParkPlugin.h.
| int dspark::plugin::TransportInfo::timeSigDenominator = 4 |
e.g. 4 in 3/4 (when timeSigValid).
Definition at line 335 of file DSParkPlugin.h.
| int dspark::plugin::TransportInfo::timeSigNumerator = 4 |
e.g. 3 in 3/4 (when timeSigValid).
Definition at line 334 of file DSParkPlugin.h.
| bool dspark::plugin::TransportInfo::timeSigValid = false |
Time signature came from the host.
Definition at line 343 of file DSParkPlugin.h.