CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackCandidateProducer.h
Go to the documentation of this file.
1 #ifndef FastSimulation_Tracking_TrackCandidateProducer_h
2 #define FastSimulation_Tracking_TrackCandidateProducer_h
3 
6 
8 
14 
15 class TrackerGeometry;
18 
19 namespace edm {
20  class ParameterSet;
21  class Event;
22  class EventSetup;
23 }
24 
25 namespace reco {
26  class Track;
27 }
28 
29 class TrackerRecHit;
30 class TrackingRecHit;
31 
32 #include <vector>
33 
35 {
36  public:
37 
39 
40  virtual ~TrackCandidateProducer();
41 
42  virtual void beginRun(edm::Run const& run, const edm::EventSetup & es) override;
43 
44  virtual void produce(edm::Event& e, const edm::EventSetup& es) override;
45 
46  private:
47 
48  int findId(const reco::Track& aTrack) const;
49 
50  void addSplitHits(const TrackerRecHit&, std::vector<TrackerRecHit>&);
52  bool sameLocalParameters(const TrackingRecHit* aH, const TrackingRecHit* bH) const;
53 
54  private:
55 
59 
60 
63  // edm::InputTag trackProducer;
64  std::vector<edm::InputTag> trackProducers;
65 
68 
70  bool splitHits;
73 
75  double estimatorCut_;
76 
77  // tokens
82  std::vector<edm::EDGetTokenT<reco::TrackCollection> > trackTokens;
83  std::vector<edm::EDGetTokenT<std::vector<Trajectory> > > trajectoryTokens;
84  std::vector<edm::EDGetTokenT<TrajTrackAssociationCollection> > assoMapTokens;
85 };
86 
87 #endif
std::vector< edm::EDGetTokenT< reco::TrackCollection > > trackTokens
edm::EDGetTokenT< edm::View< TrajectorySeed > > seedToken
edm::EDGetTokenT< edm::SimVertexContainer > simVertexToken
edm::EDGetTokenT< edm::SimTrackContainer > simTrackToken
TrackCandidateProducer(const edm::ParameterSet &conf)
int findId(const reco::Track &aTrack) const
std::vector< TrackCandidate > TrackCandidateCollection
const MagneticField * theMagField
virtual void produce(edm::Event &e, const edm::EventSetup &es) override
PropagatorWithMaterial * thePropagator
edm::EDGetTokenT< SiTrackerGSMatchedRecHit2DCollection > recHitToken
std::vector< edm::InputTag > trackProducers
tuple conf
Definition: dbtoconf.py:185
virtual void beginRun(edm::Run const &run, const edm::EventSetup &es) override
std::vector< edm::EDGetTokenT< std::vector< Trajectory > > > trajectoryTokens
const TrackerGeometry * theGeometry
bool sameLocalParameters(const TrackingRecHit *aH, const TrackingRecHit *bH) const
bool isDuplicateCandidate(const TrackCandidateCollection &candidates, const TrackCandidate &newCand) const
std::vector< edm::EDGetTokenT< TrajTrackAssociationCollection > > assoMapTokens
Definition: Run.h:41
void addSplitHits(const TrackerRecHit &, std::vector< TrackerRecHit > &)