CMS 3D CMS Logo

PixelCPETemplateReco.h
Go to the documentation of this file.
1 #ifndef RecoLocalTracker_SiPixelRecHits_PixelCPETemplateReco_H
2 #define RecoLocalTracker_SiPixelRecHits_PixelCPETemplateReco_H
3 
5 
6 // Already in the base class
7 //#include "Geometry/CommonDetUnit/interface/GeomDetType.h"
8 //#include "Geometry/CommonDetUnit/interface/PixelGeomDetUnit.h"
9 //#include "Geometry/TrackerGeometryBuilder/interface/RectangularPixelTopology.h"
10 //#include "Geometry/CommonDetAlgo/interface/MeasurementPoint.h"
11 //#include "Geometry/CommonDetAlgo/interface/MeasurementError.h"
12 //#include "Geometry/Surface/interface/GloballyPositioned.h"
13 //#include "FWCore/ParameterSet/interface/ParameterSet.h"
14 
15 #ifndef SI_PIXEL_TEMPLATE_STANDALONE
17 #else
18 #include "SiPixelTemplate.h"
19 #endif
20 
21 #include <utility>
22 #include <vector>
23 
24 #if 0
25 
29 #endif
30 
31 class MagneticField;
33 public:
36  // The result of PixelTemplateReco2D
37  float templXrec_;
38  float templYrec_;
39  float templSigmaX_;
40  float templSigmaY_;
41  // Add new information produced by SiPixelTemplateReco::PixelTempReco2D &&&
42  // These can only be accessed if we change silicon pixel data formats and add them to the rechit
43  float templProbX_;
44  float templProbY_;
45 
46  float templProbQ_;
47 
49 
50  int ierr;
51  };
52 
53  // PixelCPETemplateReco( const DetUnit& det );
55  const MagneticField *,
56  const TrackerGeometry &,
57  const TrackerTopology &,
58  const SiPixelLorentzAngle *,
59  const SiPixelTemplateDBObject *);
60 
61  ~PixelCPETemplateReco() override;
62 
64 
65 private:
66  std::unique_ptr<ClusterParam> createClusterParam(const SiPixelCluster &cl) const override;
67 
68  // We only need to implement measurementPosition, since localPosition() from
69  // PixelCPEBase will call it and do the transformation
70  // Gavril : put it back
71  LocalPoint localPosition(DetParam const &theDetParam, ClusterParam &theClusterParam) const override;
72 
73  // However, we do need to implement localError().
74  LocalError localError(DetParam const &theDetParam, ClusterParam &theClusterParam) const override;
75 
76  // Template storage
77  std::vector<SiPixelTemplateStore> thePixelTemp_;
78 
79  int speed_;
80 
82 
83  // Template file management (when not getting the templates from the DB)
87 
88  //bool DoCosmics_;
89  //bool LoadTemplatesFromDB_;
90 };
91 
92 #endif
std::unique_ptr< ClusterParam > createClusterParam(const SiPixelCluster &cl) const override
PixelCPETemplateReco(edm::ParameterSet const &conf, const MagneticField *, const TrackerGeometry &, const TrackerTopology &, const SiPixelLorentzAngle *, const SiPixelTemplateDBObject *)
LocalError localError(DetParam const &theDetParam, ClusterParam &theClusterParam) const override
Pixel cluster – collection of neighboring pixels above threshold.
static void fillPSetDescription(edm::ParameterSetDescription &desc)
std::vector< SiPixelTemplateStore > thePixelTemp_
LocalPoint localPosition(DetParam const &theDetParam, ClusterParam &theClusterParam) const override