Skip to main content

nice_plug/
prelude.rs

1// Used in [`AudioIOLayout`]
2pub use std::num::NonZeroU32;
3
4// Re-export the macros, derive macros are already re-exported from their respective modules
5pub use crate::debug::*;
6
7pub use crate::nice_export_clap;
8#[cfg(feature = "vst3")]
9pub use crate::nice_export_vst3;
10#[cfg(feature = "standalone")]
11pub use crate::wrapper::standalone::{nice_export_standalone, nice_export_standalone_with_args};
12
13pub use crate::formatters;
14pub use crate::util;
15
16pub use crate::audio_setup::{
17    AudioIOLayout, AuxiliaryBuffers, BufferConfig, PortNames, ProcessMode, new_nonzero_u32,
18};
19pub use crate::buffer::Buffer;
20pub use crate::context::PluginApi;
21pub use crate::context::gui::{AsyncExecutor, GuiContext, ParamSetter};
22pub use crate::context::init::InitContext;
23pub use crate::context::process::{ProcessContext, Transport};
24pub use crate::context::remote_controls::{
25    RemoteControlsContext, RemoteControlsPage, RemoteControlsSection,
26};
27// This also includes the derive macro
28pub use crate::editor::{Editor, Modifiers, ParentWindowHandle, VirtualKeyCode};
29pub use crate::midi::sysex::SysExMessage;
30pub use crate::midi::{MidiConfig, NoteEvent, PluginNoteEvent, control_change};
31pub use crate::params::Params;
32pub use crate::params::enums::{Enum, EnumParam};
33pub use crate::params::internals::ParamPtr;
34pub use crate::params::range::{FloatRange, IntRange};
35pub use crate::params::smoothing::{AtomicF32, Smoothable, Smoother, SmoothingStyle};
36pub use crate::params::{BoolParam, FloatParam, IntParam, Param, ParamFlags};
37pub use crate::plugin::PluginState;
38pub use crate::plugin::{Plugin, ProcessStatus, TaskExecutor};
39pub use crate::wrapper::clap::features::ClapFeature;
40pub use crate::wrapper::clap::{ClapPlugin, PolyModulationConfig};
41#[cfg(feature = "vst3")]
42pub use crate::wrapper::vst3::Vst3Plugin;
43#[cfg(feature = "vst3")]
44pub use crate::wrapper::vst3::subcategories::Vst3SubCategory;