Module nih_plug::params

source ·
Expand description

NIH-plug can handle floating point, integer, boolean, and enum parameters. Parameters are managed by creating a struct deriving the Params trait containing fields for those parameter types, and then returning a reference to that object from your Plugin::params() method. See the Params trait for more information.

Re-exports

Modules

  • Enum parameters. enum is a keyword, so enums it is.
  • Implementation details for the parameter management.
  • Traits and helpers for persistent fields. See the Params trait for more information.
  • Different ranges for numeric parameters.
  • Utilities to handle smoothing parameter changes over time.

Structs

  • A simple boolean parameter.
  • A floating point parameter that’s stored unnormalized. The range is used for the normalization process.
  • A discrete integer parameter that’s stored unnormalized. The range is used for the normalization process.
  • Flags for controlling a parameter’s behavior.

Traits

  • Describes a single parameter of any type. Most parameter implementations also have a field called value that and a field called smoothed. The former stores the latest unsmoothed value, and the latter can be used to access the smoother. These two fields should be used in DSP code to either get the parameter’s current (smoothed) value. In UI code the getters from this trait should be used instead.
  • Describes a struct containing parameters and other persistent fields.

Derive Macros

  • Derive the Params trait for your plugin’s parameters struct. See the Plugin trait.