CMS 3D CMS Logo

SeedProducer Class Reference

#include <RecoPixelVertexing/PixelLowPtUtilities/interface/SeedProducer.h>

Inheritance diagram for SeedProducer:

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

List of all members.

Public Member Functions

virtual void produce (edm::Event &ev, const edm::EventSetup &es)
 SeedProducer (const edm::ParameterSet &ps_)
 ~SeedProducer ()

Private Attributes

const edm::ParameterSet ps
std::vector< std::string > tripletList


Detailed Description

Definition at line 12 of file SeedProducer.h.


Constructor & Destructor Documentation

SeedProducer::SeedProducer ( const edm::ParameterSet ps_  )  [explicit]

Definition at line 15 of file SeedProducer.cc.

References edm::ParameterSet::getParameter(), ps, and tripletList.

00015                                                      :
00016 ps(ps_)
00017 {
00018   tripletList = ps.getParameter<vector<string> >("tripletList");
00019 
00020   edm::LogInfo("SeedProducer") << " constructor";
00021   produces<TrajectorySeedCollection>();
00022 }

SeedProducer::~SeedProducer (  ) 

Definition at line 25 of file SeedProducer.cc.

00026 {
00027   edm::LogInfo("SeedProducer") << " destructor";
00028 }


Member Function Documentation

void SeedProducer::produce ( edm::Event ev,
const edm::EventSetup es 
) [virtual]

Implements edm::EDProducer.

Definition at line 32 of file SeedProducer.cc.

References edm::Event::getByLabel(), label, LogTrace, TrajectorySeed::nHits(), edm::Handle< T >::product(), ps, edm::Event::put(), HLT_VtxMuL3::result, SeedGenerator::seed(), track, and tripletList.

00033 {
00034   SeedGenerator theSeedGenerator(es);
00035 
00036   std::auto_ptr<TrajectorySeedCollection> result(new TrajectorySeedCollection);
00037 
00038   for(vector<string>::const_iterator label = tripletList.begin();
00039                                      label!= tripletList.end(); label++)
00040   {
00041     LogTrace("MinBiasTracking")
00042       << " [PixelSeeder] " << *label;
00043 
00044     edm::Handle<reco::TrackCollection> recCollection;
00045     ev.getByLabel(*label,recCollection);
00046     const reco::TrackCollection* recTracks = recCollection.product();
00047   
00048     for(reco::TrackCollection::const_iterator track = recTracks->begin();
00049                                               track!= recTracks->end();
00050                                               track++)
00051     {
00052       LogTrace("MinBiasTracking")
00053         << "  [PixelSeeder] track #" << track - recTracks->begin();
00054 
00055       TrajectorySeed theSeed = theSeedGenerator.seed(*track,es,ps);
00056   
00057       if(theSeed.nHits() >= 2)
00058         result->push_back(theSeed);
00059     } 
00060   }
00061 
00062   LogTrace("MinBiasTracking")
00063     << " [PixelSeeder] number of seeds : " << result->size();
00064 
00065   // Put result back to the event
00066   ev.put(result);
00067 }


Member Data Documentation

const edm::ParameterSet SeedProducer::ps [private]

Definition at line 21 of file SeedProducer.h.

Referenced by produce(), and SeedProducer().

std::vector<std::string> SeedProducer::tripletList [private]

Definition at line 19 of file SeedProducer.h.

Referenced by produce(), and SeedProducer().


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