CMS 3D CMS Logo

HybridClusterProducer.h

Go to the documentation of this file.
00001 #ifndef RecoEcal_EgammaClusterProducers_HybridClusterProducer_h_
00002 #define RecoEcal_EgammaClusterProducers_HybridClusterProducer_h_
00003 
00004 #include <memory>
00005 
00006 #include "FWCore/Framework/interface/Frameworkfwd.h"
00007 #include "FWCore/Framework/interface/EDProducer.h"
00008 #include "FWCore/Framework/interface/Event.h"
00009 #include "FWCore/Framework/interface/EventSetup.h"
00010 
00011 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00012 
00013 #include "RecoEcal/EgammaClusterAlgos/interface/HybridClusterAlgo.h"
00014 #include "RecoEcal/EgammaCoreTools/interface/ClusterShapeAlgo.h"
00015 #include "RecoEcal/EgammaCoreTools/interface/PositionCalc.h"
00016 
00017 //
00018 
00019 
00020 class HybridClusterProducer : public edm::EDProducer 
00021 {
00022   
00023   public:
00024 
00025       HybridClusterProducer(const edm::ParameterSet& ps);
00026 
00027       ~HybridClusterProducer();
00028 
00029       virtual void produce(edm::Event&, const edm::EventSetup&);
00030 
00031    private:
00032       int nMaxPrintout_; // max # of printouts
00033       int nEvt_;         // internal counter of events
00034  
00035       std::string basicclusterCollection_;
00036       std::string superclusterCollection_;
00037       std::string hitproducer_;
00038       std::string hitcollection_;
00039       std::string clustershapecollection_;
00040       std::string clusterShapeAssociation_; //association map
00041 
00042       HybridClusterAlgo::DebugLevel debugL;
00043 
00044       HybridClusterAlgo * hybrid_p; // clustering algorithm
00045       PositionCalc posCalculator_; // position calculation algorithm
00046       ClusterShapeAlgo shapeAlgo_; // cluster shape algorithm
00047 
00048       bool counterExceeded() const { return ((nEvt_ > nMaxPrintout_) || (nMaxPrintout_ < 0));}
00049 };
00050 
00051 
00052 #endif
00053 
00054 

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