![]() |
![]() |
#include <RecoPixelVertexing/PixelTriplets/src/LayerTriplets.h>
Public Types | |
typedef std::pair < SeedingLayerPair, std::vector < ctfseeding::SeedingLayer > > | LayerPairAndLayers |
typedef std::pair < ctfseeding::SeedingLayer, ctfseeding::SeedingLayer > | SeedingLayerPair |
Public Member Functions | |
std::vector< LayerPairAndLayers > | layers () const |
LayerTriplets (const ctfseeding::SeedingLayerSets &sets) | |
Private Attributes | |
ctfseeding::SeedingLayerSets | theSets |
The layer pair is used to generate hit pairs and the associated vector of layers to generate a third hit confirming layer pair
Definition at line 14 of file LayerTriplets.h.
typedef std::pair<SeedingLayerPair, std::vector<ctfseeding::SeedingLayer> > LayerTriplets::LayerPairAndLayers |
Definition at line 17 of file LayerTriplets.h.
typedef std::pair<ctfseeding::SeedingLayer, ctfseeding::SeedingLayer> LayerTriplets::SeedingLayerPair |
Definition at line 16 of file LayerTriplets.h.
LayerTriplets::LayerTriplets | ( | const ctfseeding::SeedingLayerSets & | sets | ) | [inline] |
std::vector< LayerTriplets::LayerPairAndLayers > LayerTriplets::layers | ( | ) | const |
Definition at line 4 of file LayerTriplets.cc.
References HLT_VtxMuL3::result, size, and theSets.
00005 { 00006 std::vector<LayerPairAndLayers> result; 00007 typedef std::vector<LayerPairAndLayers>::iterator IR; 00008 00009 typedef SeedingLayerSets::const_iterator IL; 00010 for (IL il=theSets.begin(), ilEnd= theSets.end(); il != ilEnd; ++il) { 00011 const SeedingLayers & set = *il; 00012 if (set.size() != 3) continue; 00013 SeedingLayerPair layerPair = std::make_pair(set[0], set[1]); 00014 bool added = false; 00015 for (IR ir = result.begin(); ir < result.end(); ++ir) { 00016 const SeedingLayerPair & resPair = ir->first; 00017 if (resPair.first ==layerPair.first && resPair.second == layerPair.second) { 00018 std::vector<SeedingLayer> & thirds = ir->second; 00019 thirds.push_back( set[2] ); 00020 added = true; 00021 break; 00022 } 00023 } 00024 if (!added) { 00025 LayerPairAndLayers lpl = std::make_pair(layerPair, std::vector<SeedingLayer>(1, set[2]) ); 00026 result.push_back(lpl); 00027 } 00028 } 00029 return result; 00030 }