CMS 3D CMS Logo

GlobalSeedProducer Class Reference

Description: EDProducer of ElectronPixelSeed objects. More...

#include <RecoEgamma/EgammaElectronProducers/plugins/GlobalSeedProducer.h>

Inheritance diagram for GlobalSeedProducer:

edm::EDProducer edm::ProducerBase edm::ProductRegistryHelper

List of all members.

Public Member Functions

virtual void beginJob (edm::EventSetup const &iSetup)
 GlobalSeedProducer (const edm::ParameterSet &conf)
virtual void produce (edm::Event &e, const edm::EventSetup &c)
virtual ~GlobalSeedProducer ()

Private Attributes

const edm::ParameterSet conf_
SubSeedGeneratormatcher_
edm::InputTag superClusters_ [2]


Detailed Description

Description: EDProducer of ElectronPixelSeed objects.

Implementation: <Notes on="" implementation>="">

Definition at line 28 of file GlobalSeedProducer.h.


Constructor & Destructor Documentation

GlobalSeedProducer::GlobalSeedProducer ( const edm::ParameterSet conf  )  [explicit]

Definition at line 42 of file GlobalSeedProducer.cc.

References edm::ParameterSet::getParameter(), matcher_, and superClusters_.

00042                                                                      : conf_(iConfig)
00043 {
00044 
00045   //  edm::ParameterSet pset = iConfig.getParameter<edm::ParameterSet>("SeedConfiguration");
00046   //  SCEtCut_=pset.getParameter<double>("SCEtCut");
00047   //  maxHOverE_=pset.getParameter<double>("maxHOverE");
00048 
00049   matcher_= new SubSeedGenerator(iConfig);
00050  
00051   //  get collections from config'
00052   superClusters_[0]=iConfig.getParameter<edm::InputTag>("barrelSuperClusters");
00053   superClusters_[1]=iConfig.getParameter<edm::InputTag>("endcapSuperClusters");
00054 
00055   //register your products
00056   produces<ElectronPixelSeedCollection>();
00057 }

GlobalSeedProducer::~GlobalSeedProducer (  )  [virtual]

Definition at line 60 of file GlobalSeedProducer.cc.

References matcher_.

00061 {
00062    // do anything here that needs to be done at desctruction time
00063    // (e.g. close files, deallocate resources etc.)
00064       delete matcher_;
00065 }


Member Function Documentation

void GlobalSeedProducer::beginJob ( edm::EventSetup const &  iSetup  )  [virtual]

Reimplemented from edm::EDProducer.

Definition at line 67 of file GlobalSeedProducer.cc.

00068 {
00069 }

void GlobalSeedProducer::produce ( edm::Event e,
const edm::EventSetup c 
) [virtual]

Implements edm::EDProducer.

Definition at line 71 of file GlobalSeedProducer.cc.

References edm::Event::getByLabel(), i, LogDebug, matcher_, edm::Event::put(), SubSeedGenerator::run(), and superClusters_.

00072 {
00073   LogDebug("GlobalSeedProducer");
00074   LogDebug("GlobalSeedProducer")  <<"[GlobalSeedProducer::produce] entering " ;
00075 
00076   ElectronPixelSeedCollection *seeds= new ElectronPixelSeedCollection;
00077   std::auto_ptr<ElectronPixelSeedCollection> pSeeds;
00078 
00079   // loop over barrel + endcap
00080 
00081   for (unsigned int i=0; i<2; i++) {  
00082    // invoke algorithm
00083     edm::Handle<SuperClusterCollection> clusters;
00084     if (e.getByLabel(superClusters_[i],clusters))     matcher_->run(e,iSetup,clusters,*seeds);
00085   }
00086 
00087   // store the accumulated result
00088   pSeeds=  std::auto_ptr<ElectronPixelSeedCollection>(seeds);
00089   for (ElectronPixelSeedCollection::iterator is=pSeeds->begin(); is!=pSeeds->end();is++) {
00090     LogDebug("ElectronPixelSeedProducer")  << "new seed with " << (*is).nHits() << " hits, charge " << (*is).getCharge() <<
00091         " and cluster energy " << (*is).superCluster()->energy() << " PID "<<(*is).superCluster().id();
00092   }
00093   e.put(pSeeds);
00094   }


Member Data Documentation

const edm::ParameterSet GlobalSeedProducer::conf_ [private]

Definition at line 44 of file GlobalSeedProducer.h.

SubSeedGenerator* GlobalSeedProducer::matcher_ [private]

Definition at line 45 of file GlobalSeedProducer.h.

Referenced by GlobalSeedProducer(), produce(), and ~GlobalSeedProducer().

edm::InputTag GlobalSeedProducer::superClusters_[2] [private]

Definition at line 42 of file GlobalSeedProducer.h.

Referenced by GlobalSeedProducer(), and produce().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:21:49 2009 for CMSSW by  doxygen 1.5.4