CMS 3D CMS Logo

TICLCandidateValidator.h
Go to the documentation of this file.
1 #ifndef Validation_HGCalValidation_TICLCandidateValidator_h
2 #define Validation_HGCalValidation_TICLCandidateValidator_h
3 
4 #include <iostream>
5 #include <vector>
6 #include <unordered_map>
7 
14 
18 
20 
22 
31 
32  std::vector<dqm::reco::MonitorElement*> h_den_chg_energy_candidate;
33  std::vector<dqm::reco::MonitorElement*> h_num_chg_energy_candidate_track;
34  std::vector<dqm::reco::MonitorElement*> h_num_chg_energy_candidate_pdgId;
35  std::vector<dqm::reco::MonitorElement*> h_num_chg_energy_candidate_energy;
36  std::vector<dqm::reco::MonitorElement*> h_den_chg_pt_candidate;
37  std::vector<dqm::reco::MonitorElement*> h_num_chg_pt_candidate_track;
38  std::vector<dqm::reco::MonitorElement*> h_num_chg_pt_candidate_pdgId;
39  std::vector<dqm::reco::MonitorElement*> h_num_chg_pt_candidate_energy;
40  std::vector<dqm::reco::MonitorElement*> h_den_chg_eta_candidate;
41  std::vector<dqm::reco::MonitorElement*> h_num_chg_eta_candidate_track;
42  std::vector<dqm::reco::MonitorElement*> h_num_chg_eta_candidate_pdgId;
43  std::vector<dqm::reco::MonitorElement*> h_num_chg_eta_candidate_energy;
44  std::vector<dqm::reco::MonitorElement*> h_den_chg_phi_candidate;
45  std::vector<dqm::reco::MonitorElement*> h_num_chg_phi_candidate_track;
46  std::vector<dqm::reco::MonitorElement*> h_num_chg_phi_candidate_pdgId;
47  std::vector<dqm::reco::MonitorElement*> h_num_chg_phi_candidate_energy;
48 
49  std::vector<dqm::reco::MonitorElement*> h_den_neut_energy_candidate;
50  std::vector<dqm::reco::MonitorElement*> h_num_neut_energy_candidate_pdgId;
51  std::vector<dqm::reco::MonitorElement*> h_num_neut_energy_candidate_energy;
52  std::vector<dqm::reco::MonitorElement*> h_den_neut_pt_candidate;
53  std::vector<dqm::reco::MonitorElement*> h_num_neut_pt_candidate_pdgId;
54  std::vector<dqm::reco::MonitorElement*> h_num_neut_pt_candidate_energy;
55  std::vector<dqm::reco::MonitorElement*> h_den_neut_eta_candidate;
56  std::vector<dqm::reco::MonitorElement*> h_num_neut_eta_candidate_pdgId;
57  std::vector<dqm::reco::MonitorElement*> h_num_neut_eta_candidate_energy;
58  std::vector<dqm::reco::MonitorElement*> h_den_neut_phi_candidate;
59  std::vector<dqm::reco::MonitorElement*> h_num_neut_phi_candidate_pdgId;
60  std::vector<dqm::reco::MonitorElement*> h_num_neut_phi_candidate_energy;
61 
62  std::vector<dqm::reco::MonitorElement*> h_den_fake_chg_energy_candidate;
63  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_energy_candidate_track;
64  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_energy_candidate_pdgId;
65  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_energy_candidate_energy;
66  std::vector<dqm::reco::MonitorElement*> h_den_fake_chg_pt_candidate;
67  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_pt_candidate_track;
68  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_pt_candidate_pdgId;
69  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_pt_candidate_energy;
70  std::vector<dqm::reco::MonitorElement*> h_den_fake_chg_eta_candidate;
71  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_eta_candidate_track;
72  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_eta_candidate_pdgId;
73  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_eta_candidate_energy;
74  std::vector<dqm::reco::MonitorElement*> h_den_fake_chg_phi_candidate;
75  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_phi_candidate_track;
76  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_phi_candidate_pdgId;
77  std::vector<dqm::reco::MonitorElement*> h_num_fake_chg_phi_candidate_energy;
78 
79  std::vector<dqm::reco::MonitorElement*> h_den_fake_neut_energy_candidate;
80  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_energy_candidate_pdgId;
81  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_energy_candidate_energy;
82  std::vector<dqm::reco::MonitorElement*> h_den_fake_neut_pt_candidate;
83  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_pt_candidate_pdgId;
84  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_pt_candidate_energy;
85  std::vector<dqm::reco::MonitorElement*> h_den_fake_neut_eta_candidate;
86  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_eta_candidate_pdgId;
87  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_eta_candidate_energy;
88  std::vector<dqm::reco::MonitorElement*> h_den_fake_neut_phi_candidate;
89  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_phi_candidate_pdgId;
90  std::vector<dqm::reco::MonitorElement*> h_num_fake_neut_phi_candidate_energy;
91 
92  std::vector<dqm::reco::MonitorElement*> h_chg_tracksters_in_candidate;
93  std::vector<dqm::reco::MonitorElement*> h_chg_candidate_regressed_energy;
94  std::vector<dqm::reco::MonitorElement*> h_chg_candidate_charge;
95  std::vector<dqm::reco::MonitorElement*> h_chg_candidate_pdgId;
96  std::vector<dqm::reco::MonitorElement*> h_chg_candidate_partType;
97 
98  std::vector<dqm::reco::MonitorElement*> h_neut_tracksters_in_candidate;
99  std::vector<dqm::reco::MonitorElement*> h_neut_candidate_regressed_energy;
100  std::vector<dqm::reco::MonitorElement*> h_neut_candidate_charge;
101  std::vector<dqm::reco::MonitorElement*> h_neut_candidate_pdgId;
102  std::vector<dqm::reco::MonitorElement*> h_neut_candidate_partType;
103 };
104 
106 public:
109 
111  TICLCandidateValidator(edm::EDGetTokenT<std::vector<TICLCandidate>> TICLCandidates,
112  edm::EDGetTokenT<std::vector<TICLCandidate>> simTICLCandidatesToken,
113  edm::EDGetTokenT<std::vector<reco::Track>> recoTracksToken,
114  edm::EDGetTokenT<std::vector<ticl::Trackster>> trackstersToken,
118  bool isTICLv5);
120 
122 
124 
126  const Histograms& histograms,
127  edm::Handle<ticl::TracksterCollection> simTrackstersCP_h) const;
128 
129 private:
137  bool isTICLv5_ = false;
138 };
139 
140 #endif
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_phi_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_chg_pt_candidate_pdgId
edm::EDGetTokenT< std::vector< TICLCandidate > > simTICLCandidatesToken_
std::vector< dqm::reco::MonitorElement * > h_den_fake_neut_eta_candidate
std::vector< dqm::reco::MonitorElement * > h_den_neut_pt_candidate
std::vector< dqm::reco::MonitorElement * > h_den_neut_energy_candidate
std::vector< dqm::reco::MonitorElement * > h_num_neut_pt_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_pt_candidate_track
std::vector< dqm::reco::MonitorElement * > h_num_chg_pt_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_pt_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_neut_candidate_charge
dqm::reco::MonitorElement * h_candidate_raw_energy
dqm::reco::MonitorElement * h_candidate_pT
std::vector< dqm::reco::MonitorElement * > h_neut_candidate_partType
std::vector< dqm::reco::MonitorElement * > h_num_chg_energy_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_neut_eta_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_phi_candidate_track
dqm::legacy::DQMStore DQMStore
edm::EDGetTokenT< std::vector< reco::Track > > recoTracksToken_
std::vector< dqm::reco::MonitorElement * > h_num_chg_phi_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_pt_candidate_energy
edm::EDGetTokenT< std::vector< TICLCandidate > > TICLCandidatesToken_
dqm::reco::MonitorElement * h_candidate_partType
dqm::legacy::MonitorElement MonitorElement
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_energy_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_energy_candidate_energy
edm::EDGetTokenT< ticl::RecoToSimCollectionSimTracksters > associatorMapRtSPUToken_
edm::EDGetTokenT< ticl::RecoToSimCollectionSimTracksters > associatorMapRtSToken_
std::vector< dqm::reco::MonitorElement * > h_den_fake_neut_pt_candidate
dqm::reco::MonitorElement * h_candidate_regressed_energy
std::vector< dqm::reco::MonitorElement * > h_num_chg_eta_candidate_track
std::vector< dqm::reco::MonitorElement * > h_chg_candidate_partType
std::vector< dqm::reco::MonitorElement * > h_neut_tracksters_in_candidate
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_energy_candidate_track
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_phi_candidate_energy
dqm::reco::MonitorElement * h_candidate_charge
std::vector< dqm::reco::MonitorElement * > h_den_fake_neut_energy_candidate
edm::EDGetTokenT< ticl::SimToRecoCollectionSimTracksters > associatorMapStRToken_
dqm::reco::MonitorElement * h_tracksters_in_candidate
std::vector< dqm::reco::MonitorElement * > h_num_chg_eta_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_pt_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_energy_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_neut_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_energy_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_eta_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_neut_candidate_regressed_energy
std::vector< dqm::reco::MonitorElement * > h_den_fake_chg_pt_candidate
std::vector< dqm::reco::MonitorElement * > h_num_chg_pt_candidate_track
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_eta_candidate_track
std::vector< dqm::reco::MonitorElement * > h_num_neut_phi_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_chg_energy_candidate_pdgId
dqm::reco::MonitorElement * h_candidate_pdgId
edm::EDGetTokenT< std::vector< ticl::Trackster > > trackstersToken_
std::vector< dqm::reco::MonitorElement * > h_num_neut_pt_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_chg_energy_candidate_track
std::vector< dqm::reco::MonitorElement * > h_den_fake_chg_energy_candidate
void bookCandidatesHistos(DQMStore::IBooker &ibook, Histograms &histograms, std::string baseDir) const
std::vector< dqm::reco::MonitorElement * > h_den_chg_eta_candidate
std::vector< dqm::reco::MonitorElement * > h_den_chg_energy_candidate
std::vector< dqm::reco::MonitorElement * > h_num_neut_phi_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_den_neut_phi_candidate
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_phi_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_chg_phi_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_chg_candidate_charge
std::vector< dqm::reco::MonitorElement * > h_den_fake_chg_eta_candidate
std::vector< dqm::reco::MonitorElement * > h_den_chg_pt_candidate
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_eta_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_den_chg_phi_candidate
std::vector< dqm::reco::MonitorElement * > h_num_neut_energy_candidate_energy
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_eta_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_neut_energy_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_chg_tracksters_in_candidate
std::vector< dqm::reco::MonitorElement * > h_num_chg_phi_candidate_track
std::vector< dqm::reco::MonitorElement * > h_chg_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_chg_eta_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_neut_eta_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_den_neut_eta_candidate
std::vector< dqm::reco::MonitorElement * > h_den_fake_chg_phi_candidate
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_pt_candidate_energy
void fillCandidateHistos(const edm::Event &event, const Histograms &histograms, edm::Handle< ticl::TracksterCollection > simTrackstersCP_h) const
std::vector< dqm::reco::MonitorElement * > h_num_fake_neut_phi_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_num_fake_chg_eta_candidate_pdgId
std::vector< dqm::reco::MonitorElement * > h_chg_candidate_regressed_energy
Definition: event.py:1
std::vector< dqm::reco::MonitorElement * > h_den_fake_neut_phi_candidate