CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
QuadrupletSeedMerger Class Reference

#include <QuadrupletSeedMerger.h>

Public Member Functions

std::pair< double, double > calculatePhiEta (SeedingHitSet const &) const
 
const OrderedSeedingHitsmergeTriplets (const OrderedSeedingHits &, const edm::EventSetup &)
 
const TrajectorySeedCollection mergeTriplets (const TrajectorySeedCollection &, const TrackingRegion &, const edm::EventSetup &)
 
void printHit (const TrackingRecHit *) const
 
void printNtuplet (const SeedingHitSet &) const
 
 QuadrupletSeedMerger (const edm::ParameterSet &iConfig, edm::ConsumesCollector &iC)
 
 QuadrupletSeedMerger (const edm::ParameterSet &iConfig, const edm::ParameterSet &seedCreatorConfig, edm::ConsumesCollector &iC)
 
void setAddRemainingTriplets (bool)
 
void setMergeTriplets (bool)
 
void setTTRHBuilderLabel (std::string)
 
void update (const edm::EventSetup &)
 
 ~QuadrupletSeedMerger ()
 

Private Types

typedef std::array
< SeedingHitSet::ConstRecHitPointer, 4 > 
QuadrupletHits
 

Private Member Functions

bool isValidQuadruplet (const QuadrupletHits &quadruplet, const std::vector< SeedMergerPixelLayer > &layers, const TrackerTopology *tTopo) const
 
void mySort (QuadrupletHits &unsortedHits)
 
 QuadrupletSeedMerger (const edm::ParameterSet &iConfig, SeedCreator *seedCreator, edm::ConsumesCollector &iC)
 

Private Attributes

bool isAddRemainingTriplets_
 
bool isMergeTriplets_
 
OrderedHitSeeds quads_
 
SeedingLayerSetsBuilder theLayerBuilder_
 
ctfseeding::SeedingLayerSets theLayerSets_
 
std::unique_ptr< SeedCreatortheSeedCreator_
 
edm::ESHandle< TrackerGeometrytheTrackerGeometry_
 
edm::ESHandle
< TransientTrackingRecHitBuilder
theTTRHBuilder_
 
std::string theTTRHBuilderLabel_
 

Detailed Description

merge triplets into quadruplets

Definition at line 76 of file QuadrupletSeedMerger.h.

Member Typedef Documentation

Definition at line 96 of file QuadrupletSeedMerger.h.

Constructor & Destructor Documentation

QuadrupletSeedMerger::QuadrupletSeedMerger ( const edm::ParameterSet iConfig,
edm::ConsumesCollector iC 
)
explicit

Definition at line 68 of file QuadrupletSeedMerger.cc.

QuadrupletSeedMerger::QuadrupletSeedMerger ( const edm::ParameterSet iConfig,
const edm::ParameterSet seedCreatorConfig,
edm::ConsumesCollector iC 
)

Definition at line 70 of file QuadrupletSeedMerger.cc.

QuadrupletSeedMerger::~QuadrupletSeedMerger ( )

Definition at line 94 of file QuadrupletSeedMerger.cc.

QuadrupletSeedMerger::QuadrupletSeedMerger ( const edm::ParameterSet iConfig,
SeedCreator seedCreator,
edm::ConsumesCollector iC 
)
private

Definition at line 74 of file QuadrupletSeedMerger.cc.

Member Function Documentation

std::pair< double, double > QuadrupletSeedMerger::calculatePhiEta ( SeedingHitSet const &  nTuplet) const

Definition at line 483 of file QuadrupletSeedMerger.cc.

bool QuadrupletSeedMerger::isValidQuadruplet ( const QuadrupletHits quadruplet,
const std::vector< SeedMergerPixelLayer > &  layers,
const TrackerTopology tTopo 
) const
private

check for validity of a (radius-) sorted quadruplet:

  1. after sorting, hits must be on layers according to the order given in PixelSeedMergerQuadruplets (from cfg)

Definition at line 604 of file QuadrupletSeedMerger.cc.

const OrderedSeedingHits & QuadrupletSeedMerger::mergeTriplets ( const OrderedSeedingHits inputTriplets,
const edm::EventSetup es 
)

merge triplets into quadruplets INPUT: OrderedSeedingHits OUTPUT: SeedingHitSets

this method is used in RecoPixelVertexing/PixelTrackFitting/src/PixelTrackReconstruction.cc and contains the basic merger functionality

Definition at line 110 of file QuadrupletSeedMerger.cc.

const TrajectorySeedCollection QuadrupletSeedMerger::mergeTriplets ( const TrajectorySeedCollection seedCollection,
const TrackingRegion region,
const edm::EventSetup es 
)

merge triplets into quadruplets INPUT: TrajectorySeedCollection OUTPUT: TrajectorySeedCollection

this is a wrapper for: vector<SeedingHitSet> mergeTriplets( const OrderedSeedingHits& ) for use in RecoTracker/TkSeedGenerator/plugins/SeedGeneratorFromRegionHitsEDProducer.cc (iterative tracking)

Definition at line 402 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::mySort ( QuadrupletHits unsortedHits)
private

Definition at line 724 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::printHit ( const TrackingRecHit aHit) const

Definition at line 516 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::printNtuplet ( const SeedingHitSet aNtuplet) const

Definition at line 530 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::setAddRemainingTriplets ( bool  isAddTriplets)

Definition at line 593 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::setMergeTriplets ( bool  isMergeTriplets)

Definition at line 584 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::setTTRHBuilderLabel ( std::string  label)

Definition at line 573 of file QuadrupletSeedMerger.cc.

void QuadrupletSeedMerger::update ( const edm::EventSetup es)

Member Data Documentation

bool QuadrupletSeedMerger::isAddRemainingTriplets_
private

Definition at line 112 of file QuadrupletSeedMerger.h.

bool QuadrupletSeedMerger::isMergeTriplets_
private

Definition at line 111 of file QuadrupletSeedMerger.h.

OrderedHitSeeds QuadrupletSeedMerger::quads_
private

Definition at line 114 of file QuadrupletSeedMerger.h.

SeedingLayerSetsBuilder QuadrupletSeedMerger::theLayerBuilder_
private

Definition at line 106 of file QuadrupletSeedMerger.h.

ctfseeding::SeedingLayerSets QuadrupletSeedMerger::theLayerSets_
private

Definition at line 107 of file QuadrupletSeedMerger.h.

std::unique_ptr<SeedCreator> QuadrupletSeedMerger::theSeedCreator_
private

Definition at line 110 of file QuadrupletSeedMerger.h.

edm::ESHandle<TrackerGeometry> QuadrupletSeedMerger::theTrackerGeometry_
private

Definition at line 108 of file QuadrupletSeedMerger.h.

edm::ESHandle<TransientTrackingRecHitBuilder> QuadrupletSeedMerger::theTTRHBuilder_
private

Definition at line 109 of file QuadrupletSeedMerger.h.

std::string QuadrupletSeedMerger::theTTRHBuilderLabel_
private

Definition at line 113 of file QuadrupletSeedMerger.h.