/*
 *  This file is part of RawTherapee.
 *
 *  Copyright (c) 2004-2010 Gabor Horvath <hgabor@rawtherapee.com>
 *
 *  RawTherapee is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 * 
 *  RawTherapee is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with RawTherapee.  If not, see <http://www.gnu.org/licenses/>.
 */
#ifndef __PROCEVENT__
#define __PROCEVENT__

namespace rtengine {

enum ProcEvent {
    EvPhotoLoaded=0,
    EvProfileLoaded=1,
    EvProfileChanged=2,
    EvHistoryBrowsed=3,
    EvBrightness=4,
    EvContrast=5,
    EvBlack=6,
    EvExpComp=7,
    EvHLCompr=8,
    EvSHCompr=9,
    EvToneCurve1=10,
    EvAutoExp=11,
    EvClip=12,
    EvLBrightness=13,
    EvLContrast=14,
    EvLBlack=15,
    EvLHLCompr=16,
    EvLSHCompr=17,
    EvLLCurve=18,
    EvShrEnabled=19,
    EvShrRadius=20,
    EvShrAmount=21,
    EvShrThresh=22,
    EvShrEdgeOnly=23,
    EvShrEdgeRadius=24,
    EvShrEdgeTolerance=25,
    EvShrHaloControl=26,
    EvShrHaloAmount=27,
    EvShrMethod=28,
    EvShrDRadius=29,
    EvShrDAmount=30,
    EvShrDDamping=31,
    EvShrDIterations=32,
    EvLCPUseDist=33,
    EvLCPUseVign=34,
    EvLCPUseCA=35,
    EvFixedExp=36,
    EvWBMethod=37,
    EvWBTemp=38,
    EvWBGreen=39,
    EvToneCurveMode1=40,
    EvToneCurve2=41,
    EvToneCurveMode2=42,
    EvLDNRadius=43,   // obsolete
    EvLDNEdgeTolerance=44, // obsolete
    EvCDNEnabled=45,  // obsolete
    EvBlendCMSMatrix=46,
    EvDCPToneCurve=47,
    EvDCPIlluminant=48,
    EvSHEnabled=49,
    EvSHHighlights=50,
    EvSHShadows=51,
    EvSHHLTonalW=52,
    EvSHSHTonalW=53,
    EvSHLContrast=54,
    EvSHRadius=55,
    EvCTRotate=56,
    EvCTHFlip=57,
    EvCTVFlip=58,
    EvROTDegree=59,
    EvTransAutoFill=60,
    EvDISTAmount=61,
    EvBookmarkSelected=62,
    EvCrop=63,
    EvCACorr=64,
    EvHREnabled=65,
    EvHRAmount=66,   //obsolete
    EvHRMethod=67,
    EvWProfile=68,
    EvOProfile=69,
    EvIProfile=70,
    EvVignettingAmount=71,
    EvChMixer=72,
    EvResizeScale=73,
    EvResizeMethod=74,
    EvExif=75,
    EvIPTC=76,
    EvResizeSpec=77,
    EvResizeWidth=78,
    EvResizeHeight=79,
    EvResizeEnabled=80,
    EvProfileChangeNotification=81,
    EvSHHighQuality=82,
    EvPerspCorr=83,
    EvLCPFile=84,
    EvRGBrCurveLumamode=85,
    EvIDNEnabled=86,
    EvIDNThresh=87,
    EvDPDNEnabled=88,
    EvDPDNLuma=89,
    EvDPDNChroma=90,
    EvDPDNGamma=91,
    EvDirPyrEqualizer=92,
    EvDirPyrEqlEnabled=93,
    EvLSaturation=94,
    EvLaCurve=95,
    EvLbCurve=96,
    EvDemosaicMethod=97,
    EvPreProcessHotPixel=98,
    EvSaturation=99,
    EvHSVEqualizerH=100,
    EvHSVEqualizerS=101,
    EvHSVEqualizerV=102,
    EvHSVEqEnabled=103,
    EvDefringeEnabled=104,
    EvDefringeRadius=105,
    EvDefringeThreshold=106,
    EvHLComprThreshold=107,
    EvResizeBoundingBox=108,
    EvResizeAppliesTo=109,
    EvLAvoidColorShift=110,
    EvLSatLimiter=111,      // obsolete
    EvLRSTProtection=112,
    EvDemosaicDCBIter=113,
    EvDemosaicFalseColorIter=114,
    EvDemosaicDCBEnhanced=115,
    EvPreProcessCARed=116,
    EvPreProcessCABlue=117,
    EvPreProcessLineDenoise=118,
    EvPreProcessGEquilThresh=119,
    EvPreProcessAutoCA=120,
    EvPreProcessAutoDF=121,
    EvPreProcessDFFile=122,
    EvPreProcessExpCorrLinear=123,
    EvPreProcessExpCorrPH=124,
    EvFlatFieldFile=125,
    EvFlatFieldAutoSelect=126,
    EvFlatFieldBlurRadius=127,
    EvFlatFieldBlurType=128,
	EvAutoDIST=129,
	EvDPDNLumCurve=130,
	EvDPDNChromCurve=131,
	EvGAMMA=132,
	EvGAMPOS=133,
	EvGAMFREE=134,
	EvSLPOS=135,
	EvPreProcessExpBlackzero=136,
	EvPreProcessExpBlackone=137,
	EvPreProcessExpBlacktwo=138,
	EvPreProcessExpBlackthree=139,
	EvPreProcessExptwoGreen=140,
	EvSharpenEdgePasses=141,
	EvSharpenEdgeAmount=142,
	EvSharpenMicroAmount=143,
	EvSharpenMicroUniformity=144,
	EvSharpenEdgeEnabled=145,
	EvSharpenEdgeThreechannels=146,
	EvSharpenMicroEnabled=147,
	EvSharpenMicroMatrix=148,
	EvDemosaicALLEnhanced=149,    // Disabled but not removed for now, may be reintroduced some day
	EvVibranceEnabled=150,
	EvVibrancePastels=151,
	EvVibranceSaturated=152,
	EvVibranceProtectSkins=153,
	EvVibranceAvoidColorShift=154,
	EvVibrancePastSatTog=155,
	EvVibrancePastSatThreshold=156,
	EvEPDStrength=157,
	EvEPDEdgeStopping=158,
	EvEPDScale=159,
	EvEPDReweightingIterates=160,
	EvEPDEnabled=161,
	EvRGBrCurve=162,
	EvRGBgCurve=163,
	EvRGBbCurve=164,
	EvNeutralExp=165,
	EvDemosaicMethodPreProc=166,
	EvLCCCurve=167,
	EvLCHCurve=168,
	EvVibranceSkinTonesCurve=169,
	EvLLCCurve=170,
	EvLLCredsk=171,
	EvDPDNLdetail=172,
	EvCATEnabled=173,
	EvCATDegree=174,
	EvCATMethodsur=175,
	EvCATAdapscen=176,
	EvCATAdapLum=177,
	EvCATMethodWB=178,
	EvCATJLight=179,
	EvCATChroma=180,
	EvCATAutoDegree=181,
	EvCATContrast=182,
	EvCATsurr=183,
	EvCATgamut=184,
	EvCATMethodalg=185,
	EvCATRstpro=186,
	EvCATQbright=187,
	EvCATQContrast=188,
	EvCATSChroma=189,
	EvCATMChroma=190,
	EvCAThue=191,
	EvCATCurve1=192,
	EvCATCurve2=193,
	EvCATCurveMode1=194,
	EvCATCurveMode2=195,
	EvCATCurve3=196,
	EvCATCurveMode3=197,
	EvCATdatacie=198,
	EvCATtonecie=199,
	EvDPDNredchro=200,
	EvDPDNbluechro=201,
	EvDPDNmet=202,
//	EvDPDNperform=201,
	EvDemosaicLMMSEIter=203,
	EvCATbadpix=204,
	EvCATAutoAdap=205,
	EvPFCurve=206,
	EvWBequal=207,
	EvWBequalbo=208,
	EvGradientDegree=209,
	EvGradientEnabled=210,
	EvPCVignetteStrength=211,
	EvPCVignetteEnabled=212,
	EvBWChmixEnabled=213,
	EvBWred=214,
	EvBWgreen=215,
	EvBWblue=216,
	EvBWredgam=217,
	EvBWgreengam=218,
	EvBWbluegam=219,
	EvBWfilter=220,
	EvBWsetting=221,
	EvBWoran=222,
	EvBWyell=223,
	EvBWcyan=224,
	EvBWmag=225,
	EvBWpur=226,
	EvBWLuminanceEqual=227,
	EvBWChmixEnabledLm=228,
	EvBWmethod=229,
	EvBWBeforeCurve=230,
	EvBWBeforeCurveMode=231,
	EvBWAfterCurve=232,
	EvBWAfterCurveMode=233,
	EvAutoch=234,
//	EvFixedch=235,   -- can be reused --
	EvNeutralBW=236,
	EvGradientFeather=237,
	EvGradientStrength=238,
	EvGradientCenter=239,
	EvPCVignetteFeather=240,
	EvPCVignetteRoundness=241,
	EvVignettingRadius=242,
	EvVignettingStrenght=243,
	EvVignettingCenter=244,
	EvLCLCurve=245,
	EvLLHCurve=246,
	EvLHHCurve=247,
	EvDirPyrEqualizerThreshold=248,
	EvDPDNenhance=249,
	EvBWMethodalg=250,
	EvDirPyrEqualizerSkin=251,
	EvDirPyrEqlgamutlab=252,
	EvDirPyrEqualizerHueskin=253,
//	EvDirPyrEqualizeralg=254,
	EvDPDNmedian=254,
	EvDPDNmedmet=255,
	EvColorToningEnabled=256,
	EvColorToningColor =257,
	EvColorToningOpacity=258,
	EvColorToningCLCurve=259,
	EvColorToningMethod=260,
//	EvColorToningTwocolor=259,
	EvColorToningLLCurve=261,
	EvColorToningredlow=262,
	EvColorToninggreenlow=263,
	EvColorToningbluelow=264,
	EvColorToningredmed=265,
	EvColorToninggreenmed=266,
	EvColorToningbluemed=267,
	EvColorToningredhigh=268,
	EvColorToninggreenhigh=269,
	EvColorToningbluehigh=270,
	EvColorToningbalance=271,
	EvColorToningNeutral=272,
	EvColorToningsatlow=273,
	EvColorToningsathigh=274,
	EvColorToningTwocolor=275,
	EvColorToningNeutralcur=276,
	EvColorToningLumamode=277,
	EvColorToningShadows=278,
	EvColorToningHighights=279,
	EvColorToningSatProtection=280,
	EvColorToningSatThreshold=281,
	EvColorToningStrength=282,
	EvColorToningautosat=283,
	EvDPDNmetmed=284,	
	EvDPDNrgbmet=285,
	EvDPDNpasses=286,	
	EvFlatFieldClipControl=287,
	EvFlatFieldAutoClipControl=288,
	EvPreProcessExpBlackRed=289,
	EvPreProcessExpBlackGreen=290,
	EvPreProcessExpBlackBlue=291,
    EvFilmSimulationEnabled=292,
    EvFilmSimulationStrength=293,
    EvFilmSimulationFilename=294,
	EvDPDNLCurve=295,
	EvDPDNsmet=296,	
    EvPreProcessDeadPixel=297,
	
	NUMOFEVENTS	
};
}
#endif

