Expand description
Everything you’ll need to use NIH-plug. Import this with use nih_plug::prelude::*;
.
Re-exports
pub use crate::wrapper::standalone::nih_export_standalone;
pub use crate::wrapper::standalone::nih_export_standalone_with_args;
pub use crate::formatters;
pub use crate::util;
pub use crate::audio_setup::new_nonzero_u32;
pub use crate::audio_setup::AudioIOLayout;
pub use crate::audio_setup::AuxiliaryBuffers;
pub use crate::audio_setup::BufferConfig;
pub use crate::audio_setup::PortNames;
pub use crate::audio_setup::ProcessMode;
pub use crate::buffer::Buffer;
pub use crate::context::gui::AsyncExecutor;
pub use crate::context::gui::GuiContext;
pub use crate::context::gui::ParamSetter;
pub use crate::context::init::InitContext;
pub use crate::context::process::ProcessContext;
pub use crate::context::process::Transport;
pub use crate::context::remote_controls::RemoteControlsContext;
pub use crate::context::remote_controls::RemoteControlsPage;
pub use crate::context::remote_controls::RemoteControlsSection;
pub use crate::context::PluginApi;
pub use crate::editor::Editor;
pub use crate::editor::ParentWindowHandle;
pub use crate::midi::sysex::SysExMessage;
pub use crate::midi::MidiConfig;
pub use crate::midi::NoteEvent;
pub use crate::midi::PluginNoteEvent;
pub use crate::params::enums::Enum;
pub use crate::params::enums::EnumParam;
pub use crate::params::internals::ParamPtr;
pub use crate::params::range::FloatRange;
pub use crate::params::range::IntRange;
pub use crate::params::smoothing::Smoothable;
pub use crate::params::smoothing::Smoother;
pub use crate::params::smoothing::SmoothingStyle;
pub use crate::params::Params;
pub use crate::params::BoolParam;
pub use crate::params::FloatParam;
pub use crate::params::IntParam;
pub use crate::params::Param;
pub use crate::params::ParamFlags;
pub use crate::plugin::clap::ClapPlugin;
pub use crate::plugin::clap::PolyModulationConfig;
pub use crate::plugin::vst3::Vst3Plugin;
pub use crate::plugin::Plugin;
pub use crate::plugin::ProcessStatus;
pub use crate::plugin::TaskExecutor;
pub use crate::wrapper::clap::features::ClapFeature;
pub use crate::wrapper::state::PluginState;
pub use crate::wrapper::vst3::subcategories::Vst3SubCategory;
pub use crate::debug::*;
Modules
- Constants to represent controller change types.
Macros
- Export a CLAP plugin from this library using the provided plugin type.
- nih_export_vst3
vst3
Export a VST3 plugin from this library using the provided plugin type.
Structs
- A floating point type which can be safely shared between threads.
- An integer that is known not to equal zero.
Derive Macros
- Derive the
Enum
trait for simple enum parameters. SeeEnumParam
for more information. - Derive the
Params
trait for your plugin’s parameters struct. See thePlugin
trait.