Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::signal::VactrolConditionerT< SampleType > Class Template Reference

The asymmetric one-pole that lags a control signal the way a photoresistor lags its LED. More...

#include <vactrol.hpp>

Public Member Functions

 VactrolConditionerT ()
void prepare (double sample_rate)
void set_rise_ms (double ms)
void set_fall_ms (double ms)
double rise_ms () const
double fall_ms () const
void reset ()
double control () const
 Current conditioned control in [0, 1] without advancing.
double process (double target)
 Advances one sample toward target (clamped to [0, 1]) and returns the conditioned control.

Static Public Attributes

static constexpr double kMinRiseMs = 0.1
 Default rise time in ms — the LED reaching brightness.
static constexpr double kMaxRiseMs = 50.0
static constexpr double kDefaultRiseMs = 2.0
static constexpr double kMinFallMs = 10.0
 Default fall time in ms — the photoresistor recovering.
static constexpr double kMaxFallMs = 2000.0
static constexpr double kDefaultFallMs = 200.0

Detailed Description

template<typename SampleType = float>
class pulp::signal::VactrolConditionerT< SampleType >

The asymmetric one-pole that lags a control signal the way a photoresistor lags its LED.

Input and output are in [0, 1].

Constructor & Destructor Documentation

◆ VactrolConditionerT()

template<typename SampleType = float>
pulp::signal::VactrolConditionerT< SampleType >::VactrolConditionerT ( )
inline

Member Function Documentation

◆ control()

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::control ( ) const
inline

Current conditioned control in [0, 1] without advancing.

◆ fall_ms()

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::fall_ms ( ) const
inline

◆ prepare()

template<typename SampleType = float>
void pulp::signal::VactrolConditionerT< SampleType >::prepare ( double sample_rate)
inline

◆ process()

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::process ( double target)
inline

Advances one sample toward target (clamped to [0, 1]) and returns the conditioned control.

◆ reset()

template<typename SampleType = float>
void pulp::signal::VactrolConditionerT< SampleType >::reset ( )
inline

◆ rise_ms()

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::rise_ms ( ) const
inline

◆ set_fall_ms()

template<typename SampleType = float>
void pulp::signal::VactrolConditionerT< SampleType >::set_fall_ms ( double ms)
inline

◆ set_rise_ms()

template<typename SampleType = float>
void pulp::signal::VactrolConditionerT< SampleType >::set_rise_ms ( double ms)
inline

Member Data Documentation

◆ kDefaultFallMs

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::kDefaultFallMs = 200.0
staticconstexpr

◆ kDefaultRiseMs

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::kDefaultRiseMs = 2.0
staticconstexpr

◆ kMaxFallMs

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::kMaxFallMs = 2000.0
staticconstexpr

◆ kMaxRiseMs

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::kMaxRiseMs = 50.0
staticconstexpr

◆ kMinFallMs

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::kMinFallMs = 10.0
staticconstexpr

Default fall time in ms — the photoresistor recovering.

Slow, and the control that sets how long a struck note takes to disappear. [design parameter] default 200 ms, range 10 .. 2000 ms.

◆ kMinRiseMs

template<typename SampleType = float>
double pulp::signal::VactrolConditionerT< SampleType >::kMinRiseMs = 0.1
staticconstexpr

Default rise time in ms — the LED reaching brightness.

Fast. [design parameter] default 2.0 ms, range 0.1 .. 50 ms.


The documentation for this class was generated from the following file:
  • /home/runner/work/pulp/pulp/core/signal/include/pulp/signal/vactrol.hpp