CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackEfficiencyMonitor.h
Go to the documentation of this file.
1 #ifndef TrackEfficiencyMonitor_H
2 #define TrackEfficiencyMonitor_H
3 // -*- C++ -*-
4 //
5 // Package: TrackEfficiencyMonitor
6 // Class: TrackEfficiencyMonitor
7 //
11 // Original Author: Jeremy Andrea
12 // Insertion in DQM: Anne-Catherine Le Bihan
13 // Created: Thu 28 22:45:30 CEST 2008
14 // $Id: TrackEfficiencyMonitor.h,v 1.2 2009/11/05 17:07:51 boudoul Exp $
15 
16 #include <memory>
17 #include <fstream>
25 
30 
31 
32 
33 
34 
35 
36 namespace reco{class TransientTrack;}
37 
38 class DQMStore;
39 
41  public:
42  typedef reco::Track Track;
46  virtual void beginJob(void);
47  virtual void endJob(void);
48  virtual void analyze(const edm::Event&, const edm::EventSetup&);
49 
51  std::pair<TrajectoryStateOnSurface, const DetLayer*> findNextLayer( TrajectoryStateOnSurface startTSOS, std::vector< const DetLayer*> trackCompatibleLayers , bool isUpMuon );
55  bool trackerAcceptance( TrajectoryStateOnSurface theTSOS, double theRadius, double theMaxZ );
57 
58 
59 
60  private:
61 
62  // ----------member data ---------------------------
63 
64 
65  std::string histname; //for naming the histograms
66 
69 
70  double theRadius_;
71  double theMaxZ_;
73  bool trackEfficiency_;//1 if one wants to measure the tracking efficiency
74  //0 if one wants to measure the muon reco efficiency
75 
78 
82 
90 
98 
103 
106 
113 
115 
116 };
117 #endif
int compatibleLayers(TrajectoryStateOnSurface theTSOS)
edm::ESHandle< MagneticField > bField
std::pair< TrajectoryStateOnSurface, const DetLayer * > findNextLayer(TrajectoryStateOnSurface startTSOS, std::vector< const DetLayer * > trackCompatibleLayers, bool isUpMuon)
edm::ESHandle< GeometricSearchTracker > theTracker
edm::ESHandle< GeometricSearchTracker > theGeometricSearchTracker
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:10
reco::TrackCollection TrackCollection
MonitorElement * muonCompatibleLayers
edm::ESHandle< MeasurementTracker > measurementTrackerHandle
virtual void analyze(const edm::Event &, const edm::EventSetup &)
MuonServiceProxy * theMuonServiceProxy
edm::ESHandle< Propagator > thePropagatorCyl
edm::ESHandle< Propagator > thePropagator
edm::ESHandle< TransientTrackBuilder > theTTrackBuilder
void testTrackerTracks(edm::Handle< TrackCollection > tkTracks, edm::Handle< TrackCollection > staTracks)
const DirectTrackerNavigation * theNavigation
bool trackerAcceptance(TrajectoryStateOnSurface theTSOS, double theRadius, double theMaxZ)
TrackEfficiencyMonitor(const edm::ParameterSet &)
SemiCylinder checkSemiCylinder(const Track &)
MonitorElement * trackCompatibleLayers
void testSTATracks(edm::Handle< TrackCollection > tkTracks, edm::Handle< TrackCollection > staTracks)