ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/src/TrackAnalyzer.cc
Revision: 1.3
Committed: Thu Apr 16 12:36:22 2009 UTC (16 years ago) by lethuill
Content type: text/plain
Branch: MAIN
CVS Tags: JeSuisBeaucoupPlusGrosQunReco_2_2_7_01, RecoPhoton_2_2_7_02, pat_2_2_7_01, RecoPhoton_2_2_7_01
Changes since 1.2: +2 -2 lines
Log Message:
Replace number of valid pixel and tracker hits with number of pixel and strip layers with measurements

File Contents

# User Rev Content
1 lethuill 1.2 #include "../interface/TrackAnalyzer.h"
2 lethuill 1.1
3     using namespace std;
4     using namespace reco;
5     using namespace edm;
6    
7     TrackAnalyzer::TrackAnalyzer(const edm::ParameterSet& producersNames):verbosity_(0)
8     {
9     trackProducer_ = producersNames.getParameter<edm::InputTag>("trackProducer");
10     }
11    
12     TrackAnalyzer::TrackAnalyzer(const edm::ParameterSet& producersNames, int verbosity):verbosity_(verbosity)
13     {
14     trackProducer_ = producersNames.getParameter<edm::InputTag>("trackProducer");
15     }
16    
17     TrackAnalyzer::~TrackAnalyzer()
18     {
19     }
20    
21     void TrackAnalyzer::Process(const edm::Event& iEvent, TClonesArray* rootTracks)
22     {
23    
24     edm::Handle<reco::TrackCollection> recoTracks;
25     iEvent.getByLabel(trackProducer_, recoTracks);
26     if(verbosity_>1) std::cout << " Number of tracks = " << recoTracks->size() << " Label: " << trackProducer_.label() << " Instance: " << trackProducer_.instance() << std::endl;
27    
28     for (unsigned int j=0; j<recoTracks->size(); j++)
29     {
30     const reco::HitPattern& hit = (*recoTracks)[j].hitPattern();
31    
32     TRootTrack localTrack(
33     (*recoTracks)[j].px()
34     ,(*recoTracks)[j].py()
35     ,(*recoTracks)[j].pz()
36     ,(*recoTracks)[j].p()
37     ,(*recoTracks)[j].vx()
38     ,(*recoTracks)[j].vy()
39     ,(*recoTracks)[j].vz()
40     ,0
41     ,(*recoTracks)[j].charge()
42 lethuill 1.3 ,hit.pixelLayersWithMeasurement()
43     ,hit.stripLayersWithMeasurement()
44 lethuill 1.1 ,(*recoTracks)[j].chi2()
45     ,(*recoTracks)[j].d0()
46     ,(*recoTracks)[j].d0Error()
47     ,(*recoTracks)[j].dz()
48     ,(*recoTracks)[j].dzError()
49     );
50    
51     new( (*rootTracks)[j] ) TRootTrack(localTrack);
52     if(verbosity_>2) std::cout << " ["<< setw(3) << j << "] " << localTrack << std::endl;
53     }
54    
55     }