Skip to main content

nice_plug_au2/
lib.rs

1#![cfg_attr(target_os = "macos", allow(non_upper_case_globals))]
2
3#[cfg(target_os = "macos")]
4pub mod audio_setup;
5#[cfg(target_os = "macos")]
6mod bridge;
7#[cfg(target_os = "macos")]
8pub mod bundle;
9#[cfg(target_os = "macos")]
10pub mod config;
11#[cfg(target_os = "macos")]
12pub mod error;
13#[cfg(target_os = "macos")]
14pub mod factory;
15#[cfg(target_os = "macos")]
16pub mod instance;
17#[cfg(target_os = "macos")]
18pub mod render;
19#[cfg(target_os = "macos")]
20mod wrapper;
21#[cfg(target_os = "macos")]
22pub use wrapper::*;
23
24#[cfg(not(target_os = "macos"))]
25#[derive(Debug, Clone, Copy)]
26pub enum Au2Category {
27    Effect,
28    MusicEffect,
29    Generator,
30    MidiEffect,
31}
32
33#[cfg(not(target_os = "macos"))]
34pub trait Au2Plugin: nice_plug_core::plugin::Plugin + 'static {
35    const AU2_CATEGORY: Au2Category;
36    const AU2_MANUFACTURER: [u8; 4];
37    const AU2_SUBTYPE: [u8; 4];
38    const AU2_NAME: &'static str = Self::NAME;
39}
40
41#[cfg(not(target_os = "macos"))]
42#[macro_export]
43macro_rules! nice_export_au2 {
44    ($plugin_ty:ty) => {};
45}