CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/RecoTracker/FinalTrackSelectors/interface/SimpleTrackListMerger.h

Go to the documentation of this file.
00001 #ifndef SimpleTrackListMerger_h
00002 #define SimpleTrackListMerger_h
00003 
00004 //
00005 // Package:         RecoTracker/FinalTrackSelectors
00006 // Class:           SimpleTrackListMerger
00007 // 
00008 // Description:     Hit Dumper
00009 //
00010 // Original Author: Steve Wagner, stevew@pizero.colorado.edu
00011 // Created:         Sat Jan 14 22:00:00 UTC 2006
00012 //
00013 // $Author: muzaffar $
00014 // $Date: 2013/02/27 13:28:30 $
00015 // $Revision: 1.8 $
00016 //
00017 
00018 #include "FWCore/Framework/interface/EDProducer.h"
00019 #include "FWCore/Framework/interface/Event.h"
00020 #include "DataFormats/Common/interface/Handle.h"
00021 #include "FWCore/Framework/interface/EventSetup.h"
00022 
00023 
00024 #include "DataFormats/TrackReco/interface/TrackFwd.h"
00025 #include "DataFormats/TrackReco/interface/Track.h"
00026 #include "DataFormats/TrackReco/interface/TrackBase.h"
00027 #include "DataFormats/TrackingRecHit/interface/TrackingRecHit.h"
00028 #include "DataFormats/TrackReco/interface/TrackExtra.h"
00029 #include "TrackingTools/PatternTools/interface/Trajectory.h"
00030 #include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h"
00031 #include "DataFormats/TrajectorySeed/interface/TrajectorySeedCollection.h"
00032 
00033 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00034 
00035 namespace cms
00036 {
00037   class SimpleTrackListMerger : public edm::EDProducer
00038   {
00039   public:
00040 
00041     explicit SimpleTrackListMerger(const edm::ParameterSet& conf);
00042 
00043     virtual ~SimpleTrackListMerger();
00044 
00045     virtual void produce(edm::Event& e, const edm::EventSetup& c) override;
00046 
00047   private:
00048     edm::ParameterSet conf_;
00049 
00050     std::auto_ptr<reco::TrackCollection> outputTrks;
00051     std::auto_ptr<reco::TrackExtraCollection> outputTrkExtras;
00052     std::auto_ptr< TrackingRecHitCollection>  outputTrkHits;
00053     std::auto_ptr< std::vector<Trajectory> > outputTrajs;
00054     std::auto_ptr< TrajTrackAssociationCollection >  outputTTAss;
00055     std::auto_ptr< TrajectorySeedCollection > outputSeeds;
00056 
00057     reco::TrackRefProd refTrks;
00058     reco::TrackExtraRefProd refTrkExtras;
00059     TrackingRecHitRefProd refTrkHits;
00060     edm::RefProd< std::vector<Trajectory> > refTrajs;
00061     std::vector<reco::TrackRef> trackRefs;
00062     edm::RefProd< TrajectorySeedCollection > refTrajSeeds;
00063     
00064     bool copyExtras_;
00065     bool makeReKeyedSeeds_;
00066   };
00067 }
00068 
00069 
00070 #endif