// This file is generated by kconfig_compiler_kf6 from easyeffects_db_stereo_tools.kcfg.
// All changes you do to this file will be lost.

#include "easyeffects_db_stereo_tools.h"

DbStereoTools::DbStereoTools( const QString & masterGroup, const QString & instanceIndex )
  : KConfigBaseEE( QStringLiteral( "easyeffects/db/stereotoolsrc" ) )
  , mParammasterGroup(masterGroup)
  , mParaminstanceIndex(instanceIndex)
{
  KConfigCompilerSignallingItem::NotifyFunction notifyFunction = static_cast<KConfigCompilerSignallingItem::NotifyFunction>(&DbStereoTools::itemChanged);

  KConfigGroup cgmasterGroup(this->config(), QStringLiteral( "%1" ).arg( mParammasterGroup ));
  KConfigGroup cgStereoToolsinstanceIndex = cgmasterGroup.group(QStringLiteral( "StereoTools#%1" ).arg( mParaminstanceIndex ));
  KConfigCompilerSignallingItem  *itemBypass;
  KConfigBaseEE::ItemBool  *innerItemBypass;
  innerItemBypass = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "bypass" ), mBypass, false );
  itemBypass = new KConfigCompilerSignallingItem(innerItemBypass, this, notifyFunction, signalBypassChanged);
  itemBypass->setWriteFlags(KConfigBase::Notify);
  itemBypass->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemBypass, QStringLiteral( "bypass" ) );
  KConfigCompilerSignallingItem  *itemInputGain;
  KConfigBaseEE::ItemDouble  *innerItemInputGain;
  innerItemInputGain = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "inputGain" ), mInputGain, 0 );
  itemInputGain = new KConfigCompilerSignallingItem(innerItemInputGain, this, notifyFunction, signalInputGainChanged);
  innerItemInputGain->setMinValue(-36);
  innerItemInputGain->setMaxValue(36);
  itemInputGain->setWriteFlags(KConfigBase::Notify);
  itemInputGain->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemInputGain, QStringLiteral( "inputGain" ) );
  KConfigCompilerSignallingItem  *itemOutputGain;
  KConfigBaseEE::ItemDouble  *innerItemOutputGain;
  innerItemOutputGain = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "outputGain" ), mOutputGain, 0 );
  itemOutputGain = new KConfigCompilerSignallingItem(innerItemOutputGain, this, notifyFunction, signalOutputGainChanged);
  innerItemOutputGain->setMinValue(-36);
  innerItemOutputGain->setMaxValue(36);
  itemOutputGain->setWriteFlags(KConfigBase::Notify);
  itemOutputGain->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemOutputGain, QStringLiteral( "outputGain" ) );
  KConfigCompilerSignallingItem  *itemBalanceIn;
  KConfigBaseEE::ItemDouble  *innerItemBalanceIn;
  innerItemBalanceIn = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "balanceIn" ), mBalanceIn, 0 );
  itemBalanceIn = new KConfigCompilerSignallingItem(innerItemBalanceIn, this, notifyFunction, signalBalanceInChanged);
  innerItemBalanceIn->setMinValue(-1);
  innerItemBalanceIn->setMaxValue(1);
  itemBalanceIn->setWriteFlags(KConfigBase::Notify);
  itemBalanceIn->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemBalanceIn, QStringLiteral( "balanceIn" ) );
  KConfigCompilerSignallingItem  *itemBalanceOut;
  KConfigBaseEE::ItemDouble  *innerItemBalanceOut;
  innerItemBalanceOut = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "balanceOut" ), mBalanceOut, 0 );
  itemBalanceOut = new KConfigCompilerSignallingItem(innerItemBalanceOut, this, notifyFunction, signalBalanceOutChanged);
  innerItemBalanceOut->setMinValue(-1);
  innerItemBalanceOut->setMaxValue(1);
  itemBalanceOut->setWriteFlags(KConfigBase::Notify);
  itemBalanceOut->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemBalanceOut, QStringLiteral( "balanceOut" ) );
  KConfigCompilerSignallingItem  *itemSoftclip;
  KConfigBaseEE::ItemBool  *innerItemSoftclip;
  innerItemSoftclip = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "softclip" ), mSoftclip, false );
  itemSoftclip = new KConfigCompilerSignallingItem(innerItemSoftclip, this, notifyFunction, signalSoftclipChanged);
  itemSoftclip->setWriteFlags(KConfigBase::Notify);
  itemSoftclip->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemSoftclip, QStringLiteral( "softclip" ) );
  KConfigCompilerSignallingItem  *itemMutel;
  KConfigBaseEE::ItemBool  *innerItemMutel;
  innerItemMutel = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "mutel" ), mMutel, false );
  itemMutel = new KConfigCompilerSignallingItem(innerItemMutel, this, notifyFunction, signalMutelChanged);
  itemMutel->setWriteFlags(KConfigBase::Notify);
  itemMutel->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemMutel, QStringLiteral( "mutel" ) );
  KConfigCompilerSignallingItem  *itemMuter;
  KConfigBaseEE::ItemBool  *innerItemMuter;
  innerItemMuter = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "muter" ), mMuter, false );
  itemMuter = new KConfigCompilerSignallingItem(innerItemMuter, this, notifyFunction, signalMuterChanged);
  itemMuter->setWriteFlags(KConfigBase::Notify);
  itemMuter->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemMuter, QStringLiteral( "muter" ) );
  KConfigCompilerSignallingItem  *itemPhasel;
  KConfigBaseEE::ItemBool  *innerItemPhasel;
  innerItemPhasel = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "phasel" ), mPhasel, false );
  itemPhasel = new KConfigCompilerSignallingItem(innerItemPhasel, this, notifyFunction, signalPhaselChanged);
  itemPhasel->setWriteFlags(KConfigBase::Notify);
  itemPhasel->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemPhasel, QStringLiteral( "phasel" ) );
  KConfigCompilerSignallingItem  *itemPhaser;
  KConfigBaseEE::ItemBool  *innerItemPhaser;
  innerItemPhaser = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "phaser" ), mPhaser, false );
  itemPhaser = new KConfigCompilerSignallingItem(innerItemPhaser, this, notifyFunction, signalPhaserChanged);
  itemPhaser->setWriteFlags(KConfigBase::Notify);
  itemPhaser->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemPhaser, QStringLiteral( "phaser" ) );
  QStringList defaultmodeLabels;
  defaultmodeLabels.append( QString::fromUtf8( "LR > LR (Stereo Default)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > MS (Stereo to Mid-Side)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "MS > LR (Mid-Side to Stereo)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > LL (Mono Left Channel)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > RR (Mono Right Channel)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > L+R (Mono Sum L+R)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > RL (Stereo Flip Channels)" ) );

  KConfigCompilerSignallingItem  *itemModeLabels;
  KConfigBaseEE::ItemStringList  *innerItemModeLabels;
  innerItemModeLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "modeLabels" ), mModeLabels, defaultmodeLabels );
  itemModeLabels = new KConfigCompilerSignallingItem(innerItemModeLabels, this, notifyFunction, signalModeLabelsChanged);
  itemModeLabels->setWriteFlags(KConfigBase::Notify);
  itemModeLabels->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemModeLabels, QStringLiteral( "modeLabels" ) );
  KConfigCompilerSignallingItem  *itemMode;
  KConfigBaseEE::ItemInt  *innerItemMode;
  innerItemMode = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "mode" ), mMode, 0 );
  itemMode = new KConfigCompilerSignallingItem(innerItemMode, this, notifyFunction, signalModeChanged);
  itemMode->setWriteFlags(KConfigBase::Notify);
  itemMode->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemMode, QStringLiteral( "mode" ) );
  KConfigCompilerSignallingItem  *itemSlev;
  KConfigBaseEE::ItemDouble  *innerItemSlev;
  innerItemSlev = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "slev" ), mSlev, 0 );
  itemSlev = new KConfigCompilerSignallingItem(innerItemSlev, this, notifyFunction, signalSlevChanged);
  innerItemSlev->setMinValue(-36);
  innerItemSlev->setMaxValue(36);
  itemSlev->setWriteFlags(KConfigBase::Notify);
  itemSlev->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemSlev, QStringLiteral( "slev" ) );
  KConfigCompilerSignallingItem  *itemSbal;
  KConfigBaseEE::ItemDouble  *innerItemSbal;
  innerItemSbal = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "sbal" ), mSbal, 0 );
  itemSbal = new KConfigCompilerSignallingItem(innerItemSbal, this, notifyFunction, signalSbalChanged);
  innerItemSbal->setMinValue(-1);
  innerItemSbal->setMaxValue(1);
  itemSbal->setWriteFlags(KConfigBase::Notify);
  itemSbal->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemSbal, QStringLiteral( "sbal" ) );
  KConfigCompilerSignallingItem  *itemMlev;
  KConfigBaseEE::ItemDouble  *innerItemMlev;
  innerItemMlev = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "mlev" ), mMlev, 0 );
  itemMlev = new KConfigCompilerSignallingItem(innerItemMlev, this, notifyFunction, signalMlevChanged);
  innerItemMlev->setMinValue(-36);
  innerItemMlev->setMaxValue(36);
  itemMlev->setWriteFlags(KConfigBase::Notify);
  itemMlev->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemMlev, QStringLiteral( "mlev" ) );
  KConfigCompilerSignallingItem  *itemMpan;
  KConfigBaseEE::ItemDouble  *innerItemMpan;
  innerItemMpan = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "mpan" ), mMpan, 0 );
  itemMpan = new KConfigCompilerSignallingItem(innerItemMpan, this, notifyFunction, signalMpanChanged);
  innerItemMpan->setMinValue(-1);
  innerItemMpan->setMaxValue(1);
  itemMpan->setWriteFlags(KConfigBase::Notify);
  itemMpan->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemMpan, QStringLiteral( "mpan" ) );
  KConfigCompilerSignallingItem  *itemStereoBase;
  KConfigBaseEE::ItemDouble  *innerItemStereoBase;
  innerItemStereoBase = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "stereoBase" ), mStereoBase, 0 );
  itemStereoBase = new KConfigCompilerSignallingItem(innerItemStereoBase, this, notifyFunction, signalStereoBaseChanged);
  innerItemStereoBase->setMinValue(-1);
  innerItemStereoBase->setMaxValue(1);
  itemStereoBase->setWriteFlags(KConfigBase::Notify);
  itemStereoBase->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemStereoBase, QStringLiteral( "stereoBase" ) );
  KConfigCompilerSignallingItem  *itemDelay;
  KConfigBaseEE::ItemDouble  *innerItemDelay;
  innerItemDelay = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "delay" ), mDelay, 0 );
  itemDelay = new KConfigCompilerSignallingItem(innerItemDelay, this, notifyFunction, signalDelayChanged);
  innerItemDelay->setMinValue(-20);
  innerItemDelay->setMaxValue(20);
  itemDelay->setWriteFlags(KConfigBase::Notify);
  itemDelay->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemDelay, QStringLiteral( "delay" ) );
  KConfigCompilerSignallingItem  *itemScLevel;
  KConfigBaseEE::ItemDouble  *innerItemScLevel;
  innerItemScLevel = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "scLevel" ), mScLevel, 1 );
  itemScLevel = new KConfigCompilerSignallingItem(innerItemScLevel, this, notifyFunction, signalScLevelChanged);
  innerItemScLevel->setMinValue(1);
  innerItemScLevel->setMaxValue(100);
  itemScLevel->setWriteFlags(KConfigBase::Notify);
  itemScLevel->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemScLevel, QStringLiteral( "scLevel" ) );
  KConfigCompilerSignallingItem  *itemStereoPhase;
  KConfigBaseEE::ItemDouble  *innerItemStereoPhase;
  innerItemStereoPhase = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "stereoPhase" ), mStereoPhase, 0 );
  itemStereoPhase = new KConfigCompilerSignallingItem(innerItemStereoPhase, this, notifyFunction, signalStereoPhaseChanged);
  innerItemStereoPhase->setMinValue(0);
  innerItemStereoPhase->setMaxValue(360);
  itemStereoPhase->setWriteFlags(KConfigBase::Notify);
  itemStereoPhase->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemStereoPhase, QStringLiteral( "stereoPhase" ) );
  KConfigCompilerSignallingItem  *itemDry;
  KConfigBaseEE::ItemDouble  *innerItemDry;
  innerItemDry = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "dry" ), mDry, -100 );
  itemDry = new KConfigCompilerSignallingItem(innerItemDry, this, notifyFunction, signalDryChanged);
  innerItemDry->setMinValue(-100);
  innerItemDry->setMaxValue(20);
  itemDry->setWriteFlags(KConfigBase::Notify);
  itemDry->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemDry, QStringLiteral( "dry" ) );
  KConfigCompilerSignallingItem  *itemWet;
  KConfigBaseEE::ItemDouble  *innerItemWet;
  innerItemWet = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "wet" ), mWet, 0 );
  itemWet = new KConfigCompilerSignallingItem(innerItemWet, this, notifyFunction, signalWetChanged);
  innerItemWet->setMinValue(-100);
  innerItemWet->setMaxValue(20);
  itemWet->setWriteFlags(KConfigBase::Notify);
  itemWet->setGroup(cgStereoToolsinstanceIndex);
  addItem( itemWet, QStringLiteral( "wet" ) );
}

bool DbStereoTools::defaultBypassValue_helper() const
{

  return false;
}

double DbStereoTools::defaultInputGainValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultOutputGainValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultBalanceInValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultBalanceOutValue_helper() const
{

  return 0;
}

bool DbStereoTools::defaultSoftclipValue_helper() const
{

  return false;
}

bool DbStereoTools::defaultMutelValue_helper() const
{

  return false;
}

bool DbStereoTools::defaultMuterValue_helper() const
{

  return false;
}

bool DbStereoTools::defaultPhaselValue_helper() const
{

  return false;
}

bool DbStereoTools::defaultPhaserValue_helper() const
{

  return false;
}

QStringList DbStereoTools::defaultModeLabelsValue_helper() const
{
  QStringList defaultmodeLabels;
  defaultmodeLabels.append( QString::fromUtf8( "LR > LR (Stereo Default)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > MS (Stereo to Mid-Side)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "MS > LR (Mid-Side to Stereo)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > LL (Mono Left Channel)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > RR (Mono Right Channel)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > L+R (Mono Sum L+R)" ) );
  defaultmodeLabels.append( QString::fromUtf8( "LR > RL (Stereo Flip Channels)" ) );

  return defaultmodeLabels;
}

int DbStereoTools::defaultModeValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultSlevValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultSbalValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultMlevValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultMpanValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultStereoBaseValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultDelayValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultScLevelValue_helper() const
{

  return 1;
}

double DbStereoTools::defaultStereoPhaseValue_helper() const
{

  return 0;
}

double DbStereoTools::defaultDryValue_helper() const
{

  return -100;
}

double DbStereoTools::defaultWetValue_helper() const
{

  return 0;
}

DbStereoTools::~DbStereoTools()
{
}


void DbStereoTools::itemChanged(quint64 signalFlag) {

  switch (signalFlag) {
  case signalBypassChanged:
    Q_EMIT bypassChanged();
    break;
  case signalInputGainChanged:
    Q_EMIT inputGainChanged();
    break;
  case signalOutputGainChanged:
    Q_EMIT outputGainChanged();
    break;
  case signalBalanceInChanged:
    Q_EMIT balanceInChanged();
    break;
  case signalBalanceOutChanged:
    Q_EMIT balanceOutChanged();
    break;
  case signalSoftclipChanged:
    Q_EMIT softclipChanged();
    break;
  case signalMutelChanged:
    Q_EMIT mutelChanged();
    break;
  case signalMuterChanged:
    Q_EMIT muterChanged();
    break;
  case signalPhaselChanged:
    Q_EMIT phaselChanged();
    break;
  case signalPhaserChanged:
    Q_EMIT phaserChanged();
    break;
  case signalModeLabelsChanged:
    Q_EMIT modeLabelsChanged();
    break;
  case signalModeChanged:
    Q_EMIT modeChanged();
    break;
  case signalSlevChanged:
    Q_EMIT slevChanged();
    break;
  case signalSbalChanged:
    Q_EMIT sbalChanged();
    break;
  case signalMlevChanged:
    Q_EMIT mlevChanged();
    break;
  case signalMpanChanged:
    Q_EMIT mpanChanged();
    break;
  case signalStereoBaseChanged:
    Q_EMIT stereoBaseChanged();
    break;
  case signalDelayChanged:
    Q_EMIT delayChanged();
    break;
  case signalScLevelChanged:
    Q_EMIT scLevelChanged();
    break;
  case signalStereoPhaseChanged:
    Q_EMIT stereoPhaseChanged();
    break;
  case signalDryChanged:
    Q_EMIT dryChanged();
    break;
  case signalWetChanged:
    Q_EMIT wetChanged();
    break;
  }
}
