CMS 3D CMS Logo

CompositeTSG.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackerSeedGenerator_CompositeTSG_H
2 #define RecoMuon_TrackerSeedGenerator_CompositeTSG_H
3 
16 
17 class TrackingRegion;
18 class MuonServiceProxy;
19 class TrackerTopology;
20 
22 
23 public:
24  typedef std::vector<TrajectorySeed> BTSeedCollection;
25  typedef std::pair<const Trajectory*, reco::TrackRef> TrackCand;
26 
28  ~CompositeTSG() override;
29 
31  void init(const MuonServiceProxy *service) override;
33  void setEvent(const edm::Event &event) override;
34 
36  void trackerSeeds(const TrackCand&, const TrackingRegion&, const TrackerTopology *, BTSeedCollection &) override =0;
37 
38  protected:
39 
40  unsigned int nTSGs() { return theTSGs.size();}
41  std::vector<std::unique_ptr<TrackerSeedGenerator>> theTSGs;
42  std::vector<std::string> theNames;
44 
46 };
47 
48 
49 #endif
~CompositeTSG() override
CompositeTSG(const edm::ParameterSet &pset, edm::ConsumesCollector &IC)
Definition: CompositeTSG.cc:7
void init(const MuonServiceProxy *service) override
initialized the TSGs
Definition: CompositeTSG.cc:29
std::vector< TrajectorySeed > BTSeedCollection
Definition: CompositeTSG.h:24
std::string theCategory
Definition: CompositeTSG.h:43
void setEvent(const edm::Event &event) override
set the event to the TSGs
Definition: CompositeTSG.cc:36
const MuonServiceProxy * theProxyService
Definition: CompositeTSG.h:45
unsigned int nTSGs()
Definition: CompositeTSG.h:40
std::vector< std::string > theNames
Definition: CompositeTSG.h:42
void trackerSeeds(const TrackCand &, const TrackingRegion &, const TrackerTopology *, BTSeedCollection &) override=0
provides the seeds from the TSGs: must be overloaded
std::vector< std::unique_ptr< TrackerSeedGenerator > > theTSGs
Definition: CompositeTSG.h:41
std::pair< const Trajectory *, reco::TrackRef > TrackCand
Definition: CompositeTSG.h:25
Definition: event.py:1