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

Attack-Decay one-shot, trigger-driven. More...

#include <envelope.hpp>

Public Member Functions

void prepare (double sample_rate)
void set_attack_ms (double ms)
void set_decay_ms (double ms)
void set_attack_curve (float c)
void set_decay_curve (float c)
void set_curve (double c)
void set_loop (bool on, int count=0)
void trigger (SampleType velocity=SampleType{1})
void gate_on ()
void gate_off ()
void reset ()
SampleType next ()
SampleType current () const
SampleType value () const
bool active () const
int loops_completed () const
EnvelopeStage stage () const

Detailed Description

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

Attack-Decay one-shot, trigger-driven.

Gate release is ignored by construction.

USE: percussion and plucks fired from TriggerDetectT or BurstGenT; modulation blips such as filter pings; anything where the event has no duration. Retriggering during the decay ramps from the current level rather than from zero, so a fast roll does not click.

Member Function Documentation

◆ active()

template<typename SampleType = float>
bool pulp::signal::AdT< SampleType >::active ( ) const
inline

◆ current()

template<typename SampleType = float>
SampleType pulp::signal::AdT< SampleType >::current ( ) const
inline

◆ gate_off()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::gate_off ( )
inline

◆ gate_on()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::gate_on ( )
inline

◆ loops_completed()

template<typename SampleType = float>
int pulp::signal::AdT< SampleType >::loops_completed ( ) const
inline

◆ next()

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

◆ prepare()

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

◆ reset()

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

◆ set_attack_curve()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::set_attack_curve ( float c)
inline

◆ set_attack_ms()

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

◆ set_curve()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::set_curve ( double c)
inline

◆ set_decay_curve()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::set_decay_curve ( float c)
inline

◆ set_decay_ms()

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

◆ set_loop()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::set_loop ( bool on,
int count = 0 )
inline
Parameters
ontrue to loop; count 0 loops forever, otherwise 1..128.

◆ stage()

template<typename SampleType = float>
EnvelopeStage pulp::signal::AdT< SampleType >::stage ( ) const
inline

◆ trigger()

template<typename SampleType = float>
void pulp::signal::AdT< SampleType >::trigger ( SampleType velocity = SampleType{1})
inline

◆ value()

template<typename SampleType = float>
SampleType pulp::signal::AdT< SampleType >::value ( ) const
inline

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