Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:15

0001 #ifndef RecoLocalTracker_Fake_StripCluster_Parameter_Estimator_H
0002 #define RecoLocalTracker_Fake_StripCluster_Parameter_Estimator_H
0003 
0004 #include "DataFormats/GeometrySurface/interface/LocalError.h"
0005 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
0006 
0007 #include "Geometry/CommonDetUnit/interface/GeomDet.h"
0008 #include "DataFormats/TrajectoryState/interface/LocalTrajectoryParameters.h"
0009 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
0010 
0011 #include "DataFormats/SiStripCluster/interface/SiStripCluster.h"
0012 #include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h"
0013 #include "DataFormats/GeometryCommonDetAlgo/interface/MeasurementPoint.h"
0014 #include "DataFormats/GeometryCommonDetAlgo/interface/MeasurementError.h"
0015 
0016 #include "CommonTools/Utils/interface/DynArray.h"
0017 #include "FWCore/Utilities/interface/Exception.h"
0018 
0019 #include "RecoLocalTracker/ClusterParameterEstimator/interface/FakeCPE.h"
0020 #include "RecoLocalTracker/ClusterParameterEstimator/interface/StripClusterParameterEstimator.h"
0021 
0022 class StripFakeCPE final : public StripClusterParameterEstimator {
0023 public:
0024   StripFakeCPE() = default;
0025   ~StripFakeCPE() override = default;
0026 
0027   using LocalValues = std::pair<LocalPoint, LocalError>;
0028 
0029   LocalValues localParameters(const SiStripCluster& cl, const GeomDetUnit& gd) const override {
0030     return fakeCPE().map().get(cl, gd);
0031   }
0032 
0033   // used by Validation....
0034   LocalVector driftDirection(const StripGeomDetUnit*) const override { return LocalVector(); }
0035 
0036   void setFakeCPE(FakeCPE* iFakeCPE) { m_fakeCPE = iFakeCPE; }
0037   FakeCPE const& fakeCPE() const { return *m_fakeCPE; }
0038 
0039 private:
0040   FakeCPE const* m_fakeCPE = nullptr;
0041 };
0042 
0043 #endif