truce-rack-core 0.9.0

Core traits and types for the truce-rack audio-plugin host framework
Documentation

Host-side core for the rack audio-plugin framework.

truce-rack-core defines the contracts every format wrapper (truce-rack-clap, truce-rack-vst3, truce-rack-au, …) implements: the [Plugin] trait, the [AudioBuffer] / [EventList] / [ProcessContext] passed into process, the [BusLayout] that declares bus topology, and the FFI-edge catch_unwind helpers in [wrapper].

No FFI lives here. The crate compiles on every platform with no system dependencies — a consumer that depends on truce-rack-core and on a single format wrapper picks up exactly that format's transitive deps.

Mapping from truce

truce-rack-core mirrors truce-core on the host side. The names parallel deliberately:

truce (plugin) rack (host)
PluginLogic [Plugin]
PluginExport [PluginScanner]
AudioBuffer [AudioBuffer]
EventList [EventList]
ProcessContext [ProcessContext]
BusLayout [BusLayout]
PluginInfo [PluginInfo]
wrapper::run_* [wrapper::run_*]

A host targeting one format depends on truce-rack-core plus that format's wrapper crate; a multi-format host depends on truce-rack-core plus each wrapper it needs.