CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackingMonitor.h
Go to the documentation of this file.
1 #ifndef TrackingMonitor_H
2 #define TrackingMonitor_H
3 // -*- C++ -*-
4 //
5 // Package: TrackingMonitor
6 // Class: TrackingMonitor
7 //
11 // Original Author: Suchandra Dutta, Giorgia Mila
12 // Created: Thu 28 22:45:30 CEST 2008
13 
14 #include <memory>
15 #include <fstream>
27 
30 
32 
35 
36 
37 class DQMStore;
38 class TrackAnalyzer;
40 class VertexMonitor;
41 class GetLumi;
42 class TProfile;
44 
46 {
47  public:
48  explicit TrackingMonitor(const edm::ParameterSet&);
50  virtual void beginJob(void);
51  virtual void endJob(void);
52 
53  virtual void setMaxMinBin(std::vector<double> & ,std::vector<double> & ,std::vector<int> & ,double, double, int, double, double, int);
54  virtual void setNclus(const edm::Event&, std::vector<int> & );
55 
56  virtual void beginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& eSetup);
57  virtual void analyze(const edm::Event&, const edm::EventSetup&);
58  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
59  virtual void endRun(const edm::Run&, const edm::EventSetup&);
60 
61  private:
62  void doProfileX(TH2 * th2, MonitorElement* me);
63  void doProfileX(MonitorElement * th2m, MonitorElement* me);
64 
65 
66  // ----------member data ---------------------------
67 
68  std::string histname; //for naming the histograms according to algorithm used
69 
71 
73 
74  // the track analyzer
79 
81 
85 
90 
93 
94 
97  std::vector<VertexMonitor*> theVertexMonitor;
99 
100  // Tracks
104 
105  // Good Tracks
107 
108  // Track Seeds
111  std::vector<MonitorElement *> SeedsVsClusters;
112  std::vector<std::string> ClusterLabels;
113 
114 
115  // Track Candidates
117 
118  // Cluster Properties
119  std::vector<MonitorElement*> NumberOfTrkVsClusters;
123 
124  // Monitoring vs LS
128 
129  // Monitoring PU
132 
133  // add in order to deal with LS transitions
135 
138 
152  // ADD by Mia in order to have GoodTrack plots only for collision
157 
159 };
160 
161 #endif //define TrackingMonitor_H
edm::EDGetTokenT< edm::View< TrajectorySeed > > seedToken_
std::vector< MonitorElement * > NumberOfTrkVsClusters
MonitorElement * FractionOfGoodTracks
DQMStore * dqmStore_
virtual void setMaxMinBin(std::vector< double > &, std::vector< double > &, std::vector< int > &, double, double, int, double, double, int)
TrackAnalyzer * theTrackAnalyzer
edm::ParameterSet conf_
virtual void setNclus(const edm::Event &, std::vector< int > &)
edm::EDGetTokenT< reco::TrackCollection > allTrackToken_
GetLumi * theLumiDetails_
tuple lumi
Definition: fjr2json.py:35
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
edm::InputTag pvSrc_
virtual void analyze(const edm::Event &, const edm::EventSetup &)
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
MonitorElement * NumberOfMeanRecHitsPerTrack
MonitorElement * NumberOfTracksVsGoodPVtx
MonitorElement * GoodTracksFractionVsLS
std::string Quality_
edm::InputTag bsSrc_
MonitorElement * NumberOfSeeds
virtual void endJob(void)
MonitorElement * NumberOfTracksVsLS
bool runTrackBuildingAnalyzerForSeed
std::vector< MonitorElement * > SeedsVsClusters
MonitorElement * NumberOfRecHitsPerTrackVsLS
virtual void endRun(const edm::Run &, const edm::EventSetup &)
std::string histname
std::vector< VertexMonitor * > theVertexMonitor
MonitorElement * NumberOfTrkVsPixelClus
MonitorElement * NumberOfTracksVsBXlumi
edm::InputTag stripClusterInputTag_
bool doGeneralPropertiesPlots_
TrackBuildingAnalyzer * theTrackBuildingAnalyzer
std::string AlgoName_
edm::EDGetTokenT< reco::TrackCollection > trackToken_
edm::EDGetTokenT< TrackCandidateCollection > trackCandidateToken_
MonitorElement * NumberOfMeanLayersPerTrack
void doProfileX(TH2 *th2, MonitorElement *me)
GenericTriggerEventFlag * genTriggerEventFlag_
edm::InputTag pixelClusterInputTag_
MonitorElement * NumberOfSeeds_lumiFlag
TrackingMonitor(const edm::ParameterSet &)
edm::ESHandle< TransientTrackingRecHitBuilder > theTTRHBuilder
virtual void beginJob(void)
MonitorElement * NumberOfTrackCandidates
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > stripClustersToken_
MonitorElement * NumberOfTrkVsStripClus
MonitorElement * NumberOfTracks_lumiFlag
MonitorElement * NumberOfTrkVsClus
edm::EDGetTokenT< reco::BeamSpot > bsSrcToken_
MonitorElement * NumberOfTracks
edm::EDGetTokenT< reco::VertexCollection > pvSrcToken_
Definition: Run.h:41
virtual void beginLuminosityBlock(const edm::LuminosityBlock &lumi, const edm::EventSetup &eSetup)
std::vector< std::string > ClusterLabels
std::string builderName