00001 // -*- C++ -*- 00002 // 00003 // Class: EcalTPCondAnalyzer 00004 // 00011 // 00012 // Original Author: Ursula Berthon 00013 // Created: Wed Oct 15 11:38:38 CEST 2008 00014 // $Id: EcalTPCondAnalyzer.h,v 1.1 2008/10/15 15:51:15 uberthon Exp $ 00015 // 00016 // 00017 00018 00019 // system include files 00020 #include "FWCore/ParameterSet/interface/InputTag.h" 00021 #include "FWCore/Framework/interface/EDAnalyzer.h" 00022 00023 #include "FWCore/Framework/interface/Event.h" 00024 #include "FWCore/Framework/interface/EventSetup.h" 00025 #include "FWCore/Framework/interface/MakerMacros.h" 00026 00027 #include "DataFormats/Common/interface/Handle.h" 00028 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00029 00030 #include "CondFormats/EcalObjects/interface/EcalTPGLinearizationConst.h" 00031 #include "CondFormats/EcalObjects/interface/EcalTPGPedestals.h" 00032 #include "CondFormats/EcalObjects/interface/EcalTPGSlidingWindow.h" 00033 #include "CondFormats/EcalObjects/interface/EcalTPGWeightIdMap.h" 00034 #include "CondFormats/EcalObjects/interface/EcalTPGWeightGroup.h" 00035 #include "CondFormats/EcalObjects/interface/EcalTPGFineGrainStripEE.h" 00036 #include "CondFormats/EcalObjects/interface/EcalTPGFineGrainEBGroup.h" 00037 #include "CondFormats/EcalObjects/interface/EcalTPGLutGroup.h" 00038 #include "CondFormats/EcalObjects/interface/EcalTPGLutIdMap.h" 00039 #include "CondFormats/EcalObjects/interface/EcalTPGFineGrainEBIdMap.h" 00040 #include "CondFormats/EcalObjects/interface/EcalTPGFineGrainTowerEE.h" 00041 #include "CondFormats/EcalObjects/interface/EcalTPGPhysicsConst.h" 00042 00043 class CaloSubdetectorGeometry ; 00044 00045 #include <vector> 00046 #include <string> 00047 00048 // 00049 // class declaration 00050 // 00051 00052 class EcalTPCondAnalyzer : public edm::EDAnalyzer { 00053 public: 00054 explicit EcalTPCondAnalyzer(const edm::ParameterSet&); 00055 ~EcalTPCondAnalyzer(); 00056 00057 00058 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00059 virtual void beginJob(edm::EventSetup const& setup); 00060 virtual void endJob(); 00061 00062 private: 00063 00064 unsigned long long getRecords(edm::EventSetup const& setup); 00065 unsigned long long cacheID_; 00066 00067 const CaloSubdetectorGeometry * theEndcapGeometry_ ; 00068 const CaloSubdetectorGeometry * theBarrelGeometry_ ; 00069 00070 void printComment() const; 00071 void printEcalTPGPhysicsConst(const EcalTPGPhysicsConst *) const; 00072 void printCRYSTAL(const EcalTPGPedestals * ecaltpPed, const EcalTPGLinearizationConst * ecaltpLin ) ; 00073 void printSTRIP(const EcalTPGSlidingWindow *ecaltpgSlidW,const EcalTPGWeightGroup *ecaltpgWeightGroup,const EcalTPGFineGrainStripEE * ecaltpgFgStripEE) const; 00074 void printWEIGHT(const EcalTPGWeightIdMap * ecaltpgWeightMap) const ; 00075 void printTOWEREB(const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup,const EcalTPGLutGroup *ecaltpgLutGroup) const; 00076 void printEcalTPGLutIdMap(const EcalTPGLutIdMap *ecaltpgLut) const; 00077 void printEcalTPGFineGrainEBIdMap(const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB) const ; 00078 void printTOWEREE(const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE,const EcalTPGLutGroup *ecaltpgLutGroup) const ; 00079 }; 00080