Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:02

0001 #ifndef RecoLocalMuon_CSCSegmentVisualise_H
0002 #define RecoLocalMuon_CSCSegmentVisualise_H
0003 /** class CSCSegmentVisualise
0004  *
0005  *  \author D. Fortin - UC Riverside
0006  *
0007  * Class to produce simple projects of rechits and segments to study
0008  * performance of segment reconstruction
0009  */
0010 
0011 #include "FWCore/Framework/interface/one/EDAnalyzer.h"
0012 #include "DataFormats/Common/interface/Handle.h"
0013 
0014 #include <Geometry/CSCGeometry/interface/CSCChamberSpecs.h>
0015 #include <Geometry/CSCGeometry/interface/CSCChamber.h>
0016 #include <Geometry/CSCGeometry/interface/CSCLayer.h>
0017 #include <Geometry/CSCGeometry/interface/CSCGeometry.h>
0018 #include <DataFormats/MuonDetId/interface/CSCDetId.h>
0019 #include <DataFormats/CSCRecHit/interface/CSCRecHit2D.h>
0020 #include <DataFormats/CSCRecHit/interface/CSCRecHit2DCollection.h>
0021 #include <DataFormats/CSCRecHit/interface/CSCRangeMapAccessor.h>
0022 #include <DataFormats/CSCRecHit/interface/CSCSegmentCollection.h>
0023 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h"
0024 
0025 #include <FWCore/Framework/interface/MakerMacros.h>
0026 #include <Geometry/Records/interface/MuonGeometryRecord.h>
0027 
0028 #include <vector>
0029 #include <string>
0030 
0031 #include "TFile.h"
0032 #include "TH1F.h"
0033 #include "TH2F.h"
0034 
0035 class CSCSegmentVisualise : public edm::one::EDAnalyzer<> {
0036 public:
0037   /// Constructor
0038   explicit CSCSegmentVisualise(const edm::ParameterSet &pset);
0039 
0040   /// Destructor
0041   virtual ~CSCSegmentVisualise();
0042 
0043   void analyze(const edm::Event &event, const edm::EventSetup &eventSetup);
0044 
0045 private:
0046   std::string filename;
0047   TH2F *hxvsz[100];
0048   TH2F *hyvsz[100];
0049   TH2F *hxvszE[100];
0050   TH2F *hyvszE[100];
0051   TH2F *hxvszSeg[100];
0052   TH2F *hyvszSeg[100];
0053   TH2F *hxvszSegP[100];
0054   TH2F *hyvszSegP[100];
0055 
0056   TFile *file;
0057 
0058   edm::ESGetToken<CSCGeometry, MuonGeometryRecord> geomToken_;
0059   edm::EDGetTokenT<edm::PSimHitContainer> simHitsToken_;
0060   edm::EDGetTokenT<CSCRecHit2DCollection> recHitsToken_;
0061   edm::EDGetTokenT<CSCSegmentCollection> segmentsToken_;
0062 
0063   int idxHisto;
0064   int minRechitChamber;
0065   int maxRechitChamber;
0066   //    double maxPhi, maxTheta;
0067   int ievt;
0068 };
0069 
0070 #endif