Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
utility_contract.hpp File Reference
#include <pulp/midi/block_ops.hpp>
#include <pulp/midi/mpe_voice_tracker.hpp>
#include <pulp/music/pitch.hpp>
#include <pulp/timebase/rational_time.hpp>
#include <algorithm>
#include <array>
#include <cmath>
#include <cstddef>
#include <cstdint>
#include <limits>
#include <optional>
#include <type_traits>

Go to the source code of this file.

Classes

struct  pulp::midi::MidiUtilityContract
struct  pulp::midi::MidiUtilityProcessReport

Namespaces

namespace  pulp
namespace  pulp::midi
namespace  pulp::midi::utility_detail

Enumerations

enum class  pulp::midi::MidiUtilityOverflowPolicy : std::uint8_t { pulp::midi::DropUnstarted , pulp::midi::FailOpenBalanced , pulp::midi::RetainReleaseDebt }
enum class  pulp::midi::MidiUtilitySameSampleOrder : std::uint8_t { pulp::midi::InputStable , pulp::midi::ReleaseBeforeAttack }
enum class  pulp::midi::MidiUtilityTransportRequirement : std::uint8_t { pulp::midi::None , pulp::midi::MonotonicSamples , pulp::midi::FlushOnDiscontinuity }

Functions

int pulp::midi::utility_detail::key_index (std::uint8_t channel, std::uint8_t note) noexcept
constexpr std::int64_t pulp::midi::utility_detail::saturating_sample_add (std::int64_t position, std::int64_t offset) noexcept
bool pulp::midi::utility_detail::emit (MidiBuffer &output, const MidiEvent &event, MidiUtilityProcessReport &report)
void pulp::midi::utility_detail::clear_output (MidiBuffer &output) noexcept
bool pulp::midi::utility_detail::ready (const MidiBuffer &output) noexcept
bool pulp::midi::utility_detail::blocks_alias (const MidiBuffer &first, const MidiBuffer &second) noexcept
void pulp::midi::utility_detail::copy_sidecars (const MidiBuffer &input, MidiBuffer &output, MidiUtilityProcessReport &report) noexcept
bool pulp::midi::utility_detail::copy_sysex_sidecar (const MidiBuffer &input, MidiBuffer &output) noexcept
bool pulp::midi::utility_detail::emit_ump (UmpBuffer *output, const UmpEvent &event) noexcept
bool pulp::midi::utility_detail::is_channel_voice (const UmpPacket &packet) noexcept
bool pulp::midi::utility_detail::is_note_addressed (const UmpPacket &packet) noexcept
UmpPacket pulp::midi::utility_detail::with_channel (UmpPacket packet, std::uint8_t channel) noexcept
MidiEvent pulp::midi::utility_detail::at (MidiEvent event, std::int32_t sample_offset) noexcept
MidiEvent pulp::midi::utility_detail::with_channel (const MidiEvent &event, std::uint8_t channel) noexcept
bool pulp::midi::utility_detail::is_channel_voice (const MidiEvent &event) noexcept
bool pulp::midi::utility_detail::is_note_addressed (const MidiEvent &event) noexcept
int pulp::midi::utility_detail::nearest_scale_note (int note, const music::Scale &scale) noexcept