CMS 3D CMS Logo

ElectronPixelSeedAnalyzer.h

Go to the documentation of this file.
00001 #ifndef ElectronPixelSeedAnalyzer_h
00002 #define ElectronPixelSeedAnalyzer_h
00003   
00004 //
00005 // Package:         RecoEgamma/ElectronTrackSeed
00006 // Class:           ElectronPixelSeedAnalyzer
00007 // 
00008 
00009 //
00010 // Original Author:  Ursula Berthon, Claude Charlot
00011 //         Created:  Mon Mar 27 13:22:06 CEST 2006
00012 // $Id: ElectronPixelSeedAnalyzer.h,v 1.3 2008/10/06 14:53:20 charlot Exp $
00013 //
00014 //
00015   
00016   
00017 #include "FWCore/Framework/interface/EDAnalyzer.h"
00018 #include "FWCore/Framework/interface/Event.h"
00019 #include "DataFormats/Common/interface/Handle.h"
00020 #include "FWCore/Framework/interface/ESHandle.h"
00021 #include "FWCore/Framework/interface/EventSetup.h"
00022 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00023  
00024 #include "DataFormats/Common/interface/EDProduct.h"
00025  
00026 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00027 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
00028 
00029 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateTransform.h"
00030 
00031 class MagneticField;  
00032 class TFile;
00033 class TH1F;
00034 class TH1I;
00035 class TTree;
00036 
00037 class ElectronPixelSeedAnalyzer : public edm::EDAnalyzer
00038 {
00039  public:
00040   
00041   explicit ElectronPixelSeedAnalyzer(const edm::ParameterSet& conf);
00042   
00043   virtual ~ElectronPixelSeedAnalyzer();
00044   
00045   virtual void beginJob(edm::EventSetup const& iSetup);
00046   virtual void analyze(const edm::Event& e, const edm::EventSetup& c);
00047   
00048  private:
00049 
00050   TrajectoryStateTransform transformer_;
00051   edm::ESHandle<TrackerGeometry> pDD;
00052   edm::ESHandle<MagneticField> theMagField;
00053   TFile *histfile_;
00054   TTree *tree_;
00055   float mcEnergy[10], mcEta[10], mcPhi[10], mcPt[10], mcQ[10];
00056   float superclusterEnergy[10], superclusterEta[10], superclusterPhi[10], superclusterEt[10];
00057   float seedMomentum[10], seedEta[10], seedPhi[10], seedPt[10], seedQ[10];
00058   int seedSubdet1[10], seedSubdet2[10];
00059   int seedLayer1[10], seedLayer2[10];
00060   int seedSide1[10], seedSide2[10];
00061   float seedDphi1[10], seedDrz1[10], seedDphi2[10], seedDrz2[10];
00062   float seedPhi1[10], seedRz1[10], seedPhi2[10], seedRz2[10];
00063   TH1F *histeMC_;
00064   TH1F *histp_;
00065   TH1F *histeclu_;
00066   TH1F *histpt_;
00067   TH1F *histptMC_;
00068   TH1F *histetclu_;
00069   TH1F *histeffpt_;
00070   TH1F *histeta_;
00071   TH1F *histetaMC_;
00072   TH1F *histetaclu_;
00073   TH1F *histeffeta_;
00074   TH1F *histq_;
00075   TH1F *histeoverp_;
00076   TH1I *histnrseeds_;
00077   TH1I *histnbseeds_;
00078   TH1I *histnbclus_;
00079 
00080   edm::InputTag inputCollection_;
00081   std::vector<std::pair<const GeomDet*, TrajectoryStateOnSurface> >  mapTsos_;
00082   std::vector<std::pair<std::pair<const GeomDet*,GlobalPoint>,  TrajectoryStateOnSurface> >  mapTsos2_;
00083 
00084  };
00085   
00086 #endif
00087  
00088 
00089 

Generated on Tue Jun 9 17:43:31 2009 for CMSSW by  doxygen 1.5.4