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

#include "easyeffects_db_expander.h"

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

  KConfigGroup cgmasterGroup(this->config(), QStringLiteral( "%1" ).arg( mParammasterGroup ));
  KConfigGroup cgExpanderinstanceIndex = cgmasterGroup.group(QStringLiteral( "Expander#%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(cgExpanderinstanceIndex);
  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(cgExpanderinstanceIndex);
  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(cgExpanderinstanceIndex);
  addItem( itemOutputGain, QStringLiteral( "outputGain" ) );
  KConfigCompilerSignallingItem  *itemDry;
  KConfigBaseEE::ItemDouble  *innerItemDry;
  innerItemDry = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "dry" ), mDry, -80.01 );
  itemDry = new KConfigCompilerSignallingItem(innerItemDry, this, notifyFunction, signalDryChanged);
  innerItemDry->setMinValue(-80.01);
  innerItemDry->setMaxValue(20);
  itemDry->setWriteFlags(KConfigBase::Notify);
  itemDry->setGroup(cgExpanderinstanceIndex);
  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(-80.01);
  innerItemWet->setMaxValue(20);
  itemWet->setWriteFlags(KConfigBase::Notify);
  itemWet->setGroup(cgExpanderinstanceIndex);
  addItem( itemWet, QStringLiteral( "wet" ) );
  QStringList defaultmodeLabels;
  defaultmodeLabels.append( QString::fromUtf8( "Downward" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Upward" ) );

  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(cgExpanderinstanceIndex);
  addItem( itemModeLabels, QStringLiteral( "modeLabels" ) );
  KConfigCompilerSignallingItem  *itemMode;
  KConfigBaseEE::ItemInt  *innerItemMode;
  innerItemMode = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "mode" ), mMode, 1 );
  itemMode = new KConfigCompilerSignallingItem(innerItemMode, this, notifyFunction, signalModeChanged);
  itemMode->setWriteFlags(KConfigBase::Notify);
  itemMode->setGroup(cgExpanderinstanceIndex);
  addItem( itemMode, QStringLiteral( "mode" ) );
  KConfigCompilerSignallingItem  *itemAttack;
  KConfigBaseEE::ItemDouble  *innerItemAttack;
  innerItemAttack = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "attack" ), mAttack, 20 );
  itemAttack = new KConfigCompilerSignallingItem(innerItemAttack, this, notifyFunction, signalAttackChanged);
  innerItemAttack->setMinValue(0);
  innerItemAttack->setMaxValue(2000);
  itemAttack->setWriteFlags(KConfigBase::Notify);
  itemAttack->setGroup(cgExpanderinstanceIndex);
  addItem( itemAttack, QStringLiteral( "attack" ) );
  KConfigCompilerSignallingItem  *itemRelease;
  KConfigBaseEE::ItemDouble  *innerItemRelease;
  innerItemRelease = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "release" ), mRelease, 100 );
  itemRelease = new KConfigCompilerSignallingItem(innerItemRelease, this, notifyFunction, signalReleaseChanged);
  innerItemRelease->setMinValue(0);
  innerItemRelease->setMaxValue(5000);
  itemRelease->setWriteFlags(KConfigBase::Notify);
  itemRelease->setGroup(cgExpanderinstanceIndex);
  addItem( itemRelease, QStringLiteral( "release" ) );
  KConfigCompilerSignallingItem  *itemReleaseThreshold;
  KConfigBaseEE::ItemDouble  *innerItemReleaseThreshold;
  innerItemReleaseThreshold = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "releaseThreshold" ), mReleaseThreshold, -80.01 );
  itemReleaseThreshold = new KConfigCompilerSignallingItem(innerItemReleaseThreshold, this, notifyFunction, signalReleaseThresholdChanged);
  innerItemReleaseThreshold->setMinValue(-80.01);
  innerItemReleaseThreshold->setMaxValue(0);
  itemReleaseThreshold->setWriteFlags(KConfigBase::Notify);
  itemReleaseThreshold->setGroup(cgExpanderinstanceIndex);
  addItem( itemReleaseThreshold, QStringLiteral( "releaseThreshold" ) );
  KConfigCompilerSignallingItem  *itemThreshold;
  KConfigBaseEE::ItemDouble  *innerItemThreshold;
  innerItemThreshold = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "threshold" ), mThreshold, -12 );
  itemThreshold = new KConfigCompilerSignallingItem(innerItemThreshold, this, notifyFunction, signalThresholdChanged);
  innerItemThreshold->setMinValue(-60);
  innerItemThreshold->setMaxValue(0);
  itemThreshold->setWriteFlags(KConfigBase::Notify);
  itemThreshold->setGroup(cgExpanderinstanceIndex);
  addItem( itemThreshold, QStringLiteral( "threshold" ) );
  KConfigCompilerSignallingItem  *itemRatio;
  KConfigBaseEE::ItemDouble  *innerItemRatio;
  innerItemRatio = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "ratio" ), mRatio, 4 );
  itemRatio = new KConfigCompilerSignallingItem(innerItemRatio, this, notifyFunction, signalRatioChanged);
  innerItemRatio->setMinValue(1);
  innerItemRatio->setMaxValue(100);
  itemRatio->setWriteFlags(KConfigBase::Notify);
  itemRatio->setGroup(cgExpanderinstanceIndex);
  addItem( itemRatio, QStringLiteral( "ratio" ) );
  KConfigCompilerSignallingItem  *itemKnee;
  KConfigBaseEE::ItemDouble  *innerItemKnee;
  innerItemKnee = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "knee" ), mKnee, -6 );
  itemKnee = new KConfigCompilerSignallingItem(innerItemKnee, this, notifyFunction, signalKneeChanged);
  innerItemKnee->setMinValue(-24);
  innerItemKnee->setMaxValue(0);
  itemKnee->setWriteFlags(KConfigBase::Notify);
  itemKnee->setGroup(cgExpanderinstanceIndex);
  addItem( itemKnee, QStringLiteral( "knee" ) );
  KConfigCompilerSignallingItem  *itemMakeup;
  KConfigBaseEE::ItemDouble  *innerItemMakeup;
  innerItemMakeup = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "makeup" ), mMakeup, 0 );
  itemMakeup = new KConfigCompilerSignallingItem(innerItemMakeup, this, notifyFunction, signalMakeupChanged);
  innerItemMakeup->setMinValue(-60);
  innerItemMakeup->setMaxValue(60);
  itemMakeup->setWriteFlags(KConfigBase::Notify);
  itemMakeup->setGroup(cgExpanderinstanceIndex);
  addItem( itemMakeup, QStringLiteral( "makeup" ) );
  KConfigCompilerSignallingItem  *itemSidechainListen;
  KConfigBaseEE::ItemBool  *innerItemSidechainListen;
  innerItemSidechainListen = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "sidechainListen" ), mSidechainListen, false );
  itemSidechainListen = new KConfigCompilerSignallingItem(innerItemSidechainListen, this, notifyFunction, signalSidechainListenChanged);
  itemSidechainListen->setWriteFlags(KConfigBase::Notify);
  itemSidechainListen->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainListen, QStringLiteral( "sidechainListen" ) );
  QStringList defaultsidechainTypeLabels;
  defaultsidechainTypeLabels.append( QString::fromUtf8( "Internal" ) );
  defaultsidechainTypeLabels.append( QString::fromUtf8( "External" ) );
  defaultsidechainTypeLabels.append( QString::fromUtf8( "Link" ) );

  KConfigCompilerSignallingItem  *itemSidechainTypeLabels;
  KConfigBaseEE::ItemStringList  *innerItemSidechainTypeLabels;
  innerItemSidechainTypeLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "sidechainTypeLabels" ), mSidechainTypeLabels, defaultsidechainTypeLabels );
  itemSidechainTypeLabels = new KConfigCompilerSignallingItem(innerItemSidechainTypeLabels, this, notifyFunction, signalSidechainTypeLabelsChanged);
  itemSidechainTypeLabels->setWriteFlags(KConfigBase::Notify);
  itemSidechainTypeLabels->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainTypeLabels, QStringLiteral( "sidechainTypeLabels" ) );
  KConfigCompilerSignallingItem  *itemSidechainType;
  KConfigBaseEE::ItemInt  *innerItemSidechainType;
  innerItemSidechainType = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "sidechainType" ), mSidechainType, 0 );
  itemSidechainType = new KConfigCompilerSignallingItem(innerItemSidechainType, this, notifyFunction, signalSidechainTypeChanged);
  itemSidechainType->setWriteFlags(KConfigBase::Notify);
  itemSidechainType->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainType, QStringLiteral( "sidechainType" ) );
  QStringList defaultsidechainModeLabels;
  defaultsidechainModeLabels.append( QString::fromUtf8( "Peak" ) );
  defaultsidechainModeLabels.append( QString::fromUtf8( "RMS" ) );
  defaultsidechainModeLabels.append( QString::fromUtf8( "Low-Pass" ) );
  defaultsidechainModeLabels.append( QString::fromUtf8( "SMA" ) );

  KConfigCompilerSignallingItem  *itemSidechainModeLabels;
  KConfigBaseEE::ItemStringList  *innerItemSidechainModeLabels;
  innerItemSidechainModeLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "sidechainModeLabels" ), mSidechainModeLabels, defaultsidechainModeLabels );
  itemSidechainModeLabels = new KConfigCompilerSignallingItem(innerItemSidechainModeLabels, this, notifyFunction, signalSidechainModeLabelsChanged);
  itemSidechainModeLabels->setWriteFlags(KConfigBase::Notify);
  itemSidechainModeLabels->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainModeLabels, QStringLiteral( "sidechainModeLabels" ) );
  KConfigCompilerSignallingItem  *itemSidechainMode;
  KConfigBaseEE::ItemInt  *innerItemSidechainMode;
  innerItemSidechainMode = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "sidechainMode" ), mSidechainMode, 0 );
  itemSidechainMode = new KConfigCompilerSignallingItem(innerItemSidechainMode, this, notifyFunction, signalSidechainModeChanged);
  itemSidechainMode->setWriteFlags(KConfigBase::Notify);
  itemSidechainMode->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainMode, QStringLiteral( "sidechainMode" ) );
  KConfigCompilerSignallingItem  *itemStereoSplit;
  KConfigBaseEE::ItemBool  *innerItemStereoSplit;
  innerItemStereoSplit = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "stereoSplit" ), mStereoSplit, false );
  itemStereoSplit = new KConfigCompilerSignallingItem(innerItemStereoSplit, this, notifyFunction, signalStereoSplitChanged);
  itemStereoSplit->setWriteFlags(KConfigBase::Notify);
  itemStereoSplit->setGroup(cgExpanderinstanceIndex);
  addItem( itemStereoSplit, QStringLiteral( "stereoSplit" ) );
  QStringList defaultsidechainSourceLabels;
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Middle" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Side" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Left" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Right" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Min" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Max" ) );

  KConfigCompilerSignallingItem  *itemSidechainSourceLabels;
  KConfigBaseEE::ItemStringList  *innerItemSidechainSourceLabels;
  innerItemSidechainSourceLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "sidechainSourceLabels" ), mSidechainSourceLabels, defaultsidechainSourceLabels );
  itemSidechainSourceLabels = new KConfigCompilerSignallingItem(innerItemSidechainSourceLabels, this, notifyFunction, signalSidechainSourceLabelsChanged);
  itemSidechainSourceLabels->setWriteFlags(KConfigBase::Notify);
  itemSidechainSourceLabels->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainSourceLabels, QStringLiteral( "sidechainSourceLabels" ) );
  KConfigCompilerSignallingItem  *itemSidechainSource;
  KConfigBaseEE::ItemInt  *innerItemSidechainSource;
  innerItemSidechainSource = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "sidechainSource" ), mSidechainSource, 0 );
  itemSidechainSource = new KConfigCompilerSignallingItem(innerItemSidechainSource, this, notifyFunction, signalSidechainSourceChanged);
  itemSidechainSource->setWriteFlags(KConfigBase::Notify);
  itemSidechainSource->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainSource, QStringLiteral( "sidechainSource" ) );
  QStringList defaultstereoSplitSourceLabels;
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Left/Right" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Right/Left" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Mid/Side" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Side/Mid" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Min" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Max" ) );

  KConfigCompilerSignallingItem  *itemStereoSplitSourceLabels;
  KConfigBaseEE::ItemStringList  *innerItemStereoSplitSourceLabels;
  innerItemStereoSplitSourceLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "stereoSplitSourceLabels" ), mStereoSplitSourceLabels, defaultstereoSplitSourceLabels );
  itemStereoSplitSourceLabels = new KConfigCompilerSignallingItem(innerItemStereoSplitSourceLabels, this, notifyFunction, signalStereoSplitSourceLabelsChanged);
  itemStereoSplitSourceLabels->setWriteFlags(KConfigBase::Notify);
  itemStereoSplitSourceLabels->setGroup(cgExpanderinstanceIndex);
  addItem( itemStereoSplitSourceLabels, QStringLiteral( "stereoSplitSourceLabels" ) );
  KConfigCompilerSignallingItem  *itemStereoSplitSource;
  KConfigBaseEE::ItemInt  *innerItemStereoSplitSource;
  innerItemStereoSplitSource = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "stereoSplitSource" ), mStereoSplitSource, 0 );
  itemStereoSplitSource = new KConfigCompilerSignallingItem(innerItemStereoSplitSource, this, notifyFunction, signalStereoSplitSourceChanged);
  itemStereoSplitSource->setWriteFlags(KConfigBase::Notify);
  itemStereoSplitSource->setGroup(cgExpanderinstanceIndex);
  addItem( itemStereoSplitSource, QStringLiteral( "stereoSplitSource" ) );
  KConfigCompilerSignallingItem  *itemSidechainPreamp;
  KConfigBaseEE::ItemDouble  *innerItemSidechainPreamp;
  innerItemSidechainPreamp = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "sidechainPreamp" ), mSidechainPreamp, 0 );
  itemSidechainPreamp = new KConfigCompilerSignallingItem(innerItemSidechainPreamp, this, notifyFunction, signalSidechainPreampChanged);
  innerItemSidechainPreamp->setMinValue(-80.01);
  innerItemSidechainPreamp->setMaxValue(40);
  itemSidechainPreamp->setWriteFlags(KConfigBase::Notify);
  itemSidechainPreamp->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainPreamp, QStringLiteral( "sidechainPreamp" ) );
  KConfigCompilerSignallingItem  *itemSidechainReactivity;
  KConfigBaseEE::ItemDouble  *innerItemSidechainReactivity;
  innerItemSidechainReactivity = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "sidechainReactivity" ), mSidechainReactivity, 10 );
  itemSidechainReactivity = new KConfigCompilerSignallingItem(innerItemSidechainReactivity, this, notifyFunction, signalSidechainReactivityChanged);
  innerItemSidechainReactivity->setMinValue(0);
  innerItemSidechainReactivity->setMaxValue(250);
  itemSidechainReactivity->setWriteFlags(KConfigBase::Notify);
  itemSidechainReactivity->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainReactivity, QStringLiteral( "sidechainReactivity" ) );
  KConfigCompilerSignallingItem  *itemSidechainLookahead;
  KConfigBaseEE::ItemDouble  *innerItemSidechainLookahead;
  innerItemSidechainLookahead = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "sidechainLookahead" ), mSidechainLookahead, 0 );
  itemSidechainLookahead = new KConfigCompilerSignallingItem(innerItemSidechainLookahead, this, notifyFunction, signalSidechainLookaheadChanged);
  innerItemSidechainLookahead->setMinValue(0);
  innerItemSidechainLookahead->setMaxValue(20);
  itemSidechainLookahead->setWriteFlags(KConfigBase::Notify);
  itemSidechainLookahead->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainLookahead, QStringLiteral( "sidechainLookahead" ) );
  QStringList defaulthpfModeLabels;
  defaulthpfModeLabels.append( QString::fromUtf8( "Off" ) );
  defaulthpfModeLabels.append( QString::fromUtf8( "12 dB/oct" ) );
  defaulthpfModeLabels.append( QString::fromUtf8( "24 dB/oct" ) );
  defaulthpfModeLabels.append( QString::fromUtf8( "36 dB/oct" ) );

  KConfigCompilerSignallingItem  *itemHpfModeLabels;
  KConfigBaseEE::ItemStringList  *innerItemHpfModeLabels;
  innerItemHpfModeLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "hpfModeLabels" ), mHpfModeLabels, defaulthpfModeLabels );
  itemHpfModeLabels = new KConfigCompilerSignallingItem(innerItemHpfModeLabels, this, notifyFunction, signalHpfModeLabelsChanged);
  itemHpfModeLabels->setWriteFlags(KConfigBase::Notify);
  itemHpfModeLabels->setGroup(cgExpanderinstanceIndex);
  addItem( itemHpfModeLabels, QStringLiteral( "hpfModeLabels" ) );
  KConfigCompilerSignallingItem  *itemHpfMode;
  KConfigBaseEE::ItemInt  *innerItemHpfMode;
  innerItemHpfMode = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "hpfMode" ), mHpfMode, 0 );
  itemHpfMode = new KConfigCompilerSignallingItem(innerItemHpfMode, this, notifyFunction, signalHpfModeChanged);
  itemHpfMode->setWriteFlags(KConfigBase::Notify);
  itemHpfMode->setGroup(cgExpanderinstanceIndex);
  addItem( itemHpfMode, QStringLiteral( "hpfMode" ) );
  KConfigCompilerSignallingItem  *itemHpfFrequency;
  KConfigBaseEE::ItemDouble  *innerItemHpfFrequency;
  innerItemHpfFrequency = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "hpfFrequency" ), mHpfFrequency, 10 );
  itemHpfFrequency = new KConfigCompilerSignallingItem(innerItemHpfFrequency, this, notifyFunction, signalHpfFrequencyChanged);
  innerItemHpfFrequency->setMinValue(10);
  innerItemHpfFrequency->setMaxValue(20000);
  itemHpfFrequency->setWriteFlags(KConfigBase::Notify);
  itemHpfFrequency->setGroup(cgExpanderinstanceIndex);
  addItem( itemHpfFrequency, QStringLiteral( "hpfFrequency" ) );
  QStringList defaultlpfModeLabels;
  defaultlpfModeLabels.append( QString::fromUtf8( "Off" ) );
  defaultlpfModeLabels.append( QString::fromUtf8( "12 dB/oct" ) );
  defaultlpfModeLabels.append( QString::fromUtf8( "24 dB/oct" ) );
  defaultlpfModeLabels.append( QString::fromUtf8( "36 dB/oct" ) );

  KConfigCompilerSignallingItem  *itemLpfModeLabels;
  KConfigBaseEE::ItemStringList  *innerItemLpfModeLabels;
  innerItemLpfModeLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "lpfModeLabels" ), mLpfModeLabels, defaultlpfModeLabels );
  itemLpfModeLabels = new KConfigCompilerSignallingItem(innerItemLpfModeLabels, this, notifyFunction, signalLpfModeLabelsChanged);
  itemLpfModeLabels->setWriteFlags(KConfigBase::Notify);
  itemLpfModeLabels->setGroup(cgExpanderinstanceIndex);
  addItem( itemLpfModeLabels, QStringLiteral( "lpfModeLabels" ) );
  QList<KConfigBaseEE::ItemEnum::Choice> valueslpfMode;
  KConfigCompilerSignallingItem  *itemLpfMode;
  KConfigBaseEE::ItemEnum  *innerItemLpfMode;
  innerItemLpfMode = new KConfigBaseEE::ItemEnum( currentGroup(), QStringLiteral( "lpfMode" ), mLpfMode, valueslpfMode, 0 );
  itemLpfMode = new KConfigCompilerSignallingItem(innerItemLpfMode, this, notifyFunction, signalLpfModeChanged);
  itemLpfMode->setWriteFlags(KConfigBase::Notify);
  itemLpfMode->setGroup(cgExpanderinstanceIndex);
  addItem( itemLpfMode, QStringLiteral( "lpfMode" ) );
  KConfigCompilerSignallingItem  *itemLpfFrequency;
  KConfigBaseEE::ItemDouble  *innerItemLpfFrequency;
  innerItemLpfFrequency = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "lpfFrequency" ), mLpfFrequency, 20000 );
  itemLpfFrequency = new KConfigCompilerSignallingItem(innerItemLpfFrequency, this, notifyFunction, signalLpfFrequencyChanged);
  innerItemLpfFrequency->setMinValue(10);
  innerItemLpfFrequency->setMaxValue(20000);
  itemLpfFrequency->setWriteFlags(KConfigBase::Notify);
  itemLpfFrequency->setGroup(cgExpanderinstanceIndex);
  addItem( itemLpfFrequency, QStringLiteral( "lpfFrequency" ) );
  KConfigCompilerSignallingItem  *itemSidechainInputDevice;
  KConfigBaseEE::ItemString  *innerItemSidechainInputDevice;
  innerItemSidechainInputDevice = new KConfigBaseEE::ItemString( currentGroup(), QStringLiteral( "sidechainInputDevice" ), mSidechainInputDevice, "" );
  itemSidechainInputDevice = new KConfigCompilerSignallingItem(innerItemSidechainInputDevice, this, notifyFunction, signalSidechainInputDeviceChanged);
  itemSidechainInputDevice->setWriteFlags(KConfigBase::Notify);
  itemSidechainInputDevice->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainInputDevice, QStringLiteral( "sidechainInputDevice" ) );
  KConfigCompilerSignallingItem  *itemInputToSidechain;
  KConfigBaseEE::ItemDouble  *innerItemInputToSidechain;
  innerItemInputToSidechain = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "inputToSidechain" ), mInputToSidechain, -80.01 );
  itemInputToSidechain = new KConfigCompilerSignallingItem(innerItemInputToSidechain, this, notifyFunction, signalInputToSidechainChanged);
  innerItemInputToSidechain->setMinValue(-80.01);
  innerItemInputToSidechain->setMaxValue(40);
  itemInputToSidechain->setWriteFlags(KConfigBase::Notify);
  itemInputToSidechain->setGroup(cgExpanderinstanceIndex);
  addItem( itemInputToSidechain, QStringLiteral( "inputToSidechain" ) );
  KConfigCompilerSignallingItem  *itemInputToLink;
  KConfigBaseEE::ItemDouble  *innerItemInputToLink;
  innerItemInputToLink = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "inputToLink" ), mInputToLink, -80.01 );
  itemInputToLink = new KConfigCompilerSignallingItem(innerItemInputToLink, this, notifyFunction, signalInputToLinkChanged);
  innerItemInputToLink->setMinValue(-80.01);
  innerItemInputToLink->setMaxValue(40);
  itemInputToLink->setWriteFlags(KConfigBase::Notify);
  itemInputToLink->setGroup(cgExpanderinstanceIndex);
  addItem( itemInputToLink, QStringLiteral( "inputToLink" ) );
  KConfigCompilerSignallingItem  *itemSidechainToInput;
  KConfigBaseEE::ItemDouble  *innerItemSidechainToInput;
  innerItemSidechainToInput = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "sidechainToInput" ), mSidechainToInput, -80.01 );
  itemSidechainToInput = new KConfigCompilerSignallingItem(innerItemSidechainToInput, this, notifyFunction, signalSidechainToInputChanged);
  innerItemSidechainToInput->setMinValue(-80.01);
  innerItemSidechainToInput->setMaxValue(40);
  itemSidechainToInput->setWriteFlags(KConfigBase::Notify);
  itemSidechainToInput->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainToInput, QStringLiteral( "sidechainToInput" ) );
  KConfigCompilerSignallingItem  *itemSidechainToLink;
  KConfigBaseEE::ItemDouble  *innerItemSidechainToLink;
  innerItemSidechainToLink = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "sidechainToLink" ), mSidechainToLink, -80.01 );
  itemSidechainToLink = new KConfigCompilerSignallingItem(innerItemSidechainToLink, this, notifyFunction, signalSidechainToLinkChanged);
  innerItemSidechainToLink->setMinValue(-80.01);
  innerItemSidechainToLink->setMaxValue(40);
  itemSidechainToLink->setWriteFlags(KConfigBase::Notify);
  itemSidechainToLink->setGroup(cgExpanderinstanceIndex);
  addItem( itemSidechainToLink, QStringLiteral( "sidechainToLink" ) );
  KConfigCompilerSignallingItem  *itemLinkToSidechain;
  KConfigBaseEE::ItemDouble  *innerItemLinkToSidechain;
  innerItemLinkToSidechain = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "linkToSidechain" ), mLinkToSidechain, -80.01 );
  itemLinkToSidechain = new KConfigCompilerSignallingItem(innerItemLinkToSidechain, this, notifyFunction, signalLinkToSidechainChanged);
  innerItemLinkToSidechain->setMinValue(-80.01);
  innerItemLinkToSidechain->setMaxValue(40);
  itemLinkToSidechain->setWriteFlags(KConfigBase::Notify);
  itemLinkToSidechain->setGroup(cgExpanderinstanceIndex);
  addItem( itemLinkToSidechain, QStringLiteral( "linkToSidechain" ) );
  KConfigCompilerSignallingItem  *itemLinkToInput;
  KConfigBaseEE::ItemDouble  *innerItemLinkToInput;
  innerItemLinkToInput = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "linkToInput" ), mLinkToInput, -80.01 );
  itemLinkToInput = new KConfigCompilerSignallingItem(innerItemLinkToInput, this, notifyFunction, signalLinkToInputChanged);
  innerItemLinkToInput->setMinValue(-80.01);
  innerItemLinkToInput->setMaxValue(40);
  itemLinkToInput->setWriteFlags(KConfigBase::Notify);
  itemLinkToInput->setGroup(cgExpanderinstanceIndex);
  addItem( itemLinkToInput, QStringLiteral( "linkToInput" ) );
}

bool DbExpander::defaultBypassValue_helper() const
{

  return false;
}

double DbExpander::defaultInputGainValue_helper() const
{

  return 0;
}

double DbExpander::defaultOutputGainValue_helper() const
{

  return 0;
}

double DbExpander::defaultDryValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultWetValue_helper() const
{

  return 0;
}

QStringList DbExpander::defaultModeLabelsValue_helper() const
{
  QStringList defaultmodeLabels;
  defaultmodeLabels.append( QString::fromUtf8( "Downward" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Upward" ) );

  return defaultmodeLabels;
}

int DbExpander::defaultModeValue_helper() const
{

  return 1;
}

double DbExpander::defaultAttackValue_helper() const
{

  return 20;
}

double DbExpander::defaultReleaseValue_helper() const
{

  return 100;
}

double DbExpander::defaultReleaseThresholdValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultThresholdValue_helper() const
{

  return -12;
}

double DbExpander::defaultRatioValue_helper() const
{

  return 4;
}

double DbExpander::defaultKneeValue_helper() const
{

  return -6;
}

double DbExpander::defaultMakeupValue_helper() const
{

  return 0;
}

bool DbExpander::defaultSidechainListenValue_helper() const
{

  return false;
}

QStringList DbExpander::defaultSidechainTypeLabelsValue_helper() const
{
  QStringList defaultsidechainTypeLabels;
  defaultsidechainTypeLabels.append( QString::fromUtf8( "Internal" ) );
  defaultsidechainTypeLabels.append( QString::fromUtf8( "External" ) );
  defaultsidechainTypeLabels.append( QString::fromUtf8( "Link" ) );

  return defaultsidechainTypeLabels;
}

int DbExpander::defaultSidechainTypeValue_helper() const
{

  return 0;
}

QStringList DbExpander::defaultSidechainModeLabelsValue_helper() const
{
  QStringList defaultsidechainModeLabels;
  defaultsidechainModeLabels.append( QString::fromUtf8( "Peak" ) );
  defaultsidechainModeLabels.append( QString::fromUtf8( "RMS" ) );
  defaultsidechainModeLabels.append( QString::fromUtf8( "Low-Pass" ) );
  defaultsidechainModeLabels.append( QString::fromUtf8( "SMA" ) );

  return defaultsidechainModeLabels;
}

int DbExpander::defaultSidechainModeValue_helper() const
{

  return 0;
}

bool DbExpander::defaultStereoSplitValue_helper() const
{

  return false;
}

QStringList DbExpander::defaultSidechainSourceLabelsValue_helper() const
{
  QStringList defaultsidechainSourceLabels;
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Middle" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Side" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Left" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Right" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Min" ) );
  defaultsidechainSourceLabels.append( QString::fromUtf8( "Max" ) );

  return defaultsidechainSourceLabels;
}

int DbExpander::defaultSidechainSourceValue_helper() const
{

  return 0;
}

QStringList DbExpander::defaultStereoSplitSourceLabelsValue_helper() const
{
  QStringList defaultstereoSplitSourceLabels;
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Left/Right" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Right/Left" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Mid/Side" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Side/Mid" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Min" ) );
  defaultstereoSplitSourceLabels.append( QString::fromUtf8( "Max" ) );

  return defaultstereoSplitSourceLabels;
}

int DbExpander::defaultStereoSplitSourceValue_helper() const
{

  return 0;
}

double DbExpander::defaultSidechainPreampValue_helper() const
{

  return 0;
}

double DbExpander::defaultSidechainReactivityValue_helper() const
{

  return 10;
}

double DbExpander::defaultSidechainLookaheadValue_helper() const
{

  return 0;
}

QStringList DbExpander::defaultHpfModeLabelsValue_helper() const
{
  QStringList defaulthpfModeLabels;
  defaulthpfModeLabels.append( QString::fromUtf8( "Off" ) );
  defaulthpfModeLabels.append( QString::fromUtf8( "12 dB/oct" ) );
  defaulthpfModeLabels.append( QString::fromUtf8( "24 dB/oct" ) );
  defaulthpfModeLabels.append( QString::fromUtf8( "36 dB/oct" ) );

  return defaulthpfModeLabels;
}

int DbExpander::defaultHpfModeValue_helper() const
{

  return 0;
}

double DbExpander::defaultHpfFrequencyValue_helper() const
{

  return 10;
}

QStringList DbExpander::defaultLpfModeLabelsValue_helper() const
{
  QStringList defaultlpfModeLabels;
  defaultlpfModeLabels.append( QString::fromUtf8( "Off" ) );
  defaultlpfModeLabels.append( QString::fromUtf8( "12 dB/oct" ) );
  defaultlpfModeLabels.append( QString::fromUtf8( "24 dB/oct" ) );
  defaultlpfModeLabels.append( QString::fromUtf8( "36 dB/oct" ) );

  return defaultlpfModeLabels;
}

int DbExpander::defaultLpfModeValue_helper() const
{

  return 0;
}

double DbExpander::defaultLpfFrequencyValue_helper() const
{

  return 20000;
}

QString DbExpander::defaultSidechainInputDeviceValue_helper() const
{

  return "";
}

double DbExpander::defaultInputToSidechainValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultInputToLinkValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultSidechainToInputValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultSidechainToLinkValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultLinkToSidechainValue_helper() const
{

  return -80.01;
}

double DbExpander::defaultLinkToInputValue_helper() const
{

  return -80.01;
}

DbExpander::~DbExpander()
{
}


void DbExpander::itemChanged(quint64 signalFlag) {

  switch (signalFlag) {
  case signalBypassChanged:
    Q_EMIT bypassChanged();
    break;
  case signalInputGainChanged:
    Q_EMIT inputGainChanged();
    break;
  case signalOutputGainChanged:
    Q_EMIT outputGainChanged();
    break;
  case signalDryChanged:
    Q_EMIT dryChanged();
    break;
  case signalWetChanged:
    Q_EMIT wetChanged();
    break;
  case signalModeLabelsChanged:
    Q_EMIT modeLabelsChanged();
    break;
  case signalModeChanged:
    Q_EMIT modeChanged();
    break;
  case signalAttackChanged:
    Q_EMIT attackChanged();
    break;
  case signalReleaseChanged:
    Q_EMIT releaseChanged();
    break;
  case signalReleaseThresholdChanged:
    Q_EMIT releaseThresholdChanged();
    break;
  case signalThresholdChanged:
    Q_EMIT thresholdChanged();
    break;
  case signalRatioChanged:
    Q_EMIT ratioChanged();
    break;
  case signalKneeChanged:
    Q_EMIT kneeChanged();
    break;
  case signalMakeupChanged:
    Q_EMIT makeupChanged();
    break;
  case signalSidechainListenChanged:
    Q_EMIT sidechainListenChanged();
    break;
  case signalSidechainTypeLabelsChanged:
    Q_EMIT sidechainTypeLabelsChanged();
    break;
  case signalSidechainTypeChanged:
    Q_EMIT sidechainTypeChanged();
    break;
  case signalSidechainModeLabelsChanged:
    Q_EMIT sidechainModeLabelsChanged();
    break;
  case signalSidechainModeChanged:
    Q_EMIT sidechainModeChanged();
    break;
  case signalStereoSplitChanged:
    Q_EMIT stereoSplitChanged();
    break;
  case signalSidechainSourceLabelsChanged:
    Q_EMIT sidechainSourceLabelsChanged();
    break;
  case signalSidechainSourceChanged:
    Q_EMIT sidechainSourceChanged();
    break;
  case signalStereoSplitSourceLabelsChanged:
    Q_EMIT stereoSplitSourceLabelsChanged();
    break;
  case signalStereoSplitSourceChanged:
    Q_EMIT stereoSplitSourceChanged();
    break;
  case signalSidechainPreampChanged:
    Q_EMIT sidechainPreampChanged();
    break;
  case signalSidechainReactivityChanged:
    Q_EMIT sidechainReactivityChanged();
    break;
  case signalSidechainLookaheadChanged:
    Q_EMIT sidechainLookaheadChanged();
    break;
  case signalHpfModeLabelsChanged:
    Q_EMIT hpfModeLabelsChanged();
    break;
  case signalHpfModeChanged:
    Q_EMIT hpfModeChanged();
    break;
  case signalHpfFrequencyChanged:
    Q_EMIT hpfFrequencyChanged();
    break;
  case signalLpfModeLabelsChanged:
    Q_EMIT lpfModeLabelsChanged();
    break;
  case signalLpfModeChanged:
    Q_EMIT lpfModeChanged();
    break;
  case signalLpfFrequencyChanged:
    Q_EMIT lpfFrequencyChanged();
    break;
  case signalSidechainInputDeviceChanged:
    Q_EMIT sidechainInputDeviceChanged();
    break;
  case signalInputToSidechainChanged:
    Q_EMIT inputToSidechainChanged();
    break;
  case signalInputToLinkChanged:
    Q_EMIT inputToLinkChanged();
    break;
  case signalSidechainToInputChanged:
    Q_EMIT sidechainToInputChanged();
    break;
  case signalSidechainToLinkChanged:
    Q_EMIT sidechainToLinkChanged();
    break;
  case signalLinkToSidechainChanged:
    Q_EMIT linkToSidechainChanged();
    break;
  case signalLinkToInputChanged:
    Q_EMIT linkToInputChanged();
    break;
  }
}
