1 #ifndef RecoParticleFlow_PFProducer_PFAlgo_h 2 #define RecoParticleFlow_PFProducer_PFAlgo_h 43 std::vector<unsigned>
hoIs;
69 connector_.setParameters(iCfgCandConnector);
74 double dptRel_PrimaryTrack,
75 double dptRel_MergedTrack,
76 double ptErrorSecondary,
78 connector_.setParameters(
79 bCorrect, bCalibPrimary, dptRel_PrimaryTrack, dptRel_MergedTrack, ptErrorSecondary, nuclCalibFactors);
122 bool checkAndReconstructSecondaryInteraction(
const reco::PFBlockRef& blockref,
126 bool checkHasDeadHcal(
const std::multimap<double, unsigned>& hcalElems,
const std::vector<bool>& deadArea);
128 std::multimap<double, unsigned>& ecalElems,
129 std::multimap<double, unsigned>& hcalElems,
130 const std::vector<bool>& active,
132 unsigned int iTrack);
133 bool checkGoodTrackDeadHcal(
const reco::TrackRef& trackRef,
bool hasDeadHcal);
137 std::vector<bool>& active,
140 std::vector<bool>& deadArea);
143 std::vector<bool>& active,
145 std::vector<bool>& deadArea,
151 std::vector<bool>& active,
152 bool goodTrackDeadHcal,
155 std::multimap<double, unsigned>& ecalElems,
162 std::vector<bool>& active,
169 std::vector<bool>& active,
172 std::vector<bool>& deadArea);
173 void createCandidatesHCALUnlinked(
const reco::PFBlock& block,
176 std::vector<bool>& active,
179 std::vector<bool>& deadArea);
184 std::vector<bool>& active,
187 std::vector<bool>& deadArea);
192 std::list<reco::PFBlockRef>& hcalBlockRefs,
193 std::list<reco::PFBlockRef>& ecalBlockRefs,
208 double particleEnergy,
209 bool useDirection =
false,
210 double particleX = 0.,
211 double particleY = 0.,
212 double particleZ = 0.);
217 double neutralHadronEnergyResolution(
double clusterEnergy,
double clusterEta)
const;
219 double nSigmaHCAL(
double clusterEnergy,
double clusterEta)
const;
221 double hfEnergyResolution(
double clusterEnergy)
const;
223 double nSigmaHFEM(
double clusterEnergy)
const;
224 double nSigmaHFHAD(
double clusterEnergy)
const;
231 void associatePSClusters(
unsigned iEcal,
236 std::vector<bool>& active,
237 std::vector<double>& psEne);
329 bool useVertices_ =
false;
334 const double nSigmaEConstHCAL = 100.;
335 const double nSigmaEConstHFEM = 100.;
336 const double nSigmaEConstHFHAD = 100.;
std::vector< unsigned > ps1Is
Abstract base class for a PFBlock element (track, cluster...)
float goodTrackDeadHcal_dxy_
std::vector< double > muonHCAL_
Variables for muons and fakes.
reco::PFCandidateCollection & getCleanedCandidates()
std::vector< unsigned > hoIs
std::vector< unsigned > ps2Is
const double nSigmaHFEM_
number of sigma to judge energy excess in HF
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
const double nSigmaHCAL_
number of sigma to judge energy excess in HCAL
std::unique_ptr< reco::PFCandidateCollection > pfCandidates_
void setCandConnectorParameters(const edm::ParameterSet &iCfgCandConnector)
bool useProtectionsForJetMET_
const std::vector< double > resolHF_square_
float goodPixelTrackDeadHcal_minEta_
std::vector< Vertex > VertexCollection
collection of Vertex objects
std::map< unsigned int, Link > LinkData
std::vector< PFRecHit > PFRecHitCollection
collection of PFRecHit objects
const edm::ValueMap< reco::PhotonRef > * valueMapGedPhotons_
PFCandConnector connector_
reco::PFCandidateCollection pfCleanedCandidates_
std::ostream & operator<<(std::ostream &out, const ALILine &li)
float goodPixelTrackDeadHcal_dxy_
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
bool rejectTracks_Step45_
double minSignificanceReduction_
std::vector< double > factors45_
std::vector< unsigned > hfHadIs
std::vector< unsigned > hcalIs
bool usePFNuclearInteractions_
Based on a class from : V. Roberfroid, February 2008.
const edm::View< reco::PFCandidate > * pfEgammaCandidates_
float goodTrackDeadHcal_validFr_
reco::Vertex primaryVertex_
edm::Handle< reco::MuonCollection > muonHandle_
std::vector< double > muonECAL_
PFEnergyCalibration & calibration_
int goodPixelTrackDeadHcal_maxLost3Hit_
void setCandConnectorParameters(bool bCorrect, bool bCalibPrimary, double dptRel_PrimaryTrack, double dptRel_MergedTrack, double ptErrorSecondary, const std::vector< double > &nuclCalibFactors)
float goodPixelTrackDeadHcal_maxPt_
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
int goodTrackDeadHcal_layers_
std::vector< unsigned > hfEmIs
std::vector< double > muonHO_
float goodPixelTrackDeadHcal_ptErrRel_
std::vector< unsigned > ecalIs
const double nSigmaECAL_
number of sigma to judge energy excess in ECAL
PFEnergyCalibrationHF & thepfEnergyCalibrationHF_
Particle reconstructed by the particle flow algorithm.
reco::PFCandidateCollection makeConnectedCandidates()
bool useEGammaFilters_
Variables for NEW EGAMMA selection.
float goodTrackDeadHcal_ptErrRel_
Variables for track cleaning in bad HCal areas.
int goodPixelTrackDeadHcal_maxLost4Hit_
const double nSigmaHFHAD_
float goodPixelTrackDeadHcal_chi2n_
std::vector< unsigned > trackIs
std::unique_ptr< PFMuonAlgo > pfmu_
float goodTrackDeadHcal_chi2n_
float goodPixelTrackDeadHcal_dz_
const edm::ValueMap< reco::GsfElectronRef > * valueMapGedElectrons_