CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/CaloOnlineTools/EcalTools/plugins/EcalPulseShapeGrapher.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    EcalPulseShapeGrapher
00004 // Class:      EcalPulseShapeGrapher
00005 // 
00013 //
00014 // Original Author:  Seth Cooper
00015 //         Created:  Tue Feb  5 11:35:45 CST 2008
00016 // $Id: EcalPulseShapeGrapher.h,v 1.2 2010/01/04 15:07:40 ferriff Exp $
00017 //
00018 //
00019 
00020 // system include files
00021 #include <memory>
00022 
00023 // user include files
00024 #include "FWCore/Framework/interface/Frameworkfwd.h"
00025 #include "FWCore/Framework/interface/EDAnalyzer.h"
00026 
00027 #include "FWCore/Framework/interface/Event.h"
00028 #include "FWCore/Framework/interface/MakerMacros.h"
00029 
00030 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00031 #include "TFile.h"
00032 #include "TGraph.h"
00033 #include "TH2F.h"
00034 #include "TProfile.h"
00035 #include "TH1F.h"
00036 #include <vector>
00037 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
00038 #include "DataFormats/EcalDetId/interface/EBDetId.h"
00039 #include "DataFormats/EcalDigi/interface/EcalDigiCollections.h"
00040 #include "CaloOnlineTools/EcalTools/interface/EcalFedMap.h"
00041 #include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h"
00042 
00043 //
00044 // class decleration
00045 //
00046 
00047 class EcalPulseShapeGrapher : public edm::EDAnalyzer {
00048    public:
00049       explicit EcalPulseShapeGrapher(const edm::ParameterSet&);
00050       ~EcalPulseShapeGrapher();
00051 
00052 
00053    private:
00054       virtual void analyze(const edm::Event&, const edm::EventSetup&);
00055       virtual void endJob() ;
00056 
00057       std::string intToString(int);
00058 
00059       edm::InputTag EBUncalibratedRecHitCollection_;
00060       edm::InputTag EBDigis_;
00061       edm::InputTag EEUncalibratedRecHitCollection_;
00062       edm::InputTag EEDigis_;
00063 
00064       int abscissa[10];
00065       int ordinate[10];
00066       std::vector<int> listChannels_;
00067       std::map<int,TH1F*> ampHistMap_;
00068       std::map<int,TH2F*> pulseShapeHistMap_;
00069       std::map<int,TH1F*> firstSampleHistMap_;
00070       std::map<int,TH2F*> rawPulseShapeHistMap_;
00071       std::map<int,TH1F*> cutAmpHistMap_;
00072       
00073       int ampCut_;
00074       std::string rootFilename_;
00075 
00076       TFile* file_;
00077          
00078       EcalFedMap* fedMap_;
00079       // ----------member data ---------------------------
00080 };