00001 #ifndef RECOLOCALCALO_CALOTOWERSCREATOR_CALOTOWERSCREATOR_H 00002 #define RECOLOCALCALO_CALOTOWERSCREATOR_CALOTOWERSCREATOR_H 1 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "DataFormats/Common/interface/EDProduct.h" 00006 #include "FWCore/Framework/interface/Event.h" 00007 #include "DataFormats/Common/interface/Handle.h" 00008 00009 #include "FWCore/Framework/interface/EventSetup.h" 00010 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00011 00012 #include "Geometry/CaloTopology/interface/HcalTopology.h" 00013 00014 #include "RecoLocalCalo/CaloTowersCreator/interface/CaloTowersCreationAlgo.h" 00015 00016 00024 // Now we allow for the creation of towers from 00025 // rejected hists as well: requested by the MET group 00026 // for studies of the effect of noise clean up. 00027 00028 class CaloTowersCreator : public edm::EDProducer { 00029 public: 00030 explicit CaloTowersCreator(const edm::ParameterSet& ps); 00031 virtual ~CaloTowersCreator() { } 00032 virtual void produce(edm::Event& e, const edm::EventSetup& c); 00033 double EBEScale, EEEScale, HBEScale, HESEScale; 00034 double HEDEScale, HOEScale, HF1EScale, HF2EScale; 00035 00036 private: 00037 00038 static const std::vector<double>& getGridValues(); 00039 00040 CaloTowersCreationAlgo algo_; 00041 edm::InputTag hbheLabel_,hoLabel_,hfLabel_; 00042 std::vector<edm::InputTag> ecalLabels_; 00043 bool allowMissingInputs_; 00044 00045 00046 // more compact flags: all HCAL are combined 00047 00048 unsigned int theHcalAcceptSeverityLevel_; 00049 unsigned int theEcalAcceptSeverityLevel_; 00050 00051 // flag to use recovered hits 00052 bool theRecoveredHcalHitsAreUsed_; 00053 bool theRecoveredEcalHitsAreUsed_; 00054 00055 00056 // paramaters for creating towers from rejected hits 00057 00058 bool useRejectedHitsOnly_; 00059 unsigned int theHcalAcceptSeverityLevelForRejectedHit_; 00060 unsigned int theEcalAcceptSeverityLevelForRejectedHit_; 00061 bool useRejectedRecoveredHcalHits_; 00062 bool useRejectedRecoveredEcalHits_; 00063 00064 00065 }; 00066 00067 #endif