Skip to main content

Crate truce_core

Crate truce_core 

Source

Re-exports§

pub use buffer::AudioBuffer;
pub use buffer::RawBufferScratch;
pub use bus::BusConfig;
pub use bus::BusKind;
pub use bus::BusLayout;
pub use bus::ChannelConfig;
pub use editor::Editor;
pub use editor::PluginContext;
pub use events::Event;
pub use events::EventBody;
pub use events::EventList;
pub use events::PushError;
pub use events::SYSEX_POOL_PREALLOC;
pub use events::TransportInfo;
pub use export::PluginExport;
pub use info::PluginCategory;
pub use info::PluginInfo;
pub use plugin::Plugin;
pub use process::ProcessContext;
pub use process::ProcessStatus;
pub use transport::TransportSlot;
pub use util::db_to_linear;
pub use util::linear_to_db;
pub use util::meter_display;
pub use util::midi_note_to_freq;

Modules§

buffer
bus
cast
Numeric-cast helpers for the audio-plugin → host FFI boundary.
custom_state
Custom state serialization for plugin-specific persistent data.
denormal
Denormal flush guard for the audio thread.
editor
events
Event types crossing the host → plugin boundary.
export
info
midi
MIDI 1.0 byte-stream codec.
plugin
process
sample
Float and Sample - the precision-routing traits that let plugin code stay in one float type without per-call-site casts.
screenshot
Headless GUI rendering for plugins.
shell_sidecar
Sidecar file that pins the --shell logic dylib path at install time.
state
transport
Shared transport slot: audio-thread writer → editor-thread reader.
ump
Universal MIDI Packet (UMP) codec for MIDI 2.0 channel-voice messages.
util
wrapper
Helpers shared across format wrappers (CLAP, VST3, VST2, AU, AAX, LV2).

Traits§

Float
Broad numeric trait for code that operates on f32 or f64 but isn’t necessarily handling audio samples. Use this for math utilities (gain conversions, frequency math, filter coefficients). For audio-sample-typed surfaces (AudioBuffer<S>, smoother reads), use Sample instead, which extends Float with the marker bounds buffer code needs.
Sample
Audio-sample subtype of Float. Adds the Default + Send + Sync + 'static marker bounds that buffer code, scratch allocators, and the param-read extension trait need.

Functions§

slugify
Slug a plugin’s display name into a lowercase, hyphenated, ASCII-safe identifier suitable for filesystem paths, LV2 bundle names, and IRI components.