|
| enum class | BeatDivision : std::uint8_t {
Whole = 0
, WholeDotted = 1
, WholeTriplet = 2
, Half = 3
,
HalfDotted = 4
, HalfTriplet = 5
, Quarter = 6
, QuarterDotted = 7
,
QuarterTriplet = 8
, Eighth = 9
, EighthDotted = 10
, EighthTriplet = 11
,
Sixteenth = 12
, SixteenthDotted = 13
, SixteenthTriplet = 14
, ThirtySecond = 15
,
ThirtySecondDotted = 16
, ThirtySecondTriplet = 17
, SixtyFourth = 18
, SixtyFourthDotted = 19
,
SixtyFourthTriplet = 20
, Count = 21
} |
| enum class | BeatDivisionError { InvalidDivision
, NotExactlyRepresentable
, RangeExceeded
} |
| enum class | MeterMapError {
Empty
, MissingTickZero
, InvalidSignature
, UnorderedPoints
,
ChangeNotOnBarBoundary
, RangeExceeded
} |
| enum class | TempoCurve { Constant
, LinearInTicks
} |
| enum class | TempoMapError {
Empty
, MissingTickZero
, InvalidBpm
, InvalidCurve
,
InvalidFinalCurve
, UnorderedPoints
, InvalidSampleRate
, SampleRangeExceeded
} |
| enum class | ProbabilityError { InvalidRatio
} |
| enum class | GridAnchor { Timeline
, Bar
} |
| enum class | GridPlacement { Floor
, Nearest
} |
| enum class | GridProjectionError {
None
, InvalidDivision
, InvalidAnchor
, InvalidRange
,
SampleRangeExceeded
, TickRangeExceeded
, ProjectionLimitExceeded
, OutputTooSmall
} |
| enum class | GrooveKernelError {
None
, InvalidSwingGrid
, InvalidSwing
, InvalidTable
,
TooManySteps
, InvalidStrength
, InvalidVelocityScale
, ReordersEvents
,
ValidationLimitExceeded
, RangeExceeded
} |
| enum class | InlineGrooveError {
None
, InvalidSwingGrid
, InvalidSwing
, InvalidTable
,
TooManySteps
, InvalidStrength
, InvalidVelocityScale
, RangeExceeded
} |
| enum class | RatchetError {
None
, InvalidInterval
, InvalidHitCount
, CapacityExceeded
,
InsufficientResolution
, InvalidWindow
, OutputTooSmall
} |
| enum class | TriggerGridError {
None
, NotConfigured
, InvalidDimensions
, CapacityExceeded
,
InvalidStepDuration
, PatternSpanOutOfRange
, IndexOutOfRange
, InvalidVelocity
,
InvalidProbability
, InvalidMicrotiming
, InvalidWindow
, DrawCountMismatch
,
OutputTooSmall
} |
|
| constexpr BeatFraction | beat_fraction_or (BeatDivision division, BeatFraction fallback) noexcept |
| | Returns the exact fraction for division, or fallback for an invalid ordinal.
|
| runtime::Result< BeatFraction, BeatDivisionError > | beat_fraction (BeatDivision division) noexcept |
| runtime::Result< TickDuration, BeatDivisionError > | division_ticks (BeatDivision division) noexcept |
| constexpr std::uint64_t | coordinate_random (std::uint64_t seed, RandomCoordinate coordinate) noexcept |
| runtime::Result< bool, ProbabilityError > | coordinate_chance (std::uint64_t seed, RandomCoordinate coordinate, std::uint64_t numerator, std::uint64_t denominator) noexcept |
| GridProjectionResult | project_grid (const CompiledTempoMap &tempo, const CompiledMeterMap &meter, const GridProjectionRequest &request, std::span< const GridProjectionRange > ranges, std::span< GridProjectionPoint > output) noexcept |
| template<typename Groove> |
| std::int64_t | groove_timing_reach (const Groove &groove) noexcept |
| bool | valid_sample_rate (double sample_rate) noexcept |
| bool | valid_tempo (double tempo_bpm) noexcept |
| bool | valid_grid (double grid_beats) noexcept |
| double | beats_per_bar (int numerator, int denominator) noexcept |
| double | frames_to_beats (double frames, double sample_rate, double tempo_bpm) noexcept |
| double | beats_to_frames (double beats, double sample_rate, double tempo_bpm) noexcept |
| double | next_grid_boundary (double position_beats, double grid_beats) noexcept |
| constexpr bool | valid_swing_grid (TickDuration grid) noexcept |
| constexpr bool | valid_swing_ratio (SwingRatio ratio) noexcept |
| TickDuration | swing_displacement (TickPosition position, TickDuration grid, SwingRatio ratio) noexcept |
| TickPosition | swing_position (TickPosition position, TickDuration grid, SwingRatio ratio) noexcept |
| TickPosition | unswing_position (TickPosition position, TickDuration grid, SwingRatio ratio) noexcept |
| template<std::size_t MaximumHits = 64> |
| constexpr RatchetProjectionResult | project_ratchet_interval (TickPosition interval_begin, TickPosition interval_end, std::size_t hit_count, TickPosition window_begin, TickPosition window_end, std::span< TickPosition > output) noexcept |
| | Projects a bounded ratchet burst into an exact clock interval.
|
| constexpr TickPosition | operator+ (TickPosition position, TickDuration duration) noexcept |
| constexpr TickPosition | operator- (TickPosition position, TickDuration duration) noexcept |
| constexpr TickDuration | operator- (TickPosition lhs, TickPosition rhs) noexcept |
| constexpr MonotonicBeat | operator+ (MonotonicBeat beat, TickDuration duration) noexcept |
| constexpr MonotonicBeat | operator- (MonotonicBeat beat, TickDuration duration) noexcept |
| constexpr TickDuration | operator- (MonotonicBeat lhs, MonotonicBeat rhs) noexcept |