00001 #ifndef EnergyLossProducer_H 00002 #define EnergyLossProducer_H 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00006 00007 00008 00009 namespace edm { class Run; class Event; class EventSetup; } 00010 class TrackerGeometry; 00011 00012 class TFile; 00013 class TH2F; 00014 00015 class EnergyLossProducer : public edm::EDProducer 00016 { 00017 public: 00018 explicit EnergyLossProducer(const edm::ParameterSet& ps); 00019 ~EnergyLossProducer(); 00020 virtual void produce(edm::Event& ev, const edm::EventSetup& es); 00021 00022 private: 00023 void beginRun(edm::Run & run, const edm::EventSetup& es); 00024 void endJob(); 00025 00026 std::string trackProducer; 00027 double pixelToStripMultiplier, pixelToStripExponent; 00028 const TrackerGeometry * theTracker; 00029 00030 TFile * resultFile; 00031 TH2F * hnor; 00032 }; 00033 #endif 00034