Go to the documentation of this file.00001 #ifndef LhcTrackAnalyzer_h
00002 #define LhcTrackAnalyzer_h
00003
00004
00005 #include "FWCore/Framework/interface/Frameworkfwd.h"
00006 #include "FWCore/Framework/interface/EDAnalyzer.h"
00007 #include "FWCore/Framework/interface/Event.h"
00008 #include "FWCore/Framework/interface/ESHandle.h"
00009 #include "FWCore/Framework/interface/EventSetup.h"
00010 #include "FWCore/Framework/interface/MakerMacros.h"
00011 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00012
00013 #include "TFile.h"
00014 #include "TH1D.h"
00015 #include "TH1I.h"
00016 #include "TH2D.h"
00017 #include "TTree.h"
00018
00019 #include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h"
00020
00021 #include "DataFormats/TrackCandidate/interface/TrackCandidate.h"
00022 #include "DataFormats/TrackCandidate/interface/TrackCandidateCollection.h"
00023 #include "DataFormats/TrackReco/interface/Track.h"
00024 #include "DataFormats/TrackReco/interface/TrackFwd.h"
00025 #include "DataFormats/TrackingRecHit/interface/TrackingRecHit.h"
00026 #include "DataFormats/DetId/interface/DetId.h"
00027 #include "DataFormats/SiStripDetId/interface/TIBDetId.h"
00028 #include "DataFormats/SiStripDetId/interface/TIDDetId.h"
00029 #include "DataFormats/SiStripDetId/interface/TOBDetId.h"
00030 #include "DataFormats/SiStripDetId/interface/TECDetId.h"
00031 #include "DataFormats/SiStripDetId/interface/StripSubdetector.h"
00032 #include "DataFormats/SiPixelDetId/interface/PixelSubdetector.h"
00033
00034
00035 #include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h"
00036 #include "DataFormats/SiStripDigi/interface/SiStripDigi.h"
00037 #include "DataFormats/SiStripCluster/interface/SiStripCluster.h"
00038
00039 #include "DataFormats/Common/interface/DetSetVector.h"
00040
00041 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
00042 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00043 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
00044 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
00045 #include "Geometry/CommonDetUnit/interface/GeomDetUnit.h"
00046
00047
00048
00049
00050 #include <iostream>
00051 #include <memory>
00052 #include <string>
00053 #include <sstream>
00054 #include <vector>
00055 #include <map>
00056
00057
00058
00059
00060
00061 class LhcTrackAnalyzer : public edm::EDAnalyzer {
00062
00063 public:
00064 explicit LhcTrackAnalyzer(const edm::ParameterSet&);
00065 ~LhcTrackAnalyzer();
00066
00067 private:
00068 virtual void beginJob() ;
00069 virtual void analyze(const edm::Event&, const edm::EventSetup&);
00070 virtual void endJob() ;
00071
00072
00073 edm::InputTag TrackCollectionTag_;
00074 edm::InputTag PVtxCollectionTag_;
00075 bool debug_;
00076
00077
00078 std::string filename_;
00079 TFile* rootFile_;
00080 TTree* rootTree_;
00081
00082
00083
00084 void SetVarToZero();
00085
00086 static const int nMaxtracks_ = 3000;
00087 int nTracks_;
00088 int run_;
00089 int event_;
00090 double pt_[nMaxtracks_];
00091 double eta_[nMaxtracks_];
00092 double phi_[nMaxtracks_];
00093 double chi2_[nMaxtracks_];
00094 double chi2ndof_[nMaxtracks_];
00095 int charge_[nMaxtracks_];
00096 double qoverp_[nMaxtracks_];
00097 double dz_[nMaxtracks_];
00098 double dxy_[nMaxtracks_];
00099 double xPCA_[nMaxtracks_];
00100 double yPCA_[nMaxtracks_];
00101 double zPCA_[nMaxtracks_];
00102 int trkAlgo_[nMaxtracks_];
00103 int trkQuality_[nMaxtracks_];
00104 int isHighPurity_[nMaxtracks_];
00105 int validhits_[nMaxtracks_][7];
00106 bool goodbx_;
00107 bool goodvtx_;
00108
00109 };
00110
00111 #endif