CMS 3D CMS Logo

VectorHitBuilderAlgorithmBase.h
Go to the documentation of this file.
1 #ifndef RecoLocalTracker_SiPhase2VectorHitBuilder_VectorHitBuilderAlgorithmBase_H
2 #define RecoLocalTracker_SiPhase2VectorHitBuilder_VectorHitBuilderAlgorithmBase_H
3 
17 
19 public:
24  typedef std::pair<StackGeomDet, std::vector<Phase2TrackerCluster1D>> StackClusters;
25 
27  const TrackerGeometry*,
28  const TrackerTopology*,
31 
32  //FIXME::ERICA::this should be template, return different collection for different algo used!!
34  VectorHitCollection& vhAcc,
35  VectorHitCollection& vhRej,
37  edmNew::DetSetVector<Phase2TrackerCluster1D>& clustersRej) const = 0;
38 
39  virtual void buildVectorHits(VectorHitCollection& vhAcc,
40  VectorHitCollection& vhRej,
41  DetId detIdStack,
42  const StackGeomDet* stack,
44  const Detset& DSVinner,
45  const Detset& DSVouter,
46  const std::vector<bool>& phase2OTClustersToSkip = std::vector<bool>()) const = 0;
47 
50  Phase2TrackerCluster1DRef upper) const = 0;
51 
54  const PixelGeomDetUnit*,
55  const Point3DBase<float, LocalTag>&) const;
56 
58  void printCluster(const GeomDet* geomDetUnit, const Phase2TrackerCluster1D* cluster) const;
59 
63  unsigned int nMaxVHforeachStack_;
64  std::vector<double> barrelCut_;
65  std::vector<double> endcapCut_;
66 
67 private:
69 };
70 
71 #endif
VectorHitBuilderAlgorithmBase(const edm::ParameterSet &, const TrackerGeometry *, const TrackerTopology *, const ClusterParameterEstimator< Phase2TrackerCluster1D > *)
data_type const * const_iterator
Definition: DetSetNew.h:31
virtual void buildVectorHits(VectorHitCollection &vhAcc, VectorHitCollection &vhRej, DetId detIdStack, const StackGeomDet *stack, edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D >> clusters, const Detset &DSVinner, const Detset &DSVouter, const std::vector< bool > &phase2OTClustersToSkip=std::vector< bool >()) const =0
const ClusterParameterEstimator< Phase2TrackerCluster1D > * cpe_
stack
Definition: svgfig.py:559
void printClusters(const edmNew::DetSetVector< Phase2TrackerCluster1D > &clusters) const
edmNew::DetSet< Phase2TrackerCluster1D > Detset
virtual void run(edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D >> clusters, VectorHitCollection &vhAcc, VectorHitCollection &vhRej, edmNew::DetSetVector< Phase2TrackerCluster1D > &clustersAcc, edmNew::DetSetVector< Phase2TrackerCluster1D > &clustersRej) const =0
Definition: DetId.h:17
edm::Ref< edmNew::DetSetVector< Phase2TrackerCluster1D >, Phase2TrackerCluster1D > Phase2TrackerCluster1DRef
void printCluster(const GeomDet *geomDetUnit, const Phase2TrackerCluster1D *cluster) const
double computeParallaxCorrection(const PixelGeomDetUnit *, const Point3DBase< float, LocalTag > &, const PixelGeomDetUnit *, const Point3DBase< float, LocalTag > &) const
virtual VectorHit buildVectorHit(const StackGeomDet *stack, Phase2TrackerCluster1DRef lower, Phase2TrackerCluster1DRef upper) const =0
edmNew::DetSetVector< VectorHit > output_t
std::pair< StackGeomDet, std::vector< Phase2TrackerCluster1D > > StackClusters