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

#include "easyeffects_db_limiter.h"

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

  KConfigGroup cgmasterGroup(this->config(), QStringLiteral( "%1" ).arg( mParammasterGroup ));
  KConfigGroup cgLimiterinstanceIndex = cgmasterGroup.group(QStringLiteral( "Limiter#%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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  addItem( itemOutputGain, QStringLiteral( "outputGain" ) );
  QStringList defaultmodeLabels;
  defaultmodeLabels.append( QString::fromUtf8( "Herm Thin" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Herm Wide" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Herm Tail" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Herm Duck" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Thin" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Wide" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Tail" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Duck" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Thin" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Wide" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Tail" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Duck" ) );

  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  addItem( itemMode, QStringLiteral( "mode" ) );
  QStringList defaultoversamplingLabels;
  defaultoversamplingLabels.append( QString::fromUtf8( "None" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x2/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x2/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x3/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x3/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x4/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x4/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x6/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x6/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x8/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x8/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x2/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x2/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x3/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x3/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x4/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x4/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x6/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x6/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x8/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x8/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "True Peak/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "True Peak/24 bit" ) );

  KConfigCompilerSignallingItem  *itemOversamplingLabels;
  KConfigBaseEE::ItemStringList  *innerItemOversamplingLabels;
  innerItemOversamplingLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "oversamplingLabels" ), mOversamplingLabels, defaultoversamplingLabels );
  itemOversamplingLabels = new KConfigCompilerSignallingItem(innerItemOversamplingLabels, this, notifyFunction, signalOversamplingLabelsChanged);
  itemOversamplingLabels->setWriteFlags(KConfigBase::Notify);
  itemOversamplingLabels->setGroup(cgLimiterinstanceIndex);
  addItem( itemOversamplingLabels, QStringLiteral( "oversamplingLabels" ) );
  KConfigCompilerSignallingItem  *itemOversampling;
  KConfigBaseEE::ItemInt  *innerItemOversampling;
  innerItemOversampling = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "oversampling" ), mOversampling, 0 );
  itemOversampling = new KConfigCompilerSignallingItem(innerItemOversampling, this, notifyFunction, signalOversamplingChanged);
  itemOversampling->setWriteFlags(KConfigBase::Notify);
  itemOversampling->setGroup(cgLimiterinstanceIndex);
  addItem( itemOversampling, QStringLiteral( "oversampling" ) );
  QStringList defaultditheringLabels;
  defaultditheringLabels.append( QString::fromUtf8( "None" ) );
  defaultditheringLabels.append( QString::fromUtf8( "7bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "8bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "11bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "12bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "15bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "16bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "23bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "24bit" ) );

  KConfigCompilerSignallingItem  *itemDitheringLabels;
  KConfigBaseEE::ItemStringList  *innerItemDitheringLabels;
  innerItemDitheringLabels = new KConfigBaseEE::ItemStringList( currentGroup(), QStringLiteral( "ditheringLabels" ), mDitheringLabels, defaultditheringLabels );
  itemDitheringLabels = new KConfigCompilerSignallingItem(innerItemDitheringLabels, this, notifyFunction, signalDitheringLabelsChanged);
  itemDitheringLabels->setWriteFlags(KConfigBase::Notify);
  itemDitheringLabels->setGroup(cgLimiterinstanceIndex);
  addItem( itemDitheringLabels, QStringLiteral( "ditheringLabels" ) );
  KConfigCompilerSignallingItem  *itemDithering;
  KConfigBaseEE::ItemInt  *innerItemDithering;
  innerItemDithering = new KConfigBaseEE::ItemInt( currentGroup(), QStringLiteral( "dithering" ), mDithering, 0 );
  itemDithering = new KConfigCompilerSignallingItem(innerItemDithering, this, notifyFunction, signalDitheringChanged);
  itemDithering->setWriteFlags(KConfigBase::Notify);
  itemDithering->setGroup(cgLimiterinstanceIndex);
  addItem( itemDithering, QStringLiteral( "dithering" ) );
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  addItem( itemSidechainType, QStringLiteral( "sidechainType" ) );
  KConfigCompilerSignallingItem  *itemLookahead;
  KConfigBaseEE::ItemDouble  *innerItemLookahead;
  innerItemLookahead = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "lookahead" ), mLookahead, 5 );
  itemLookahead = new KConfigCompilerSignallingItem(innerItemLookahead, this, notifyFunction, signalLookaheadChanged);
  innerItemLookahead->setMinValue(0.1);
  innerItemLookahead->setMaxValue(20);
  itemLookahead->setWriteFlags(KConfigBase::Notify);
  itemLookahead->setGroup(cgLimiterinstanceIndex);
  addItem( itemLookahead, QStringLiteral( "lookahead" ) );
  KConfigCompilerSignallingItem  *itemAttack;
  KConfigBaseEE::ItemDouble  *innerItemAttack;
  innerItemAttack = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "attack" ), mAttack, 5 );
  itemAttack = new KConfigCompilerSignallingItem(innerItemAttack, this, notifyFunction, signalAttackChanged);
  innerItemAttack->setMinValue(0.25);
  innerItemAttack->setMaxValue(20);
  itemAttack->setWriteFlags(KConfigBase::Notify);
  itemAttack->setGroup(cgLimiterinstanceIndex);
  addItem( itemAttack, QStringLiteral( "attack" ) );
  KConfigCompilerSignallingItem  *itemRelease;
  KConfigBaseEE::ItemDouble  *innerItemRelease;
  innerItemRelease = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "release" ), mRelease, 5 );
  itemRelease = new KConfigCompilerSignallingItem(innerItemRelease, this, notifyFunction, signalReleaseChanged);
  innerItemRelease->setMinValue(0.25);
  innerItemRelease->setMaxValue(20);
  itemRelease->setWriteFlags(KConfigBase::Notify);
  itemRelease->setGroup(cgLimiterinstanceIndex);
  addItem( itemRelease, QStringLiteral( "release" ) );
  KConfigCompilerSignallingItem  *itemThreshold;
  KConfigBaseEE::ItemDouble  *innerItemThreshold;
  innerItemThreshold = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "threshold" ), mThreshold, 0 );
  itemThreshold = new KConfigCompilerSignallingItem(innerItemThreshold, this, notifyFunction, signalThresholdChanged);
  innerItemThreshold->setMinValue(-48);
  innerItemThreshold->setMaxValue(0);
  itemThreshold->setWriteFlags(KConfigBase::Notify);
  itemThreshold->setGroup(cgLimiterinstanceIndex);
  addItem( itemThreshold, QStringLiteral( "threshold" ) );
  KConfigCompilerSignallingItem  *itemGainBoost;
  KConfigBaseEE::ItemBool  *innerItemGainBoost;
  innerItemGainBoost = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "gainBoost" ), mGainBoost, true );
  itemGainBoost = new KConfigCompilerSignallingItem(innerItemGainBoost, this, notifyFunction, signalGainBoostChanged);
  itemGainBoost->setWriteFlags(KConfigBase::Notify);
  itemGainBoost->setGroup(cgLimiterinstanceIndex);
  addItem( itemGainBoost, QStringLiteral( "gainBoost" ) );
  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(cgLimiterinstanceIndex);
  addItem( itemSidechainPreamp, QStringLiteral( "sidechainPreamp" ) );
  KConfigCompilerSignallingItem  *itemStereoLink;
  KConfigBaseEE::ItemDouble  *innerItemStereoLink;
  innerItemStereoLink = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "stereoLink" ), mStereoLink, 100 );
  itemStereoLink = new KConfigCompilerSignallingItem(innerItemStereoLink, this, notifyFunction, signalStereoLinkChanged);
  innerItemStereoLink->setMinValue(0);
  innerItemStereoLink->setMaxValue(100);
  itemStereoLink->setWriteFlags(KConfigBase::Notify);
  itemStereoLink->setGroup(cgLimiterinstanceIndex);
  addItem( itemStereoLink, QStringLiteral( "stereoLink" ) );
  KConfigCompilerSignallingItem  *itemAlr;
  KConfigBaseEE::ItemBool  *innerItemAlr;
  innerItemAlr = new KConfigBaseEE::ItemBool( currentGroup(), QStringLiteral( "alr" ), mAlr, false );
  itemAlr = new KConfigCompilerSignallingItem(innerItemAlr, this, notifyFunction, signalAlrChanged);
  itemAlr->setWriteFlags(KConfigBase::Notify);
  itemAlr->setGroup(cgLimiterinstanceIndex);
  addItem( itemAlr, QStringLiteral( "alr" ) );
  KConfigCompilerSignallingItem  *itemAlrAttack;
  KConfigBaseEE::ItemDouble  *innerItemAlrAttack;
  innerItemAlrAttack = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "alrAttack" ), mAlrAttack, 5 );
  itemAlrAttack = new KConfigCompilerSignallingItem(innerItemAlrAttack, this, notifyFunction, signalAlrAttackChanged);
  innerItemAlrAttack->setMinValue(0.10);
  innerItemAlrAttack->setMaxValue(200);
  itemAlrAttack->setWriteFlags(KConfigBase::Notify);
  itemAlrAttack->setGroup(cgLimiterinstanceIndex);
  addItem( itemAlrAttack, QStringLiteral( "alrAttack" ) );
  KConfigCompilerSignallingItem  *itemAlrRelease;
  KConfigBaseEE::ItemDouble  *innerItemAlrRelease;
  innerItemAlrRelease = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "alrRelease" ), mAlrRelease, 50 );
  itemAlrRelease = new KConfigCompilerSignallingItem(innerItemAlrRelease, this, notifyFunction, signalAlrReleaseChanged);
  innerItemAlrRelease->setMinValue(10);
  innerItemAlrRelease->setMaxValue(1000);
  itemAlrRelease->setWriteFlags(KConfigBase::Notify);
  itemAlrRelease->setGroup(cgLimiterinstanceIndex);
  addItem( itemAlrRelease, QStringLiteral( "alrRelease" ) );
  KConfigCompilerSignallingItem  *itemAlrKnee;
  KConfigBaseEE::ItemDouble  *innerItemAlrKnee;
  innerItemAlrKnee = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "alrKnee" ), mAlrKnee, 0 );
  itemAlrKnee = new KConfigCompilerSignallingItem(innerItemAlrKnee, this, notifyFunction, signalAlrKneeChanged);
  innerItemAlrKnee->setMinValue(-12);
  innerItemAlrKnee->setMaxValue(12);
  itemAlrKnee->setWriteFlags(KConfigBase::Notify);
  itemAlrKnee->setGroup(cgLimiterinstanceIndex);
  addItem( itemAlrKnee, QStringLiteral( "alrKnee" ) );
  KConfigCompilerSignallingItem  *itemAlrKneeSmooth;
  KConfigBaseEE::ItemDouble  *innerItemAlrKneeSmooth;
  innerItemAlrKneeSmooth = new KConfigBaseEE::ItemDouble( currentGroup(), QStringLiteral( "alrKneeSmooth" ), mAlrKneeSmooth, -5 );
  itemAlrKneeSmooth = new KConfigCompilerSignallingItem(innerItemAlrKneeSmooth, this, notifyFunction, signalAlrKneeSmoothChanged);
  innerItemAlrKneeSmooth->setMinValue(-48);
  innerItemAlrKneeSmooth->setMaxValue(0);
  itemAlrKneeSmooth->setWriteFlags(KConfigBase::Notify);
  itemAlrKneeSmooth->setGroup(cgLimiterinstanceIndex);
  addItem( itemAlrKneeSmooth, QStringLiteral( "alrKneeSmooth" ) );
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  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(cgLimiterinstanceIndex);
  addItem( itemLinkToInput, QStringLiteral( "linkToInput" ) );
}

bool DbLimiter::defaultBypassValue_helper() const
{

  return false;
}

double DbLimiter::defaultInputGainValue_helper() const
{

  return 0;
}

double DbLimiter::defaultOutputGainValue_helper() const
{

  return 0;
}

QStringList DbLimiter::defaultModeLabelsValue_helper() const
{
  QStringList defaultmodeLabels;
  defaultmodeLabels.append( QString::fromUtf8( "Herm Thin" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Herm Wide" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Herm Tail" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Herm Duck" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Thin" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Wide" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Tail" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Exp Duck" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Thin" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Wide" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Tail" ) );
  defaultmodeLabels.append( QString::fromUtf8( "Line Duck" ) );

  return defaultmodeLabels;
}

int DbLimiter::defaultModeValue_helper() const
{

  return 0;
}

QStringList DbLimiter::defaultOversamplingLabelsValue_helper() const
{
  QStringList defaultoversamplingLabels;
  defaultoversamplingLabels.append( QString::fromUtf8( "None" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x2/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x2/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x3/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x3/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x4/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x4/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x6/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x6/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x8/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Half x8/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x2/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x2/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x3/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x3/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x4/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x4/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x6/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x6/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x8/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "Full x8/24 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "True Peak/16 bit" ) );
  defaultoversamplingLabels.append( QString::fromUtf8( "True Peak/24 bit" ) );

  return defaultoversamplingLabels;
}

int DbLimiter::defaultOversamplingValue_helper() const
{

  return 0;
}

QStringList DbLimiter::defaultDitheringLabelsValue_helper() const
{
  QStringList defaultditheringLabels;
  defaultditheringLabels.append( QString::fromUtf8( "None" ) );
  defaultditheringLabels.append( QString::fromUtf8( "7bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "8bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "11bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "12bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "15bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "16bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "23bit" ) );
  defaultditheringLabels.append( QString::fromUtf8( "24bit" ) );

  return defaultditheringLabels;
}

int DbLimiter::defaultDitheringValue_helper() const
{

  return 0;
}

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

  return defaultsidechainTypeLabels;
}

int DbLimiter::defaultSidechainTypeValue_helper() const
{

  return 0;
}

double DbLimiter::defaultLookaheadValue_helper() const
{

  return 5;
}

double DbLimiter::defaultAttackValue_helper() const
{

  return 5;
}

double DbLimiter::defaultReleaseValue_helper() const
{

  return 5;
}

double DbLimiter::defaultThresholdValue_helper() const
{

  return 0;
}

bool DbLimiter::defaultGainBoostValue_helper() const
{

  return true;
}

double DbLimiter::defaultSidechainPreampValue_helper() const
{

  return 0;
}

double DbLimiter::defaultStereoLinkValue_helper() const
{

  return 100;
}

bool DbLimiter::defaultAlrValue_helper() const
{

  return false;
}

double DbLimiter::defaultAlrAttackValue_helper() const
{

  return 5;
}

double DbLimiter::defaultAlrReleaseValue_helper() const
{

  return 50;
}

double DbLimiter::defaultAlrKneeValue_helper() const
{

  return 0;
}

double DbLimiter::defaultAlrKneeSmoothValue_helper() const
{

  return -5;
}

QString DbLimiter::defaultSidechainInputDeviceValue_helper() const
{

  return "";
}

double DbLimiter::defaultInputToSidechainValue_helper() const
{

  return -80.01;
}

double DbLimiter::defaultInputToLinkValue_helper() const
{

  return -80.01;
}

double DbLimiter::defaultSidechainToInputValue_helper() const
{

  return -80.01;
}

double DbLimiter::defaultSidechainToLinkValue_helper() const
{

  return -80.01;
}

double DbLimiter::defaultLinkToSidechainValue_helper() const
{

  return -80.01;
}

double DbLimiter::defaultLinkToInputValue_helper() const
{

  return -80.01;
}

DbLimiter::~DbLimiter()
{
}


void DbLimiter::itemChanged(quint64 signalFlag) {

  switch (signalFlag) {
  case signalBypassChanged:
    Q_EMIT bypassChanged();
    break;
  case signalInputGainChanged:
    Q_EMIT inputGainChanged();
    break;
  case signalOutputGainChanged:
    Q_EMIT outputGainChanged();
    break;
  case signalModeLabelsChanged:
    Q_EMIT modeLabelsChanged();
    break;
  case signalModeChanged:
    Q_EMIT modeChanged();
    break;
  case signalOversamplingLabelsChanged:
    Q_EMIT oversamplingLabelsChanged();
    break;
  case signalOversamplingChanged:
    Q_EMIT oversamplingChanged();
    break;
  case signalDitheringLabelsChanged:
    Q_EMIT ditheringLabelsChanged();
    break;
  case signalDitheringChanged:
    Q_EMIT ditheringChanged();
    break;
  case signalSidechainTypeLabelsChanged:
    Q_EMIT sidechainTypeLabelsChanged();
    break;
  case signalSidechainTypeChanged:
    Q_EMIT sidechainTypeChanged();
    break;
  case signalLookaheadChanged:
    Q_EMIT lookaheadChanged();
    break;
  case signalAttackChanged:
    Q_EMIT attackChanged();
    break;
  case signalReleaseChanged:
    Q_EMIT releaseChanged();
    break;
  case signalThresholdChanged:
    Q_EMIT thresholdChanged();
    break;
  case signalGainBoostChanged:
    Q_EMIT gainBoostChanged();
    break;
  case signalSidechainPreampChanged:
    Q_EMIT sidechainPreampChanged();
    break;
  case signalStereoLinkChanged:
    Q_EMIT stereoLinkChanged();
    break;
  case signalAlrChanged:
    Q_EMIT alrChanged();
    break;
  case signalAlrAttackChanged:
    Q_EMIT alrAttackChanged();
    break;
  case signalAlrReleaseChanged:
    Q_EMIT alrReleaseChanged();
    break;
  case signalAlrKneeChanged:
    Q_EMIT alrKneeChanged();
    break;
  case signalAlrKneeSmoothChanged:
    Q_EMIT alrKneeSmoothChanged();
    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;
  }
}
