Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:22:50

0001 #ifndef TkDetLayers_Phase2OTtiltedBarrelLayer_h
0002 #define TkDetLayers_Phase2OTtiltedBarrelLayer_h
0003 
0004 #include "TrackingTools/DetLayers/interface/RodBarrelLayer.h"
0005 #include "Phase2OTBarrelLayer.h"
0006 #include "Phase2OTBarrelRod.h"
0007 #include "Phase2EndcapRing.h"
0008 #include "SubLayerCrossings.h"
0009 
0010 /** A concrete implementation for Phase2OTtiltedBarrel layer 
0011  *  built out of BarrelPhase2OTBarrelRod
0012  */
0013 
0014 #pragma GCC visibility push(hidden)
0015 class Phase2OTtiltedBarrelLayer final : public Phase2OTBarrelLayer {
0016 public:
0017   Phase2OTtiltedBarrelLayer(std::vector<const Phase2OTBarrelRod*>& innerRods,
0018                             std::vector<const Phase2OTBarrelRod*>& outerRods,
0019                             std::vector<const Phase2EndcapRing*>& negRings,
0020                             std::vector<const Phase2EndcapRing*>& posRings);
0021 
0022   ~Phase2OTtiltedBarrelLayer() override;
0023 
0024   void groupedCompatibleDetsV(const TrajectoryStateOnSurface& tsos,
0025                               const Propagator& prop,
0026                               const MeasurementEstimator& est,
0027                               std::vector<DetGroup>& result) const final;
0028 
0029 private:
0030   std::vector<const GeometricSearchDet*> theNegativeRingsComps;
0031   std::vector<const GeometricSearchDet*> thePositiveRingsComps;
0032 
0033   ReferenceCountingPointer<BoundCylinder> theCylinder;
0034 };
0035 
0036 #pragma GCC visibility pop
0037 #endif