sim_lib_stream_host/
lib.rs1#![forbid(unsafe_code)]
2#![deny(missing_docs)]
3mod audio_provider;
12mod backend;
13mod capability;
14mod cassette;
15mod catalog;
16mod config;
17mod eval_site;
18mod fake;
19mod inventory;
20mod midi_live_eval_site;
21mod midi_provider;
22mod model;
23mod placement;
24mod provider;
25mod queue;
26mod registry;
27mod ring;
28mod router;
29#[cfg(feature = "rtp-midi")]
30mod rtp_midi;
31mod site;
32
33pub use audio_provider::ModeledAudioProvider;
34pub use backend::{HostBackend, HostOpenStream, HostStreamDriver};
35pub use capability::{HostBackendCapability, missing_capability_card_expr};
36pub use cassette::HostCallbackCassette;
37pub use catalog::{DeviceCatalog, audio_device_export_symbol};
38pub use config::{
39 HostClockInfo, HostLatencyInfo, HostReconnectPolicy, HostStreamConfig, HostStreamConfigRequest,
40};
41pub use eval_site::{DeviceProvider, StreamEvalSite};
42pub use fake::{FakeBackend, fake_backend_symbol};
43pub use inventory::{HostDeviceInventory, HostPortSpec};
44pub use midi_live_eval_site::MidiLiveEvalSite;
45pub use midi_provider::ModeledMidiProvider;
46pub use model::{
47 HostBackendInfo, HostDeviceSpec, HostDirection, HostOpenPlan, stream_host_capability,
48};
49pub use placement::{
50 AudioDeviceCard, AudioPlacementRequest, AudioSiteKey, DeviceDirection, DeviceKind,
51 DeviceRecord, LanPlacementMode, LanPlacementReport, LanPlacementRequest, Placement,
52 lan_bar_delay_mode_symbol, lan_experimental_remote_sample_capability,
53 lan_jitter_buffered_mode_symbol, lan_peer_site_symbol,
54 lan_pinned_sample_experimental_diagnostic, lan_pinned_sample_refusal_diagnostic,
55};
56pub use provider::{
57 AUDIO_PROVIDER_ABI_VERSION, AUDIO_PROVIDER_ENTRY_V1, AudioProviderEntries, AudioProviderEntry,
58 AudioProviderHost, AudioProviderRegistrar, RouterAudioProviderRegistrar,
59 native_audio_provider_capability,
60};
61pub use queue::HostCallbackQueue;
62pub use registry::HostBackendRegistry;
63pub use ring::{ProcessRingPush, ProcessRingSnapshot, ProcessSharedRing};
64pub use router::AudioRouter;
65#[cfg(feature = "rtp-midi")]
66pub use rtp_midi::{RtpMidiBackend, RtpMidiPort, rtp_midi_backend_symbol};
67pub use site::{AudioSite, ModeledAudioSite};
68
69#[cfg(test)]
70mod catalog_tests;
71#[cfg(test)]
72mod placement_tests;
73#[cfg(test)]
74mod provider_tests;
75#[cfg(test)]
76mod ring_tests;
77#[cfg(test)]
78mod tests;