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

#include <panner.hpp>

Classes

struct  StereoSample

Public Member Functions

 PannerT ()
void set_pan (SampleType pan)
SampleType pan () const
void set_law (PanLaw law)
PanLaw law () const
StereoSample process (SampleType input) const
 Pan a mono signal to stereo.
void process (SampleType &left, SampleType &right) const
 Pan stereo in-place (adjust balance).
void compute_gains (SampleType &l_gain, SampleType &r_gain) const
 Per-channel gains for the current pan + law.

Constructor & Destructor Documentation

◆ PannerT()

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

Member Function Documentation

◆ compute_gains()

template<typename SampleType = float>
void pulp::signal::PannerT< SampleType >::compute_gains ( SampleType & l_gain,
SampleType & r_gain ) const
inline

Per-channel gains for the current pan + law.

Exposed so callers can ramp / smooth the gain themselves. The gains are a pure function of (pan, law), so they are evaluated in the setters and cached; the trigonometry never runs per sample.

◆ law()

template<typename SampleType = float>
PanLaw pulp::signal::PannerT< SampleType >::law ( ) const
inline

◆ pan()

template<typename SampleType = float>
SampleType pulp::signal::PannerT< SampleType >::pan ( ) const
inline

◆ process() [1/2]

template<typename SampleType = float>
void pulp::signal::PannerT< SampleType >::process ( SampleType & left,
SampleType & right ) const
inline

Pan stereo in-place (adjust balance).

◆ process() [2/2]

template<typename SampleType = float>
StereoSample pulp::signal::PannerT< SampleType >::process ( SampleType input) const
inline

Pan a mono signal to stereo.

◆ set_law()

template<typename SampleType = float>
void pulp::signal::PannerT< SampleType >::set_law ( PanLaw law)
inline

◆ set_pan()

template<typename SampleType = float>
void pulp::signal::PannerT< SampleType >::set_pan ( SampleType pan)
inline

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