|
|
Go to the documentation of this file. 1 #ifndef MuonTrackValidator_h
2 #define MuonTrackValidator_h
28 tpset.getParameter<
double>(
"ptMax"),
29 tpset.getParameter<
double>(
"minRapidity"),
30 tpset.getParameter<
double>(
"maxRapidity"),
31 tpset.getParameter<
double>(
"tip"),
32 tpset.getParameter<
double>(
"lip"),
33 tpset.getParameter<
int>(
"minHit"),
34 tpset.getParameter<
bool>(
"signalOnly"),
35 tpset.getParameter<
bool>(
"intimeOnly"),
36 tpset.getParameter<
bool>(
"chargedOnly"),
37 tpset.getParameter<
bool>(
"stableOnly"),
38 tpset.getParameter<std::vector<int> >(
"pdgId"));
41 tpset.getParameter<
double>(
"minRapidity"),
42 tpset.getParameter<
double>(
"maxRapidity"),
43 tpset.getParameter<
double>(
"tip"),
44 tpset.getParameter<
double>(
"lip"),
45 tpset.getParameter<
int>(
"minHit"),
46 tpset.getParameter<
bool>(
"chargedOnly"),
47 tpset.getParameter<std::vector<int> >(
"pdgId"));
59 for (
unsigned int www = 0; www <
label.size(); www++) {
65 _simHitTpMapTag = mayConsume<SimHitTPAssociationProducer::SimHitTPAssociationList>(
85 edm::LogVerbatim(
"MuonTrackValidator") <<
"\n usetracker = TRUE : Tracker SimHits WILL be counted";
87 edm::LogVerbatim(
"MuonTrackValidator") <<
"\n usetracker = FALSE : Tracker SimHits WILL NOT be counted";
89 edm::LogVerbatim(
"MuonTrackValidator") <<
" usemuon = TRUE : Muon SimHits WILL be counted";
91 edm::LogVerbatim(
"MuonTrackValidator") <<
" usemuon = FALSE : Muon SimHits WILL NOT be counted" << std::endl;
94 for (
unsigned int www = 0; www <
label.size(); www++) {
99 if (recoTracksLabel ==
"generalTracks" || (recoTracksLabel.find(
"cutsRecoTracks") != std::string::npos) ||
100 recoTracksLabel ==
"ctfWithMaterialTracksP5LHCNavigation" || recoTracksLabel ==
"hltL3TkTracksFromL2" ||
101 (recoTracksLabel ==
"hltL3Muons" && recoTracksInstance ==
"L2Seeded")) {
104 <<
"\n*** WARNING : inconsistent input tracksTag = " <<
label[www] <<
"\n with usemuon == true"
105 <<
"\n ---> please change to usemuon == false ";
109 <<
"\n*** WARNING : inconsistent input tracksTag = " <<
label[www] <<
"\n with usetracker == false"
110 <<
"\n ---> please change to usetracker == true ";
115 else if (recoTracksLabel ==
"standAloneMuons" || recoTracksLabel ==
"standAloneSETMuons" ||
116 recoTracksLabel ==
"cosmicMuons" || recoTracksLabel ==
"hltL2Muons") {
119 <<
"\n*** WARNING : inconsistent input tracksTag = " <<
label[www] <<
"\n with usetracker == true"
120 <<
"\n ---> please change to usetracker == false ";
124 <<
"\n*** WARNING : inconsistent input tracksTag = " <<
label[www] <<
"\n with usemuon == false"
125 <<
"\n ---> please change to usemuon == true ";
edm::EDGetTokenT< TrackingParticleCollection > tp_fake_Token
std::vector< edm::InputTag > label
edm::EDGetTokenT< reco::RecoToSimCollection > recoToSimCollection_Token
edm::InputTag label_tp_effic
void bookHistograms(DQMEDAnalyzer::DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Method called at the end of the event loop.
~MuonTrackValidator() override
Destructor.
edm::EDGetTokenT< TrackingParticleCollection > tp_effic_Token
edm::EDGetTokenT< std::vector< PileupSummaryInfo > > pileupinfo_Token
edm::EDGetTokenT< SimHitTPAssociationProducer::SimHitTPAssociationList > _simHitTpMapTag
SingleObjectSelector< TrackingParticleCollection, ::TrackingParticleSelector > TrackingParticleSelector
edm::EDGetTokenT< reco::BeamSpot > bsSrc_Token
edm::InputTag associatormap
ObjectSelector< CosmicTrackingParticleSelector > CosmicTrackingParticleSelector
CosmicTrackingParticleSelector cosmictpSelector
std::vector< std::string > associators
MuonTrackValidator(const edm::ParameterSet &pset)
Constructor.
std::vector< edm::EDGetTokenT< edm::View< reco::Track > > > track_Collection_Token
edm::EDGetTokenT< reco::SimToRecoCollection > simToRecoCollection_Token
edm::InputTag label_pileupinfo
bool BiDirectional_RecoToSim_association
edm::InputTag label_tp_fake
TrackingParticleSelector tpSelector
void analyze(const edm::Event &, const edm::EventSetup &) override
Method called before the event loop.