CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
TSGSmart Class Reference

#include <TSGSmart.h>

Inheritance diagram for TSGSmart:
TrackerSeedGenerator

Public Member Functions

 TSGSmart (const edm::ParameterSet &pset, edm::ConsumesCollector &iC)
 
 ~TSGSmart () override
 
- Public Member Functions inherited from TrackerSeedGenerator
const edm::EventgetEvent () const
 
virtual void init (const MuonServiceProxy *service)
 
virtual void setEvent (const edm::Event &)
 
 TrackerSeedGenerator ()
 
virtual void trackerSeeds (const TrackCand &, const TrackingRegion &, const TrackerTopology *, BTSeedCollection &)
 
virtual ~TrackerSeedGenerator ()
 destructor More...
 

Private Member Functions

void run (TrajectorySeedCollection &seeds, const edm::Event &ev, const edm::EventSetup &es, const TrackingRegion &region) override
 

Private Attributes

edm::ParameterSet theConfig
 
double theEtaBound
 
std::unique_ptr< SeedGeneratorFromRegionHitstheMixedGenerator
 
std::unique_ptr< SeedGeneratorFromRegionHitsthePairGenerator
 
std::unique_ptr< SeedGeneratorFromRegionHitstheTripletGenerator
 

Additional Inherited Members

- Public Types inherited from TrackerSeedGenerator
typedef std::vector< TrajectorySeedBTSeedCollection
 
typedef std::pair< const Trajectory *, reco::TrackRefTrackCand
 
- Protected Attributes inherited from TrackerSeedGenerator
const edm::EventtheEvent
 
const MuonServiceProxytheProxyService
 

Detailed Description

Definition at line 10 of file TSGSmart.h.

Constructor & Destructor Documentation

◆ TSGSmart()

TSGSmart::TSGSmart ( const edm::ParameterSet pset,
edm::ConsumesCollector iC 
)

Definition at line 9 of file TSGSmart.cc.

9  {
10  theEtaBound = pset.getParameter<double>("EtaBound");
11 
12  // FIXME??
13  edm::ParameterSet creatorPSet;
14  creatorPSet.addParameter<std::string>("propagator", "PropagatorWithMaterial");
15 
16  edm::ParameterSet PairPSet = pset.getParameter<edm::ParameterSet>("PixelPairGeneratorSet");
17  edm::ParameterSet pairhitsfactoryPSet = PairPSet.getParameter<edm::ParameterSet>("OrderedHitsFactoryPSet");
18  std::string pairhitsfactoryName = pairhitsfactoryPSet.getParameter<std::string>("ComponentName");
19 
20  thePairGenerator = std::make_unique<SeedGeneratorFromRegionHits>(
21  OrderedHitsGeneratorFactory::get()->create(pairhitsfactoryName, pairhitsfactoryPSet, iC),
22  nullptr,
23  SeedCreatorFactory::get()->create("SeedFromConsecutiveHitsCreator", creatorPSet));
24 
25  edm::ParameterSet TripletPSet = pset.getParameter<edm::ParameterSet>("PixelTripletGeneratorSet");
26  edm::ParameterSet triplethitsfactoryPSet = TripletPSet.getParameter<edm::ParameterSet>("OrderedHitsFactoryPSet");
27  std::string triplethitsfactoryName = triplethitsfactoryPSet.getParameter<std::string>("ComponentName");
28 
29  theTripletGenerator = std::make_unique<SeedGeneratorFromRegionHits>(
30  OrderedHitsGeneratorFactory::get()->create(triplethitsfactoryName, triplethitsfactoryPSet, iC),
31  nullptr,
32  SeedCreatorFactory::get()->create("SeedFromConsecutiveHitsCreator", creatorPSet));
33 
34  edm::ParameterSet MixedPSet = pset.getParameter<edm::ParameterSet>("MixedGeneratorSet");
35  edm::ParameterSet mixedhitsfactoryPSet = MixedPSet.getParameter<edm::ParameterSet>("OrderedHitsFactoryPSet");
36  std::string mixedhitsfactoryName = mixedhitsfactoryPSet.getParameter<std::string>("ComponentName");
37 
38  theMixedGenerator = std::make_unique<SeedGeneratorFromRegionHits>(
39  OrderedHitsGeneratorFactory::get()->create(mixedhitsfactoryName, mixedhitsfactoryPSet, iC),
40  nullptr,
41  SeedCreatorFactory::get()->create("SeedFromConsecutiveHitsCreator", creatorPSet));
42 }

References edm::ParameterSet::addParameter(), beamerCreator::create(), get, edm::ParameterSet::getParameter(), muonDTDigis_cfi::pset, AlCaHLTBitMon_QueryRunRegistry::string, theEtaBound, theMixedGenerator, thePairGenerator, and theTripletGenerator.

◆ ~TSGSmart()

TSGSmart::~TSGSmart ( )
overridedefault

Member Function Documentation

◆ run()

void TSGSmart::run ( TrajectorySeedCollection seeds,
const edm::Event ev,
const edm::EventSetup es,
const TrackingRegion region 
)
overrideprivatevirtual

Reimplemented from TrackerSeedGenerator.

Definition at line 46 of file TSGSmart.cc.

49  {
50  if (fabs(region.direction().eta()) > theEtaBound) {
51  theMixedGenerator->run(seeds, region, ev, es);
52  } else {
53  theTripletGenerator->run(seeds, region, ev, es);
54  if (seeds.empty())
55  thePairGenerator->run(seeds, region, ev, es);
56  }
57 }

References ev, HLT_FULL_cff::region, DetachedQuadStep_cff::seeds, theEtaBound, theMixedGenerator, thePairGenerator, and theTripletGenerator.

Member Data Documentation

◆ theConfig

edm::ParameterSet TSGSmart::theConfig
private

Definition at line 23 of file TSGSmart.h.

◆ theEtaBound

double TSGSmart::theEtaBound
private

Definition at line 28 of file TSGSmart.h.

Referenced by run(), and TSGSmart().

◆ theMixedGenerator

std::unique_ptr<SeedGeneratorFromRegionHits> TSGSmart::theMixedGenerator
private

Definition at line 26 of file TSGSmart.h.

Referenced by run(), and TSGSmart().

◆ thePairGenerator

std::unique_ptr<SeedGeneratorFromRegionHits> TSGSmart::thePairGenerator
private

Definition at line 24 of file TSGSmart.h.

Referenced by run(), and TSGSmart().

◆ theTripletGenerator

std::unique_ptr<SeedGeneratorFromRegionHits> TSGSmart::theTripletGenerator
private

Definition at line 25 of file TSGSmart.h.

Referenced by run(), and TSGSmart().

beamerCreator.create
def create(alignables, pedeDump, additionalData, outputFile, config)
Definition: beamerCreator.py:44
TSGSmart::thePairGenerator
std::unique_ptr< SeedGeneratorFromRegionHits > thePairGenerator
Definition: TSGSmart.h:24
TSGSmart::theMixedGenerator
std::unique_ptr< SeedGeneratorFromRegionHits > theMixedGenerator
Definition: TSGSmart.h:26
edm::ParameterSet
Definition: ParameterSet.h:47
edm::ParameterSet::addParameter
void addParameter(std::string const &name, T const &value)
Definition: ParameterSet.h:135
HLT_FULL_cff.region
region
Definition: HLT_FULL_cff.py:88286
TSGSmart::theTripletGenerator
std::unique_ptr< SeedGeneratorFromRegionHits > theTripletGenerator
Definition: TSGSmart.h:25
get
#define get
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
DetachedQuadStep_cff.seeds
seeds
Definition: DetachedQuadStep_cff.py:195
ev
bool ev
Definition: Hydjet2Hadronizer.cc:97
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
TSGSmart::theEtaBound
double theEtaBound
Definition: TSGSmart.h:28
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27