Audacity 3.2.0
Public Attributes | Static Public Attributes | Friends | List of all members
EffectReverbSettings Struct Reference

#include <Reverb.h>

Public Attributes

double mRoomSize { roomSizeDefault }
 
double mPreDelay { preDelayDefault }
 
double mReverberance { reverberanceDefault }
 
double mHfDamping { hfDampingDefault }
 
double mToneLow { toneLowDefault }
 
double mToneHigh { toneHighDefault }
 
double mWetGain { wetGainDefault }
 
double mDryGain { dryGainDefault }
 
double mStereoWidth { stereoWidthDefault }
 
bool mWetOnly { wetOnlyDefault }
 

Static Public Attributes

static constexpr double roomSizeDefault = 75.0
 
static constexpr double preDelayDefault = 10.0
 
static constexpr double reverberanceDefault = 50.0
 
static constexpr double hfDampingDefault = 50.0
 
static constexpr double toneLowDefault = 100.0
 
static constexpr double toneHighDefault = 100.0
 
static constexpr double wetGainDefault = -1.0
 
static constexpr double dryGainDefault = -1.0
 
static constexpr double stereoWidthDefault = 100.0
 
static constexpr bool wetOnlyDefault = false
 

Friends

bool operator== (const EffectReverbSettings &a, const EffectReverbSettings &b)
 
bool OnlySimpleParametersChanged (const EffectReverbSettings &a, const EffectReverbSettings &b)
 

Detailed Description

Definition at line 21 of file Reverb.h.

Friends And Related Function Documentation

◆ OnlySimpleParametersChanged

bool OnlySimpleParametersChanged ( const EffectReverbSettings a,
const EffectReverbSettings b 
)
friend

Definition at line 647 of file Reverb.cpp.

648{
649 // A "simple" reverb parameter is one that when changed, does not require the
650 // reverb allpass/comb filters to be reset. This distinction enables us to
651 // code things so that the user can keep hearing the processed sound while
652 // they tweak one of the simple parameters.
653
654 const bool oneSimpleParameterChanged =
655
657 || (a.mHfDamping != b.mHfDamping)
658 || (a.mToneLow != b.mToneLow)
659 || (a.mToneHigh != b.mToneHigh)
660 || (a.mWetGain != b.mWetGain);
661
662
663 const bool allNonSimpleParametersStayedTheSame =
664
665 (a.mRoomSize == b.mRoomSize)
666 && (a.mPreDelay == b.mPreDelay)
667 && (a.mStereoWidth == b.mStereoWidth);
668
669 return oneSimpleParameterChanged && allNonSimpleParametersStayedTheSame;
670}
double mStereoWidth
Definition: Reverb.h:42
double mReverberance
Definition: Reverb.h:36
double mHfDamping
Definition: Reverb.h:37
double mRoomSize
Definition: Reverb.h:34
double mPreDelay
Definition: Reverb.h:35
double mToneHigh
Definition: Reverb.h:39

◆ operator==

bool operator== ( const EffectReverbSettings a,
const EffectReverbSettings b 
)
friend

Definition at line 632 of file Reverb.cpp.

633{
634 // With C++20, all of this can be replaced by =default
635 return (a.mRoomSize == b.mRoomSize)
636 && (a.mPreDelay == b.mPreDelay)
637 && (a.mReverberance == b.mReverberance)
638 && (a.mHfDamping == b.mHfDamping)
639 && (a.mToneLow == b.mToneLow)
640 && (a.mToneHigh == b.mToneHigh)
641 && (a.mWetGain == b.mWetGain)
642 && (a.mDryGain == b.mDryGain)
643 && (a.mStereoWidth == b.mStereoWidth)
644 && (a.mWetOnly == b.mWetOnly);
645}

Member Data Documentation

◆ dryGainDefault

constexpr double EffectReverbSettings::dryGainDefault = -1.0
staticconstexpr

Definition at line 30 of file Reverb.h.

◆ hfDampingDefault

constexpr double EffectReverbSettings::hfDampingDefault = 50.0
staticconstexpr

Definition at line 26 of file Reverb.h.

◆ mDryGain

double EffectReverbSettings::mDryGain { dryGainDefault }

Definition at line 41 of file Reverb.h.

◆ mHfDamping

double EffectReverbSettings::mHfDamping { hfDampingDefault }

Definition at line 37 of file Reverb.h.

◆ mPreDelay

double EffectReverbSettings::mPreDelay { preDelayDefault }

Definition at line 35 of file Reverb.h.

◆ mReverberance

double EffectReverbSettings::mReverberance { reverberanceDefault }

Definition at line 36 of file Reverb.h.

◆ mRoomSize

double EffectReverbSettings::mRoomSize { roomSizeDefault }

Definition at line 34 of file Reverb.h.

Referenced by EffectReverb::Editor::ValidateUI().

◆ mStereoWidth

double EffectReverbSettings::mStereoWidth { stereoWidthDefault }

Definition at line 42 of file Reverb.h.

◆ mToneHigh

double EffectReverbSettings::mToneHigh { toneHighDefault }

Definition at line 39 of file Reverb.h.

◆ mToneLow

double EffectReverbSettings::mToneLow { toneLowDefault }

Definition at line 38 of file Reverb.h.

◆ mWetGain

double EffectReverbSettings::mWetGain { wetGainDefault }

Definition at line 40 of file Reverb.h.

◆ mWetOnly

bool EffectReverbSettings::mWetOnly { wetOnlyDefault }

Definition at line 43 of file Reverb.h.

◆ preDelayDefault

constexpr double EffectReverbSettings::preDelayDefault = 10.0
staticconstexpr

Definition at line 24 of file Reverb.h.

◆ reverberanceDefault

constexpr double EffectReverbSettings::reverberanceDefault = 50.0
staticconstexpr

Definition at line 25 of file Reverb.h.

◆ roomSizeDefault

constexpr double EffectReverbSettings::roomSizeDefault = 75.0
staticconstexpr

Definition at line 23 of file Reverb.h.

◆ stereoWidthDefault

constexpr double EffectReverbSettings::stereoWidthDefault = 100.0
staticconstexpr

Definition at line 31 of file Reverb.h.

◆ toneHighDefault

constexpr double EffectReverbSettings::toneHighDefault = 100.0
staticconstexpr

Definition at line 28 of file Reverb.h.

◆ toneLowDefault

constexpr double EffectReverbSettings::toneLowDefault = 100.0
staticconstexpr

Definition at line 27 of file Reverb.h.

◆ wetGainDefault

constexpr double EffectReverbSettings::wetGainDefault = -1.0
staticconstexpr

Definition at line 29 of file Reverb.h.

◆ wetOnlyDefault

constexpr bool EffectReverbSettings::wetOnlyDefault = false
staticconstexpr

Definition at line 32 of file Reverb.h.


The documentation for this struct was generated from the following file: