Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:31

0001 #ifndef RecoTracker_PixelSeeding_CosmicLayerTriplets_h
0002 #define RecoTracker_PixelSeeding_CosmicLayerTriplets_h
0003 
0004 /** \class CosmicLayerTriplets
0005  * find all (resonable) pairs of pixel layers
0006  */
0007 #include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2DCollection.h"
0008 #include "DataFormats/Common/interface/RangeMap.h"
0009 #include "TrackingTools/DetLayers/interface/BarrelDetLayer.h"
0010 #include "TrackingTools/DetLayers/interface/ForwardDetLayer.h"
0011 #include "RecoTracker/TkHitPairs/interface/LayerWithHits.h"
0012 //#include "RecoTracker/TkDetLayers/interface/PixelForwardLayer.h"
0013 #include "RecoTracker/TkHitPairs/interface/SeedLayerPairs.h"
0014 
0015 #include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2DCollection.h"
0016 #include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2DCollection.h"
0017 #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h"
0018 
0019 class GeometricSearchTracker;
0020 class TrackerTopology;
0021 
0022 #include <vector>
0023 class CosmicLayerTriplets {
0024 public:
0025   CosmicLayerTriplets(std::string geometry,
0026                       const SiStripRecHit2DCollection &collrphi,
0027                       const GeometricSearchTracker &track,
0028                       const TrackerTopology &ttopo) {
0029     init(collrphi, std::move(geometry), track, ttopo);
0030   };
0031   ~CosmicLayerTriplets();
0032   //  explicit PixelSeedLayerPairs(const edm::EventSetup& iSetup);
0033   typedef std::pair<SeedLayerPairs::LayerPair, std::vector<const LayerWithHits *> > LayerPairAndLayers;
0034 
0035   //  virtual std::vector<LayerPair> operator()() const;
0036   //  std::vector<LayerTriplet> operator()() ;
0037   std::vector<LayerPairAndLayers> layers();
0038 
0039 private:
0040   //definition of the map
0041 
0042   LayerWithHits *lh1;
0043   LayerWithHits *lh2;
0044   LayerWithHits *lh3;
0045   LayerWithHits *lh4;
0046 
0047   std::vector<BarrelDetLayer const *> bl;
0048   //MP
0049   std::vector<LayerWithHits *> allLayersWithHits;
0050 
0051   void init(const SiStripRecHit2DCollection &collrphi,
0052             std::string geometry,
0053             const GeometricSearchTracker &track,
0054             const TrackerTopology &ttopo);
0055 
0056 private:
0057   std::string _geometry;
0058 };
0059 
0060 #endif