CMS 3D CMS Logo

CaloSpecificAlgo.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: METAlgorithms
4 // Class: CaloSpecificAlgo
5 //
13 //
14 // Original Author: R. Cavanaugh (taken from F.Ratnikov, UMd)
15 // Created: June 6, 2006
16 //
17 //
18 #ifndef METProducers_CaloMETInfo_h
19 #define METProducers_CaloMETInfo_h
20 
21 //____________________________________________________________________________||
30 
31 #include <vector>
32 
33 class CaloTower;
34 struct SpecificCaloMETData;
35 
36 //____________________________________________________________________________||
38 public:
40  const CommonMETData &met,
41  bool noHF,
42  double globalThreshold);
43 
44 private:
47  void update_totalEt_totalEm(double &totalEt, double &totalEm, const CaloTower *calotower, bool noHF);
48  void update_MaxTowerEm_MaxTowerHad(float &MaxTowerEm, float &MaxTowerHad, const CaloTower *calotower, bool noHF);
49  void update_EmEtInEB_EmEtInEE(float &EmEtInEB, float &EmEtInEE, const CaloTower *calotower);
51  float &HadEtInHE,
52  float &HadEtInHO,
53  float &HadEtInHF,
54  float &EmEtInHF,
55  const CaloTower *calotower,
56  bool noHF);
58  double &MExInpHF,
59  double &MEyInpHF,
60  double &sumEtInmHF,
61  double &MExInmHF,
62  double &MEyInmHF,
63  const CaloTower *calotower);
65  double sumEtInpHF,
66  double MExInpHF,
67  double MEyInpHF,
68  double sumEtInmHF,
69  double MExInmHF,
70  double MEyInmHF);
72  double sumEtInpHF,
73  double MExInpHF,
74  double MEyInpHF,
75  double sumEtInmHF,
76  double MExInmHF,
77  double MEyInmHF);
78 
81 };
82 
83 //____________________________________________________________________________||
84 #endif // METProducers_CaloMETInfo_h
DetId find_DetId_of_HCAL_cell_in_constituent_of(const CaloTower *calotower)
void update_HadEtInHB_HadEtInHE_HadEtInHO_HadEtInHF_EmEtInHF(float &HadEtInHB, float &HadEtInHE, float &HadEtInHO, float &HadEtInHF, float &EmEtInHF, const CaloTower *calotower, bool noHF)
void remove_HF_from_MET(CommonMETData &met, double sumEtInpHF, double MExInpHF, double MEyInpHF, double sumEtInmHF, double MExInmHF, double MEyInmHF)
void add_MET_in_HF(SpecificCaloMETData &specific, double sumEtInpHF, double MExInpHF, double MEyInpHF, double sumEtInmHF, double MExInmHF, double MEyInmHF)
void update_EmEtInEB_EmEtInEE(float &EmEtInEB, float &EmEtInEE, const CaloTower *calotower)
void update_totalEt_totalEm(double &totalEt, double &totalEm, const CaloTower *calotower, bool noHF)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
void update_sumEtInpHF_MExInpHF_MEyInpHF_sumEtInmHF_MExInmHF_MEyInmHF(double &sumEtInpHF, double &MExInpHF, double &MEyInpHF, double &sumEtInmHF, double &MExInmHF, double &MEyInmHF, const CaloTower *calotower)
Structure containing data common to all types of MET.
Definition: CommonMETData.h:12
Definition: DetId.h:17
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
reco::CaloMET addInfo(edm::Handle< edm::View< reco::Candidate > > towers, const CommonMETData &met, bool noHF, double globalThreshold)
void update_MaxTowerEm_MaxTowerHad(float &MaxTowerEm, float &MaxTowerHad, const CaloTower *calotower, bool noHF)
math::XYZTLorentzVector LorentzVector
math::XYZPoint Point
DetId find_DetId_of_ECAL_cell_in_constituent_of(const CaloTower *calotower)