Index: rds/FCC/FCChh_PileUpVtx_new.tcl
===================================================================
--- cards/FCC/FCChh_PileUpVtx_new.tcl	(revision 79a7b3ec2df62fe9c0417e50ed940197fc4837d5)
+++ 	(revision )
@@ -1,1015 +1,0 @@
-#
-# Official Delphes card prepared by FCC-hh collaboration
-#
-#  Main authors:  Michele Selvaggi (CERN)
-#
-#  Released on: Dec. 1st, 2017
-#
-#  Configuration: FCC-hh baseline detector
-#
-#######################################
-# Order of execution of various modules
-#######################################
-
-set MaxEvents 100
-set RandomSeed 123
-
-set ExecutionPath {
-
-  PileUpMerger
-  ParticlePropagator
-
-  ChargedHadronTrackingEfficiency
-  ElectronTrackingEfficiency
-  MuonTrackingEfficiency
-
-  ChargedHadronMomentumSmearing
-  ElectronMomentumSmearing
-  MuonMomentumSmearing
-
-  TrackMerger
-
-  TrackSmearing
-  TimeSmearing  
-
-  VertexFinderDA4D  
-
-  TrackTimingPileUpSubtractor  
-
-  ECal
-  HCal
-
-  Calorimeter
-  EFlowMerger
-  EFlowFilter
-
-  PhotonEfficiency
-  PhotonIsolation
-
-  ElectronFilter
-  ElectronIsolation
-
-  ChargedHadronFilter
-
-  MuonIsolation
-
-  NeutrinoFilter
-
-  MissingET
-  GenMissingET
-
-  GenJetFinder04
-  FastJetFinder04
-  CaloJetFinder04
-  TrackJetFinder04
-
-  JetEnergyScale
-
-  JetFlavorAssociation
-
-  BTagging
-  CTagging
-  TauTagging
-
-  ScalarHT
-
-  UniqueObjectFinder
-
-  TreeWriter
-}
-
-###############
-# PileUp Merger
-###############
-
-module PileUpMerger PileUpMerger {
-  set InputArray Delphes/stableParticles
-
-  set ParticleOutputArray stableParticles
-  set VertexOutputArray vertices
-
-  # pre-generated minbias input file
-  set PileUpFile MinBias.pileup
-
-  # average expected pile up
-  set MeanPileUp 10
-
-  # 0-poisson, 1-uniform, 2-delta
-  set PileUpDistribution 2
-
-  # maximum spread in the beam direction in m
-  set ZVertexSpread 0.25
-
-  # maximum spread in time in s
-  set TVertexSpread 800E-12
-
-  # vertex smearing formula f(z,t) (z,t need to be respectively given in m,s)
-
-  #set VertexDistributionFormula {exp(-(t^2/(2*(0.063/2.99792458E8*exp(-(z^2/(2*(0.063)^2))))^2)))}
-  set VertexDistributionFormula {exp(-(t^2/160e-12^2/2))*exp(-(z^2/0.053^2/2))}
-
-  # taking 5.3 cm x 160 ps
-
-  #set VertexDistributionFormula { (abs(t) <= 160e-12) * (abs(z) <= 0.053) * (1.00) +
-  #                                (abs(t) >  160e-12) * (abs(z) <= 0.053) * (0.00) +
-  #                               (abs(t) <= 160e-12) * (abs(z) > 0.053)  * (0.00) +
-  #                           (abs(t) >  160e-12) * (abs(z) > 0.053)  * (0.00)}
-
-}
-
-#################################
-# Propagate particles in cylinder
-#################################
-
-module ParticlePropagator ParticlePropagator {
-  set InputArray PileUpMerger/stableParticles
-  set OutputArray stableParticles
-  set ChargedHadronOutputArray chargedHadrons
-  set ElectronOutputArray electrons
-  set MuonOutputArray muons
-
-  # radius of the magnetic field coverage, in m
-  set Radius 1.5
-  # half-length of the magnetic field coverage, in m
-  set HalfLength 5
-
-  # magnetic field
-  set Bz 4.0
-}
-
-
-
-####################################
-# Charged hadron tracking efficiency
-####################################
-
-module Efficiency ChargedHadronTrackingEfficiency {
-  set InputArray ParticlePropagator/chargedHadrons
-  set OutputArray chargedHadrons
-
- # TBC (which eta_max ? which pT min?)
-
- # tracking efficiency formula for charged hadrons
-
-  set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
-(abs(eta) <= 2.5) * (pt > 0.5 && pt <= 1) * (0.90) + \
-(abs(eta) <= 2.5) * (pt > 1) * (0.95) + \
-(abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 0.5 && pt <= 1) * (0.85) + \
-(abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 1) * (0.90) + \
-(abs(eta) > 4 && abs(eta) <= 6) * (pt > 0.5 && pt <= 1) * (0.80) + \
-(abs(eta) > 4 && abs(eta) <= 6) * (pt > 1.0) * (0.85) + \
-(abs(eta) > 6.0) * (0.00)}
-
-}
-
-##############################
-# Electron tracking efficiency
-##############################
-
-module Efficiency ElectronTrackingEfficiency {
-  set InputArray ParticlePropagator/electrons
-  set OutputArray electrons
-
-# TBC (which eta_max ?)
-# putting same as charged hadrons for now...
-
-  set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
-  (abs(eta) <= 2.5) * (pt > 0.5 && pt <= 1) * (0.90) + \
-  (abs(eta) <= 2.5) * (pt > 1) * (0.95) + \
-  (abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 0.5 && pt <= 1) * (0.85) + \
-  (abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 1) * (0.90) + \
-  (abs(eta) > 4 && abs(eta) <= 6) * (pt > 0.5 && pt <= 1) * (0.80) + \
-  (abs(eta) > 4 && abs(eta) <= 6) * (pt > 1.0) * (0.85) + \
-  (abs(eta) > 6.0) * (0.00)}
-
-}
-
-##########################
-# Muon tracking efficiency
-##########################
-
-module Efficiency MuonTrackingEfficiency {
-  set InputArray ParticlePropagator/muons
-  set OutputArray muons
-
-# TBC (which eta_max ? why eff = 0 for 4 < eta < 6 ? for now put the same as central)
-# what about high pT ?
- # tracking efficiency formula for muons
-  set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
-  (abs(eta) <= 6.0) * (pt > 0.5 && pt <= 1) * (0.90) + \
-  (abs(eta) <= 6.0) * (pt > 1) * (0.99) + \
-  (abs(eta) > 6.0) * (0.00)}
-
-}
-
-########################################
-# Momentum resolution for charged tracks
-########################################
-
-module MomentumSmearing ChargedHadronMomentumSmearing {
-  set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
-  set OutputArray chargedHadrons
-
-  source momentumResolutionVsP.tcl
-}
-
-
-###################################
-# Momentum resolution for electrons
-###################################
-
-module MomentumSmearing ElectronMomentumSmearing {
-  set InputArray ElectronTrackingEfficiency/electrons
-  set OutputArray electrons
-
-  source momentumResolutionVsP.tcl
-}
-
-
-###############################
-# Momentum resolution for muons
-###############################
-
-module MomentumSmearing MuonMomentumSmearing {
-  set InputArray MuonTrackingEfficiency/muons
-  set OutputArray muons
-
-  # TBC for just putting tracker resolution/ need to add improvement at high pT
-
-  source muonMomentumResolutionVsP.tcl
-}
-
-##############
-# Track merger
-##############
-
-module Merger TrackMerger {
-# add InputArray InputArray
-  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
-  add InputArray ElectronMomentumSmearing/electrons
-  add InputArray MuonMomentumSmearing/muons
-  set OutputArray tracks
-}
-
-
-########################################
-#   Smear tracks
-########################################
-
-module TrackSmearing TrackSmearing {
-  set InputArray TrackMerger/tracks
-  set OutputArray tracks
-  set ApplyToPileUp true
-
-  # from http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
-  source trackResolutionCMS.tcl 
-  # FIXME !!!! we need to add track resolution of FCC-hh baseline detector !!!!!
-}
-
-########################################
-#   Time Smearing
-########################################
-
-module TimeSmearing TimeSmearing {
-  set InputArray TrackSmearing/tracks
-  set OutputArray tracks
-
-  # assume 20 ps resolution for now
-  set TimeResolution {20E-12}
-}
-
-##################################
-# Primary vertex reconstruction
-##################################
-
-
-module VertexFinderDA4D VertexFinderDA4D {
-  set InputArray TimeSmearing/tracks
-
-  set OutputArray tracks
-  set VertexOutputArray vertices
-
-  set Verbose 0
-  set MinPT 1.0
-
-  # in mm
-  set VertexSpaceSize 0.5
-
-  # in s
-  set VertexTimeSize 10E-12
-
-  set UseTc 1
-  set BetaMax 0.1
-  set BetaStop 1.0
-  set CoolingFactor 0.8
-  set MaxIterations 100
-
-  # in mm
-  set DzCutOff 40
-  set D0CutOff 30
-
-}
-
-##########################
-# Track pile-up subtractor
-##########################
-
-module TrackTimingPileUpSubtractor TrackTimingPileUpSubtractor {
-# add InputArray InputArray OutputArray
-
-  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
-  add InputArray ElectronMomentumSmearing/electrons
-  add InputArray MuonMomentumSmearing/muons
-  
-  set VertexInputArray VertexFinderDA4D/vertices
-  # assume perfect pile-up subtraction for tracks with |z| > fZVertexResolution
-  # Z vertex resolution in m
-  set ZVertexResolution {0.0001}
-}
-
-
-#############
-#   ECAL
-#############
-
-# TBC : calos seems ok, check eta max value though.
-
-module SimpleCalorimeter ECal {
-  set ParticleInputArray ParticlePropagator/stableParticles
-  set TrackInputArray TimeSmearing/tracks
-
-  set TowerOutputArray ecalTowers
-  set EFlowTrackOutputArray eflowTracks
-  set EFlowTowerOutputArray eflowPhotons
-
-  set IsEcal true
-
-  set EnergyMin 0.5
-  set EnergySignificanceMin 2.0
-
-  set SmearTowerCenter true
-
-  set pi [expr {acos(-1)}]
-
-  # lists of the edges of each tower in eta and phi
-  # each list starts with the lower edge of the first tower
-  # the list ends with the higher edged of the last tower
-
-  # 0.012 rad towers up to eta = 2.5 (barrel)
-   set PhiBins {}
-  for {set i -256} {$i <= 256} {incr i} {
-    add PhiBins [expr {$i * $pi/256.0}]
-  }
-
-  # 0.01 unit in eta up to eta = 2.5 (barrel)
-  for {set i -249} {$i <= 250} {incr i} {
-    set eta [expr {$i * 0.01}]
-    add EtaPhiBins $eta $PhiBins
-  }
-
-  # 0.025 rad between 2.5 and 6.0
-  set PhiBins {}
-  for {set i -128} {$i <= 128} {incr i} {
-    add PhiBins [expr {$i * $pi/128.0}]
-  }
-
-  # 0.025 unit in eta between 2.5 and 6.0
-  for {set i 0} {$i <= 140} {incr i} {
-    set eta [expr { -6.00 + $i * 0.025}]
-    add EtaPhiBins $eta $PhiBins
-  }
-
-  for {set i 0} {$i <= 139} {incr i} {
-    set eta [expr { 2.525 + $i * 0.025}]
-    add EtaPhiBins $eta $PhiBins
-  }
-
-  # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
-
-  add EnergyFraction {0} {0.0}
-  # energy fractions for e, gamma and pi0
-  add EnergyFraction {11} {1.0}
-  add EnergyFraction {22} {1.0}
-  add EnergyFraction {111} {1.0}
-  # energy fractions for muon, neutrinos and neutralinos
-  add EnergyFraction {12} {0.0}
-  add EnergyFraction {13} {0.0}
-  add EnergyFraction {14} {0.0}
-  add EnergyFraction {16} {0.0}
-  add EnergyFraction {1000022} {0.0}
-  add EnergyFraction {1000023} {0.0}
-  add EnergyFraction {1000025} {0.0}
-  add EnergyFraction {1000035} {0.0}
-  add EnergyFraction {1000045} {0.0}
-  # energy fractions for K0short and Lambda
-  # add EnergyFraction {310} {0.3}
-  # add EnergyFraction {3122} {0.3}
-
-  # set ECalResolutionFormula {resolution formula as a function of eta and energy}
-  set ResolutionFormula {                     (abs(eta) <= 4.0) * sqrt(energy^2*0.007^2 + energy*0.10^2) + \
-                            (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.035^2  + energy*0.30^2)}
-
-
-}
-
-#############
-#   HCAL
-#############
-
-module SimpleCalorimeter HCal {
-  set ParticleInputArray ParticlePropagator/stableParticles
-  set TrackInputArray ECal/eflowTracks
-
-  set TowerOutputArray hcalTowers
-  set EFlowTrackOutputArray eflowTracks
-  set EFlowTowerOutputArray eflowNeutralHadrons
-
-  set IsEcal false
-
-  set EnergyMin 1.0
-  set EnergySignificanceMin 2.0
-
-  set SmearTowerCenter true
-
-  set pi [expr {acos(-1)}]
-
-  # lists of the edges of each tower in eta and phi
-  # each list starts with the lower edge of the first tower
-  # the list ends with the higher edged of the last tower
-
-  # 0.025 rad towers up to eta = 2.5 (barrel)
-   set PhiBins {}
-  for {set i -128} {$i <= 128} {incr i} {
-    add PhiBins [expr {$i * $pi/128.0}]
-  }
-
-  # 0.025 unit in eta up to eta = 2.5 (barrel)
-  for {set i -99} {$i <= 100} {incr i} {
-    set eta [expr {$i * 0.025}]
-    add EtaPhiBins $eta $PhiBins
-  }
-
-  # 0.05 rad between 2.5 and 6.0
-  set PhiBins {}
-  for {set i -64} {$i <= 64} {incr i} {
-    add PhiBins [expr {$i * $pi/64.0}]
-  }
-
-  # 0.05 unit in eta between 2.5 and 6.0
-  for {set i 0} {$i <= 70} {incr i} {
-    set eta [expr { -6.00 + $i * 0.05}]
-    add EtaPhiBins $eta $PhiBins
-  }
-
-  for {set i 0} {$i <= 69} {incr i} {
-    set eta [expr { 2.55 + $i * 0.05}]
-    add EtaPhiBins $eta $PhiBins
-  }
-
-
-  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
-  add EnergyFraction {0} {1.0}
-  # energy fractions for e, gamma and pi0
-  add EnergyFraction {11} {0.0}
-  add EnergyFraction {22} {0.0}
-  add EnergyFraction {111} {0.0}
-  # energy fractions for muon, neutrinos and neutralinos
-  add EnergyFraction {12} {0.0}
-  add EnergyFraction {13} {0.0}
-  add EnergyFraction {14} {0.0}
-  add EnergyFraction {16} {0.0}
-  add EnergyFraction {1000022} {0.0}
-  add EnergyFraction {1000023} {0.0}
-  add EnergyFraction {1000025} {0.0}
-  add EnergyFraction {1000035} {0.0}
-  add EnergyFraction {1000045} {0.0}
-  # energy fractions for K0short and Lambda
-  # add EnergyFraction {310} {0.7}
-  # add EnergyFraction {3122} {0.7}
-
-   # set HCalResolutionFormula {resolution formula as a function of eta and energy}
-  set ResolutionFormula {                     (abs(eta) <= 1.7) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
-                            (abs(eta) > 1.7 && abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.60^2) + \
-                            (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.10^2 + energy*1.00^2)}
-}
-
-
-#################
-# Electron filter
-#################
-
-module PdgCodeFilter ElectronFilter {
-  set InputArray HCal/eflowTracks
-  set OutputArray electrons
-  set Invert true
-  add PdgCode {11}
-  add PdgCode {-11}
-}
-
-
-######################
-# ChargedHadronFilter
-######################
-
-module PdgCodeFilter ChargedHadronFilter {
-  set InputArray HCal/eflowTracks
-  set OutputArray chargedHadrons
-
-  add PdgCode {11}
-  add PdgCode {-11}
-  add PdgCode {13}
-  add PdgCode {-13}
-}
-
-
-###################################################
-# Tower Merger (in case not using e-flow algorithm)
-###################################################
-
-module Merger Calorimeter {
-# add InputArray InputArray
-  add InputArray ECal/ecalTowers
-  add InputArray HCal/hcalTowers
-  add InputArray MuonMomentumSmearing/muons
-  set OutputArray towers
-}
-
-####################
-# Energy flow merger
-####################
-
-module Merger EFlowMerger {
-# add InputArray InputArray
-  add InputArray HCal/eflowTracks
-  add InputArray ECal/eflowPhotons
-  add InputArray HCal/eflowNeutralHadrons
-  set OutputArray eflow
-}
-
-######################
-# EFlowFilter
-######################
-
-module PdgCodeFilter EFlowFilter {
-  set InputArray EFlowMerger/eflow
-  set OutputArray eflow
-
-  add PdgCode {11}
-  add PdgCode {-11}
-  add PdgCode {13}
-  add PdgCode {-13}
-}
-
-
-###################
-# Missing ET merger
-###################
-
-module Merger MissingET {
-# add InputArray InputArray
-  add InputArray EFlowMerger/eflow
-  set MomentumOutputArray momentum
-}
-
-
-
-##################
-# Scalar HT merger
-##################
-
-module Merger ScalarHT {
-# add InputArray InputArray
-  add InputArray EFlowMerger/eflow
-  set EnergyOutputArray energy
-}
-
-#################
-# Neutrino Filter
-#################
-
-module PdgCodeFilter NeutrinoFilter {
-
-  set InputArray Delphes/stableParticles
-  set OutputArray filteredParticles
-
-  set PTMin 0.0
-
-  add PdgCode {12}
-  add PdgCode {14}
-  add PdgCode {16}
-  add PdgCode {-12}
-  add PdgCode {-14}
-  add PdgCode {-16}
-
-}
-
-
-#########################
-# Gen Missing ET merger
-########################
-
-module Merger GenMissingET {
-
-# add InputArray InputArray
-  add InputArray NeutrinoFilter/filteredParticles
-  set MomentumOutputArray momentum
-}
-
-
-#####################
-# MC truth jet finder
-#####################
-
-# TBC: is jet radius fine?
-
-module FastJetFinder GenJetFinder04 {
-  set InputArray NeutrinoFilter/filteredParticles
-
-  set OutputArray jets
-
-  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
-  set JetAlgorithm 6
-  set ParameterR 0.4
-
-  set ComputeNsubjettiness 1
-  set Beta 1.0
-  set AxisMode 4
-
-  set ComputeSoftDrop 1
-  set BetaSoftDrop 0.0
-  set SymmetryCutSoftDrop 0.1
-  set R0SoftDrop 0.4
-
-  set JetPTMin 25.0
-}
-
-
-
-##################
-# Fast Jet finder
-##################
-
-module FastJetFinder FastJetFinder04 {
-  set InputArray EFlowMerger/eflow
-
-  set OutputArray jets
-
-  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
-  set JetAlgorithm 6
-  set ParameterR 0.4
-
-  set ComputeNsubjettiness 1
-  set Beta 1.0
-  set AxisMode 4
-
-  set ComputeSoftDrop 1
-  set BetaSoftDrop 0.0
-  set SymmetryCutSoftDrop 0.1
-  set R0SoftDrop 0.4
-
-  set JetPTMin 25.0
-}
-
-
-##################
-# Fast Jet finder
-##################
-
-module FastJetFinder CaloJetFinder04 {
-  set InputArray Calorimeter/towers
-
-  set OutputArray jets
-
-  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
-  set JetAlgorithm 6
-  set ParameterR 0.4
-
-  set ComputeNsubjettiness 1
-  set Beta 1.0
-  set AxisMode 4
-
-  set ComputeSoftDrop 1
-  set BetaSoftDrop 0.0
-  set SymmetryCutSoftDrop 0.1
-  set R0SoftDrop 0.4
-
-  set JetPTMin 25.0
-}
-
-##################
-# Fast Jet finder
-##################
-
-module FastJetFinder TrackJetFinder04 {
-  set InputArray TrackMerger/tracks
-
-  set OutputArray jets
-
-  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
-  set JetAlgorithm 6
-  set ParameterR 0.4
-
-  set ComputeNsubjettiness 1
-  set Beta 1.0
-  set AxisMode 4
-
-  set ComputeSoftDrop 1
-  set BetaSoftDrop 0.0
-  set SymmetryCutSoftDrop 0.1
-  set R0SoftDrop 0.4
-
-  set JetPTMin 25.0
-}
-
-
-##################
-# Jet Energy Scale
-##################
-
-module EnergyScale JetEnergyScale {
-  set InputArray FastJetFinder04/jets
-  set OutputArray jets
-
- # scale formula for jets
-  set ScaleFormula {1.00}
-}
-
-
-########################
-# Jet Flavor Association
-########################
-
-module JetFlavorAssociation JetFlavorAssociation {
-
-  set PartonInputArray Delphes/partons
-  set ParticleInputArray Delphes/allParticles
-  set ParticleLHEFInputArray Delphes/allParticlesLHEF
-  set JetInputArray JetEnergyScale/jets
-
-  set DeltaR 0.5
-  set PartonPTMin 5.0
-  set PartonEtaMax 6.0
-
-}
-
-###################
-# Photon efficiency
-###################
-
-module Efficiency PhotonEfficiency {
-  set InputArray ECal/eflowPhotons
-  set OutputArray photons
-
-  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
-
-  set EfficiencyFormula {
-  (pt <= 1.0) * (0.00) + \
-  (abs(eta) <= 2.5) * (pt > 1.0 && pt < 5.0)  * (0.70) +
-  (abs(eta) <= 2.5) * (pt > 5.0 && pt < 10.0) * (0.85) +
-  (abs(eta) <= 2.5) * (pt > 10.0)             * (0.95) +
-
-  (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt < 5.0)  * (0.60) +
-  (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 5.0 && pt < 10.0) * (0.80) +
-  (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 10.0)		* (0.90) +
-
-  (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 1.0 && pt < 5.0)  * (0.50) + \
-  (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 5.0 && pt < 10.0) * (0.70) + \
-  (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 10.0)             * (0.80) + \
-  (abs(eta) > 6.0) * (0.00)}
-
-}
-
-##################
-# Photon isolation
-##################
-
-# TBC: check values for iso cuts
-
-module Isolation PhotonIsolation {
-  set CandidateInputArray PhotonEfficiency/photons
-  set IsolationInputArray EFlowFilter/eflow
-
-  set OutputArray photons
-
-  set DeltaRMax 0.3
-
-  set PTMin 0.5
-
-  set PTRatioMax 0.1
-}
-
-
-####################
-# Electron isolation
-####################
-
-# TBC: check values for iso cuts
-
-module Isolation ElectronIsolation {
-  set CandidateInputArray ElectronFilter/electrons
-  set IsolationInputArray EFlowFilter/eflow
-
-  set OutputArray electrons
-
-  set DeltaRMax 0.3
-
-  set PTMin 0.5
-
-  set PTRatioMax 0.1
-}
-
-
-################
-# Muon isolation
-################
-
-# TBC: check values for iso cuts
-
-module Isolation MuonIsolation {
-  set CandidateInputArray MuonMomentumSmearing/muons
-  set IsolationInputArray EFlowFilter/eflow
-
-  set OutputArray muons
-
-  set DeltaRMax 0.3
-
-  set PTMin 0.5
-
-  set PTRatioMax 0.2
-}
-
-
-
-###########
-# b-tagging
-###########
-
-module BTagging BTagging {
-  set JetInputArray JetEnergyScale/jets
-
-  set BitNumber 0
-
-  add EfficiencyFormula {0} {
-
-  (pt <= 10.0)                       * (0.00) +
-  (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 500)      * (0.01) + \
-  (abs(eta) < 2.5)                   * (pt > 500.0 && pt < 15000.0) * (0.01)*(1.0 - pt/15000.) + \
-  (abs(eta) < 2.5)                   * (pt > 15000.0)               * (0.00) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.0075) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.0075)*(1.0 - pt/15000.) + \
-  (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0)               * (0.000) + \
-  (abs(eta) > 4.0) * (0.00)}
-
-  add EfficiencyFormula {4} {
-
-  (pt <= 10.0)                       * (0.00) +
-  (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 500)      * (0.05) + \
-  (abs(eta) < 2.5)                   * (pt > 500.0 && pt < 15000.0) * (0.05)*(1.0 - pt/15000.) + \
-  (abs(eta) < 2.5)                   * (pt > 15000.0)               * (0.000) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.03) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.03)*(1.0 - pt/15000.) + \
-  (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0)               * (0.000) + \
-  (abs(eta) > 4.0) * (0.00)}
-
-  add EfficiencyFormula {5} {
-
-  (pt <= 10.0)                                                       * (0.00) +
-  (abs(eta) < 2.5)                    * (pt > 10.0 && pt < 500)      * (0.85) +
-  (abs(eta) < 2.5)                    * (pt > 500.0 && pt < 15000.0) * (0.85)*(1.0 - pt/15000.) +
-  (abs(eta) < 2.5)                    * (pt > 15000.0)               * (0.000) +
-  (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.64) +
-  (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.64)*(1.0 - pt/15000.) +
-  (abs(eta) <= 2.5 && abs(eta) < 4.0) * (pt > 15000.0)               * (0.000) +
-  (abs(eta) >= 4.0) * (0.00)}
-
-}
-
-###########
-# c-tagging
-###########
-
-module BTagging CTagging {
-  set JetInputArray JetEnergyScale/jets
-
-  set BitNumber 1
-
-  add EfficiencyFormula {0} {
-
-  (pt <= 10.0)     * (0.00) +
-  (abs(eta) < 4.0) * (pt > 10.0) * (0.01) + \
-  (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
-
-  add EfficiencyFormula {4} {
-
-  (pt <= 10.0)     * (0.00) +
-  (abs(eta) < 4.0) * (pt > 10.0) * (0.25) + \
-  (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
-
-  add EfficiencyFormula {5} {
-
-  (pt <= 10.0)     * (0.00) +
-  (abs(eta) < 4.0) * (pt > 10.0) * (0.03) + \
-  (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
-
-}
-
-
-#############
-# tau-tagging
-#############
-
-
-module TauTagging TauTagging {
-  set ParticleInputArray Delphes/allParticles
-  set PartonInputArray Delphes/partons
-  set JetInputArray JetEnergyScale/jets
-
-  set DeltaR 0.5
-
-  set TauPTMin 1.0
-
-  set TauEtaMax 4.0
-
-  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
-  add EfficiencyFormula {0} {
-
-  (pt <= 10.0)                                                       * (0.00) +
-  (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 5000.0)    * (0.01) + \
-  (abs(eta) < 2.5)                   * (pt > 5000.0 && pt < 34000.0) * (0.01)  *(8./9. - pt/30000.) + \
-  (abs(eta) < 2.5)                   * (pt > 34000.0)                * (0.000) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0)    * (0.0075) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.0075)*(8./9. - pt/30000.) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0)                * (0.00) + \
-  (abs(eta) > 4.0)                   * (0.00)}
-
-  add EfficiencyFormula {11} {
-
-  (pt <= 10.0)                                                       * (0.00) +
-  (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 5000.0)    * (0.005) + \
-  (abs(eta) < 2.5)                   * (pt > 5000.0 && pt < 34000.0) * (0.005)  *(8./9. - pt/30000.) + \
-  (abs(eta) < 2.5)                   * (pt > 34000.0)                * (0.000) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0)    * (0.00375) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.00375)*(8./9. - pt/30000.) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0)                * (0.00) + \
-  (abs(eta) > 4.0)                   * (0.00)}
-
-  add EfficiencyFormula {15} {
-
-  (pt <= 10.0)                                                       * (0.00) +
-  (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0)                      * (0.8)                      + \
-  (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0)                   * (0.8) *(8./9. - pt/30000.) + \
-  (abs(eta) < 2.5)                   * (pt > 34000.0)                * (0.000) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0)    * (0.65) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.65)*(8./9. - pt/30000.) + \
-  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0)                * (0.00) + \
-  (abs(eta) > 4.0)                                                   * (0.00)}
-
-}
-
-#####################################################
-# Find uniquely identified photons/electrons/tau/jets
-#####################################################
-
-module UniqueObjectFinder UniqueObjectFinder {
-# earlier arrays take precedence over later ones
-# add InputArray InputArray OutputArray
-  add InputArray PhotonIsolation/photons photons
-  add InputArray ElectronIsolation/electrons electrons
-  add InputArray MuonIsolation/muons muons
-  add InputArray JetEnergyScale/jets jets
-
-}
-
-
-##################
-# ROOT tree writer
-##################
-
-module TreeWriter TreeWriter {
-# add Branch InputArray BranchName BranchClass
-  add Branch Delphes/allParticles Particle GenParticle
-
-  add Branch GenMissingET/momentum GenMissingET MissingET
-
-  add Branch TimeSmearing/tracks Track Track
-  add Branch Calorimeter/towers Tower Tower
-
-  add Branch HCal/eflowTracks EFlowTrack Track
-  add Branch ECal/eflowPhotons EFlowPhoton Tower
-  add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
-
-  add Branch UniqueObjectFinder/photons Photon Photon
-  add Branch UniqueObjectFinder/electrons Electron Electron
-  add Branch UniqueObjectFinder/muons Muon Muon
-  add Branch UniqueObjectFinder/jets Jet Jet
-
-  add Branch GenJetFinder04/jets GenJet04 Jet
-  add Branch FastJetFinder04/jets ParticleFlowJet04 Jet
-  add Branch CaloJetFinder04/jets CaloJet04 Jet
-  add Branch TrackJetFinder04/jets TrackJet04 Jet
-
-  add Branch MissingET/momentum MissingET MissingET
-  add Branch ScalarHT/energy ScalarHT ScalarHT
-  add Branch VertexFinderDA4D/vertices Vertex4D Vertex
-}
-
Index: dules/TimeSmearingNeutral.cc
===================================================================
--- modules/TimeSmearingNeutral.cc	(revision 79a7b3ec2df62fe9c0417e50ed940197fc4837d5)
+++ 	(revision )
@@ -1,130 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program 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.
- *
- *  This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** \class TimeSmearingNeutral
- *
- *  Performs transverse momentum resolution smearing.
- *
- *  \author P. Demin - UCL, Louvain-la-Neuve
- *
- */
-
-#include "modules/TimeSmearingNeutral.h"
-
-#include "classes/DelphesClasses.h"
-#include "classes/DelphesFactory.h"
-#include "classes/DelphesFormula.h"
-
-#include "ExRootAnalysis/ExRootClassifier.h"
-#include "ExRootAnalysis/ExRootFilter.h"
-#include "ExRootAnalysis/ExRootResult.h"
-
-#include "TDatabasePDG.h"
-#include "TFormula.h"
-#include "TLorentzVector.h"
-#include "TMath.h"
-#include "TObjArray.h"
-#include "TRandom3.h"
-#include "TString.h"
-
-#include <algorithm>
-#include <iostream>
-#include <sstream>
-#include <stdexcept>
-
-using namespace std;
-
-//------------------------------------------------------------------------------
-
-TimeSmearingNeutral::TimeSmearingNeutral() :
-  fFormula(0), fItInputArray(0)
-{
-  fFormula = new DelphesFormula;
-}
-
-//------------------------------------------------------------------------------
-
-TimeSmearingNeutral::~TimeSmearingNeutral()
-{
-  if(fFormula) delete fFormula;
-}
-
-//------------------------------------------------------------------------------
-
-void TimeSmearingNeutral::Init()
-{
-  // read resolution formula
-
-  //fFormula->Compile(GetString("TimeResolution", "1.0"));
-  fTimeResolution = GetDouble("TimeResolution", 1.);
-  // import input array
-  fEtaMax = GetDouble("EtaMax", 6.);
-  fInputArray = ImportArray(GetString("InputArray", "MuonMomentumSmearing/muons"));
-  fItInputArray = fInputArray->MakeIterator();
-
-  // create output array
-
-  fOutputArray = ExportArray(GetString("OutputArray", "muons"));
-}
-
-//------------------------------------------------------------------------------
-
-void TimeSmearingNeutral::Finish()
-{
-  if(fItInputArray) delete fItInputArray;
-}
-
-//------------------------------------------------------------------------------
-
-void TimeSmearingNeutral::Process()
-{
-  Candidate *candidate, *mother;
-  Double_t ti, tf_smeared, tf, timeResolution;
-  Double_t pt, eta, phi, e, p, d0, dz, ctgTheta;
-  Double_t beta_particle;
-  Double_t l;
-  Double_t sigma_t;
-
-  const Double_t c_light = 2.99792458E8;
-
-  fItInputArray->Reset();
-  while((candidate = static_cast<Candidate*>(fItInputArray->Next())))
-  {
-    ti = candidate->InitialPosition.T()*1.0E-3/c_light;
-    tf = candidate->Position.T()*1.0E-3/c_light;
-    e = candidate->Momentum.E();
-    p = candidate->Momentum.P();
-    beta_particle = p/e;
-    l = candidate->L;
-
-    if(candidate->Charge == 0)
-    {
-      sigma_t = sqrt(pow(20,2) + pow(150,2)/e)*1.0E-12;
-    }else
-      sigma_t = fTimeResolution*gRandom->Gaus(0, 1);;
-
-    ti = sigma_t - l*1.0E3/(c_light*beta_particle);
-
-
-    candidate->InitialPosition.SetT(ti);
-    candidate->ErrorT = sigma_t*1.0E3*c_light;
-    fOutputArray->Add(candidate);
-  }
-}
-
-//------------------------------------------------------------------------------
Index: dules/TimeSmearingNeutral.h
===================================================================
--- modules/TimeSmearingNeutral.h	(revision 79a7b3ec2df62fe9c0417e50ed940197fc4837d5)
+++ 	(revision )
@@ -1,60 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program 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.
- *
- *  This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef TimeSmearingNeutral_h
-#define TimeSmearingNeutral_h
-
-/** \class TimeSmearingNeutral
- *
- *  Performs transverse time smearing.
- *
- *  \author Michele Selvaggi - UCL, Louvain-la-Neuve
- *
- */
-
-#include "classes/DelphesModule.h"
-
-class TIterator;
-class TObjArray;
-class DelphesFormula;
-
-class TimeSmearingNeutral: public DelphesModule
-{
-public:
-  TimeSmearingNeutral();
-  ~TimeSmearingNeutral();
-
-  void Init();
-  void Process();
-  void Finish();
-
-private:
-  DelphesFormula *fFormula; //!
-  Double_t fEtaMax;
-  Double_t fTimeResolution;
-
-  TIterator *fItInputArray; //!
-
-  const TObjArray *fInputArray; //!
-
-  TObjArray *fOutputArray; //!
-
-  ClassDef(TimeSmearingNeutral, 1)
-};
-
-#endif
Index: dules/TrackTimingPileUpSubtractor.cc
===================================================================
--- modules/TrackTimingPileUpSubtractor.cc	(revision 79a7b3ec2df62fe9c0417e50ed940197fc4837d5)
+++ 	(revision )
@@ -1,190 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program 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.
- *
- *  This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** \class TrackPileUpSubtractor
- *
- *  Subtract pile-up contribution from tracks.
- *
- *  \author P. Demin - UCL, Louvain-la-Neuve
- *
- */
-
-#include "modules/TrackTimingPileUpSubtractor.h"
-
-#include "classes/DelphesClasses.h"
-#include "classes/DelphesFactory.h"
-#include "classes/DelphesFormula.h"
-
-#include "ExRootAnalysis/ExRootClassifier.h"
-#include "ExRootAnalysis/ExRootFilter.h"
-#include "ExRootAnalysis/ExRootResult.h"
-
-#include "TDatabasePDG.h"
-#include "TFormula.h"
-#include "TLorentzVector.h"
-#include "TMath.h"
-#include "TObjArray.h"
-#include "TRandom3.h"
-#include "TString.h"
-
-#include <algorithm>
-#include <iostream>
-#include <sstream>
-#include <stdexcept>
-
-using namespace std;
-
-//------------------------------------------------------------------------------
-
-TrackTimingPileUpSubtractor::TrackTimingPileUpSubtractor() :
-  fFormula(0)
-{
-  fFormula = new DelphesFormula;
-}
-
-//------------------------------------------------------------------------------
-
-TrackTimingPileUpSubtractor::~TrackTimingPileUpSubtractor()
-{
-  if(fFormula) delete fFormula;
-}
-
-//------------------------------------------------------------------------------
-
-void TrackTimingPileUpSubtractor::Init()
-{
-  // import input array
-
-  fVertexInputArray = ImportArray(GetString("VertexInputArray", "PileUpMerger/vertices"));
-  fItVertexInputArray = fVertexInputArray->MakeIterator();
-
-  // read resolution formula in m
-  fChargedMinSignificance = GetDouble("ChargedMinSignificance", 3);
-  fNeutralMinSignificance = GetDouble("NeutralMinSignificance", 3);
-
-  fPTMin = GetDouble("PTMin", 0.);
-
-  // import arrays with output from other modules
-
-  ExRootConfParam param = GetParam("InputArray");
-  Long_t i, size;
-  const TObjArray *array;
-  TIterator *iterator;
-
-  size = param.GetSize();
-  for(i = 0; i < size / 2; ++i)
-  {
-    array = ImportArray(param[i * 2].GetString());
-    iterator = array->MakeIterator();
-
-    fInputMap[iterator] = ExportArray(param[i * 2 + 1].GetString());
-  }
-}
-
-//------------------------------------------------------------------------------
-
-void TrackTimingPileUpSubtractor::Finish()
-{
-  map<TIterator *, TObjArray *>::iterator itInputMap;
-  TIterator *iterator;
-
-  for(itInputMap = fInputMap.begin(); itInputMap != fInputMap.end(); ++itInputMap)
-  {
-    iterator = itInputMap->first;
-
-    if(iterator) delete iterator;
-  }
-
-  if(fItVertexInputArray) delete fItVertexInputArray;
-}
-
-//------------------------------------------------------------------------------
-
-void TrackTimingPileUpSubtractor::Process()
-{
-  Candidate *candidate, *particle;
-  map<TIterator *, TObjArray *>::iterator itInputMap;
-  TIterator *iterator;
-  TObjArray *array;
-  Double_t z, zvtx = 0;
-  Double_t z_err, zvtx_err = 0;
-  Double_t t, tvtx = 0;
-  Double_t t_err, tvtx_err = 0;
-  Double_t sumPTSquare = 0;
-  Double_t tempPTSquare = 0;
-  Double_t pt, eta, phi, e;
-  Double_t distanceCharged, distanceNeutral = 0;
-
-  // find z position of primary vertex
-
-  fItVertexInputArray->Reset();
-  while((candidate = static_cast<Candidate *>(fItVertexInputArray->Next())))
-  {
-    tempPTSquare = candidate->SumPT2;
-    if(tempPTSquare > sumPTSquare)
-    {
-      sumPTSquare = tempPTSquare;
-      zvtx = candidate->Position.Z();
-      zvtx_err = candidate->PositionError.Z();
-      tvtx = candidate->Position.T();
-      tvtx_err = candidate->PositionError.T();
-    } 
-  }
-
-  // loop over all input arrays
-  for(itInputMap = fInputMap.begin(); itInputMap != fInputMap.end(); ++itInputMap)
-  {
-    iterator = itInputMap->first;
-    array = itInputMap->second;
-
-    // loop over all candidates
-    iterator->Reset();
-    while((candidate = static_cast<Candidate *>(iterator->Next())))
-    {
-      particle = static_cast<Candidate *>(candidate->GetCandidates()->At(0));
-      const TLorentzVector &candidateMomentum = particle->Momentum;
-
-      eta = candidateMomentum.Eta();
-      pt = candidateMomentum.Pt();
-      phi = candidateMomentum.Phi();
-      e = candidateMomentum.E();
-
-      z = particle->Position.Z();
-      z_err = particle->PositionError.Z();
-      t = particle->InitialPosition.T();
-      t_err = particle->PositionError.T();
-
-      distanceCharged = pow((zvtx - z),2)/pow((zvtx_err - z_err),2) + pow((tvtx - t),2)/pow((tvtx_err - t_err),2);
-      distanceNeutral = pow((tvtx - t),2)/pow((tvtx_err - t_err),2);
-
-      if(candidate->Charge != 0 && distanceCharged < fChargedMinSignificance)
-      {
-        candidate->IsRecoPU = 1;
-      }
-      else if(candidate->Charge == 0 && distanceNeutral < fNeutralMinSignificance)
-      {
-        candidate->IsRecoPU = 1;
-      }  
-      else
-      {
-        candidate->IsRecoPU = 0;
-        if(candidate->Momentum.Pt() > fPTMin) array->Add(candidate);
-      }
-    }
-  }
-}
Index: dules/TrackTimingPileUpSubtractor.h
===================================================================
--- modules/TrackTimingPileUpSubtractor.h	(revision 79a7b3ec2df62fe9c0417e50ed940197fc4837d5)
+++ 	(revision )
@@ -1,65 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program 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.
- *
- *  This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef TrackTimingPileUpSubtractor_h
-#define TrackTimingPileUpSubtractor_h
-
-/** \class TrackPileUpSubtractor
- *
- *  Subtract pile-up contribution from tracks.
- *
- *  \author P. Demin - UCL, Louvain-la-Neuve
- *
- */
-
-#include "classes/DelphesModule.h"
-
-#include <map>
-
-class TIterator;
-class TObjArray;
-class DelphesFormula;
-
-class TrackTimingPileUpSubtractor: public DelphesModule
-{
-public:
-  TrackTimingPileUpSubtractor();
-  ~TrackTimingPileUpSubtractor();
-
-  void Init();
-  void Process();
-  void Finish();
-
-private:
-  DelphesFormula *fFormula; //!
-
-  Double_t fChargedMinSignificance;
-  Double_t fNeutralMinSignificance;
-
-  Double_t fPTMin;
-
-  std::map<TIterator *, TObjArray *> fInputMap; //!
-
-  ClassDef(TrackTimingPileUpSubtractor, 1)
-
-    TIterator *fItVertexInputArray; //!
-
-  const TObjArray *fVertexInputArray; //!
-};
-
-#endif
