#
# Additional comment (BA, 04/20/06)
# the important lines for EMJet removal
have been highlighted
# in red (selection of EM objects to be matched with jets)
#
# !/usr/bin/env cafe

#
# Top EM Selection
######################################################

+SingleElectronSelection.Run:    ElectronSelector(single_loose_electron)
+SingleElectronSelection.Run:    ElectronSelector(single_tight_electronCC)
#+SingleElectronSelection.Run:    TopPreselection(AdditionalEMcuts)

+ElectronRejection.Run:        ElectronSelector(loose_electron)
+ElectronRejection.Run:        ElectronSelector(reject_electron)


#  Electron Cuts -- Exactly one top_loose
#####################################################

single_loose_electron.From:         EMscone
single_loose_electron.To:         TopLooseElectron
single_loose_electron.Tree:         SelectedObjects

single_loose_electron.Quality:        top_loose
single_loose_electron.Version:        1
single_loose_electron.nElectrons:     1
single_loose_electron.nElectronsMax:    1
single_loose_electron.SelectionFile:     top_cafe/em_cuts/top_emid.txt


#  Electron Cuts -- Exactly one top_loose in CC
#####################################################

single_loose_electronCC.From:         EMscone
single_loose_electronCC.To:         TopLooseElectron
single_loose_electronCC.Tree:         SelectedObjects

single_loose_electronCC.Quality:        top_looseCC
single_loose_electronCC.Version:    1
single_loose_electronCC.nElectrons:     1
single_loose_electronCC.nElectronsMax:    1
single_loose_electronCC.SelectionFile:     top_cafe/em_cuts/top_emid.txt


# Electron Cuts -- Exactly one top_tight in CC
######################################################

single_tight_electronCC.From:         EMscone
single_tight_electronCC.To:         GoodElectron
single_tight_electronCC.Tree:         SelectedObjects

single_tight_electronCC.Quality:     top_tightCC
single_tight_electronCC.Version:    1
single_tight_electronCC.nElectrons:     1
single_tight_electronCC.nElectronsMax:    1
single_tight_electronCC.SelectionFile:    top_cafe/em_cuts/top_emid.txt

#  Electron Cuts -- top_loose electrons for jet-EM matching
#####################################################

loose_electron.From:             EMscone
loose_electron.To:             TopLooseElectron
loose_electron.Tree:             SelectedObjects

loose_electron.Quality:            top_loose
loose_electron.Version:            1
loose_electron.nElectrons:         0
loose_electron.SelectionFile:         top_cafe/em_cuts/top_emid.txt


# Electron Cuts (d0correct_em for MET correction)
######################################################

em_for_met.From:            EMscone
em_for_met.To:                MetEM
em_for_met.Tree:                  SelectedObjects

em_for_met.Quality:                    d0correct
em_for_met.Version:                1
em_for_met.SelectionFile:           top_cafe/em_cuts/top_emid.txt
em_for_met.nElectrons:            0

# Additional EM cuts   
######################################################

AdditionalEMcuts.EMBranch:            GoodElectron
AdditionalEMcuts.LeadingElectronSpecialLhood:    true


# Veto events with any top_tight
######################################################

reject_electron.From:            EMscone
reject_electron.To:               GoodElectron
reject_electron.Tree:            TempTree

reject_electron.Quality:         top_tight
reject_electron.Version:        1
reject_electron.nElectrons:            0
reject_electron.nElectronsMax:         0
reject_electron.SelectionFile:         top_cafe/em_cuts/top_emid.txt


# Electron corrections
######################################################

ElectronCorr.From:            GoodElectron
ElectronCorr.Path:            emid_eff/scale_factor
ElectronCorr.EffType:            Binned
ElectronCorr.EffName:            PostPresCFac
ElectronCorr.EffVarNames:        DetEta
ElectronCorr.ObjType:            Electron
ElectronCorr.ObjQuality:        top_tight

######################################################