CMS 3D CMS Logo

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

#include <CosmicHitTripletGenerator.h>

Public Member Functions

void add (const LayerWithHits *inner, const LayerWithHits *middle, const LayerWithHits *outer, const TrackerGeometry &trackGeom)
 add generators based on layers More...
 
 CosmicHitTripletGenerator (CosmicLayerTriplets &layers, const TrackerGeometry &trackGeom)
 
 CosmicHitTripletGenerator (CosmicLayerTriplets &layers)
 
void hitTriplets (const TrackingRegion &reg, OrderedHitTriplets &prs)
 
 ~CosmicHitTripletGenerator ()
 

Private Types

typedef std::vector< std::unique_ptr< CosmicHitTripletGeneratorFromLayerTriplet > > Container
 

Private Attributes

Container theGenerators
 

Detailed Description

Hides set of HitTripletGeneratorFromLayerTriplet generators.

Definition at line 18 of file CosmicHitTripletGenerator.h.

Member Typedef Documentation

◆ Container

Definition at line 19 of file CosmicHitTripletGenerator.h.

Constructor & Destructor Documentation

◆ CosmicHitTripletGenerator() [1/2]

CosmicHitTripletGenerator::CosmicHitTripletGenerator ( CosmicLayerTriplets layers,
const TrackerGeometry trackGeom 
)

Definition at line 9 of file CosmicHitTripletGenerator.cc.

References PVValHelper::add(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, and hgcalTBTopologyTester_cfi::layers.

9  {
10  // vector<LayerTriplets::LayerTriplet> layerTriplets = layers();
11  vector<CosmicLayerTriplets::LayerPairAndLayers> layerTriplets = layers.layers();
12  vector<CosmicLayerTriplets::LayerPairAndLayers>::const_iterator it;
13  for (it = layerTriplets.begin(); it != layerTriplets.end(); it++) {
14  vector<const LayerWithHits*>::const_iterator ilwh;
15  for (ilwh = (*it).second.begin(); ilwh != (*it).second.end(); ilwh++) {
16  // const LayerWithHits* first=(*it).first.first;
17  // const LayerWithHits* second=(*it).first.second;
18  // const LayerWithHits* third=(*ilwh);
19  // add( (*it).first.first, (*it).first.second, (*it).second,iSetup);
20  add((*it).first.first, (*it).first.second, (*ilwh), trackGeom);
21  }
22  }
23 }
void add(const LayerWithHits *inner, const LayerWithHits *middle, const LayerWithHits *outer, const TrackerGeometry &trackGeom)
add generators based on layers

◆ CosmicHitTripletGenerator() [2/2]

CosmicHitTripletGenerator::CosmicHitTripletGenerator ( CosmicLayerTriplets layers)

◆ ~CosmicHitTripletGenerator()

CosmicHitTripletGenerator::~CosmicHitTripletGenerator ( )

Definition at line 25 of file CosmicHitTripletGenerator.cc.

25 {}

Member Function Documentation

◆ add()

void CosmicHitTripletGenerator::add ( const LayerWithHits inner,
const LayerWithHits middle,
const LayerWithHits outer,
const TrackerGeometry trackGeom 
)

add generators based on layers

Definition at line 27 of file CosmicHitTripletGenerator.cc.

References SurfaceOrientation::inner, and SurfaceOrientation::outer.

Referenced by counter.Counter::register().

30  {
31  theGenerators.push_back(std::make_unique<CosmicHitTripletGeneratorFromLayerTriplet>(inner, middle, outer, trackGeom));
32 }

◆ hitTriplets()

void CosmicHitTripletGenerator::hitTriplets ( const TrackingRegion reg,
OrderedHitTriplets prs 
)

Definition at line 34 of file CosmicHitTripletGenerator.cc.

References mps_fire::i, and nano_mu_digi_cff::region.

Referenced by SeedGeneratorForCosmics::init().

34  {
35  Container::const_iterator i;
36  for (i = theGenerators.begin(); i != theGenerators.end(); i++) {
37  (**i).hitTriplets(region, pairs);
38  }
39 }

Member Data Documentation

◆ theGenerators

Container CosmicHitTripletGenerator::theGenerators
private

Definition at line 37 of file CosmicHitTripletGenerator.h.