ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitEdm/Producers/src/HitDropperESProducer.cc
Revision: 1.3
Committed: Fri Mar 20 18:01:48 2009 UTC (16 years, 1 month ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_009c, Mit_009b, Mit_009a, Mit_009, Mit_008
Changes since 1.2: +15 -6 lines
Log Message:
Cleanup

File Contents

# User Rev Content
1 loizides 1.3 // $Id: HitDropperESProducer.cc,v 1.2 2008/10/16 16:44:52 bendavid Exp $
2 bendavid 1.1
3     #include "MitEdm/Producers/interface/HitDropperESProducer.h"
4     #include "Geometry/Records/interface/GlobalTrackingGeometryRecord.h"
5     #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
6     #include "boost/mpl/vector.hpp"
7     #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h"
8 bendavid 1.2 #include "RecoTracker/TkDetLayers/interface/GeometricSearchTracker.h"
9     #include "RecoTracker/Record/interface/TrackerRecoGeometryRecord.h"
10     #include "TrackingTools/Records/interface/TransientTrackRecord.h"
11    
12 bendavid 1.1
13     #include "FWCore/Framework/interface/ESHandle.h"
14    
15     #include <string>
16     #include <memory>
17    
18     using namespace mitedm;
19     using namespace edm;
20    
21 loizides 1.3 //--------------------------------------------------------------------------------------------------
22     HitDropperESProducer::HitDropperESProducer(const edm::ParameterSet &p)
23 bendavid 1.1 {
24 loizides 1.3 // Constructor.
25    
26 bendavid 1.1 std::string myname = p.getParameter<std::string>("ComponentName");
27     pset_ = p;
28     setWhatProduced(this,myname);
29     }
30    
31 loizides 1.3 //--------------------------------------------------------------------------------------------------
32     HitDropperESProducer::~HitDropperESProducer()
33     {
34     // Destructor.
35     }
36 bendavid 1.1
37 loizides 1.3 //--------------------------------------------------------------------------------------------------
38 bendavid 1.1 boost::shared_ptr<HitDropper>
39 loizides 1.3 HitDropperESProducer::produce(const HitDropperRecord &iRecord)
40     {
41     // Create hit dropper object.
42 bendavid 1.1
43     //get tracker geometry
44     edm::ESHandle<TrackerGeometry> hTracker;
45     iRecord.getRecord<TrackerDigiGeometryRecord>().get(hTracker);
46     const TrackerGeometry *trackerGeo = hTracker.product();
47    
48     //get transient track builder
49     edm::ESHandle<TransientTrackBuilder> hBuilder;
50     iRecord.getRecord<TransientTrackRecord>().get("TransientTrackBuilder",hBuilder);
51     const TransientTrackBuilder *builder = hBuilder.product();
52 bendavid 1.2
53     //get tracker geometry navigator
54     edm::ESHandle<GeometricSearchTracker> hTrackerSearch;
55     iRecord.getRecord<TrackerRecoGeometryRecord>().get(hTrackerSearch);
56     const GeometricSearchTracker *trackerSearch = hTrackerSearch.product();
57    
58 bendavid 1.1 _dropper = boost::shared_ptr<HitDropper>(
59 loizides 1.3 new HitDropper(trackerGeo, builder, trackerSearch));
60 bendavid 1.1
61     return _dropper;
62     }