CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
MTDClusterParameterEstimator.h
Go to the documentation of this file.
1 #ifndef RecoLocalFastTime_MTDCluster_Parameter_Estimator_H
2 #define RecoLocalFastTime_MTDCluster_Parameter_Estimator_H
3 
6 
10 
12 
13 #include <tuple>
14 
16 public:
18 
19  typedef std::pair<LocalPoint, LocalError> LocalValues;
20  typedef std::vector<LocalValues> VLocalValues;
21 
22  typedef float TimeValue;
23  typedef float TimeValueError;
24 
25  using ReturnType = std::tuple<LocalPoint, LocalError, TimeValue, TimeValueError>;
26 
27  // here just to implement it in the clients;
28  // to be properly implemented in the sub-classes in order to make them thread-safe
29 
30  virtual ReturnType getParameters(const FTLCluster& cl, const GeomDetUnit& det) const = 0;
31 
32  virtual ReturnType getParameters(const FTLCluster& cl,
33  const GeomDetUnit& det,
34  const LocalTrajectoryParameters& ltp) const = 0;
35 
37  const GeomDetUnit& det,
38  const TrajectoryStateOnSurface& tsos) const {
39  return getParameters(cl, det, tsos.localParameters());
40  }
41 
42  virtual VLocalValues localParametersV(const FTLCluster& cluster, const GeomDetUnit& gd) const {
43  VLocalValues vlp;
44  ReturnType tuple = getParameters(cluster, gd);
45  vlp.emplace_back(std::get<0>(tuple), std::get<1>(tuple));
46  return vlp;
47  }
48  virtual VLocalValues localParametersV(const FTLCluster& cluster,
49  const GeomDetUnit& gd,
50  TrajectoryStateOnSurface& tsos) const {
51  VLocalValues vlp;
52  ReturnType tuple = getParameters(cluster, gd, tsos);
53  vlp.emplace_back(std::get<0>(tuple), std::get<1>(tuple));
54  return vlp;
55  }
56 
58 };
59 
60 #endif
MTDClusterParameterEstimator::localParametersV
virtual VLocalValues localParametersV(const FTLCluster &cluster, const GeomDetUnit &gd) const
Definition: MTDClusterParameterEstimator.h:42
TrajectoryStateOnSurface.h
MTDClusterParameterEstimator::getParameters
virtual ReturnType getParameters(const FTLCluster &cl, const GeomDetUnit &det, const TrajectoryStateOnSurface &tsos) const
Definition: MTDClusterParameterEstimator.h:36
MTDClusterParameterEstimator::ReturnType
std::tuple< LocalPoint, LocalError, TimeValue, TimeValueError > ReturnType
Definition: MTDClusterParameterEstimator.h:25
GeomDet
Definition: GeomDet.h:27
FTLCluster
Definition: FTLCluster.h:21
MTDClusterParameterEstimator::LocalValues
std::pair< LocalPoint, LocalError > LocalValues
Definition: MTDClusterParameterEstimator.h:19
MTDClusterParameterEstimator::TimeValueError
float TimeValueError
Definition: MTDClusterParameterEstimator.h:23
MTDClusterParameterEstimator::localParametersV
virtual VLocalValues localParametersV(const FTLCluster &cluster, const GeomDetUnit &gd, TrajectoryStateOnSurface &tsos) const
Definition: MTDClusterParameterEstimator.h:48
LocalTrajectoryParameters
Definition: LocalTrajectoryParameters.h:25
GetRecoTauVFromDQM_MC_cff.cl
cl
Definition: GetRecoTauVFromDQM_MC_cff.py:38
MTDClusterParameterEstimator
Definition: MTDClusterParameterEstimator.h:15
LocalTrajectoryParameters.h
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
MTDClusterParameterEstimator::~MTDClusterParameterEstimator
virtual ~MTDClusterParameterEstimator()
Definition: MTDClusterParameterEstimator.h:17
LocalError.h
MTDClusterParameterEstimator::VLocalValues
std::vector< LocalValues > VLocalValues
Definition: MTDClusterParameterEstimator.h:20
TrajectoryStateOnSurface::localParameters
const LocalTrajectoryParameters & localParameters() const
Definition: TrajectoryStateOnSurface.h:73
FTLCluster.h
GeomDet.h
MTDClusterParameterEstimator::TimeValue
float TimeValue
Definition: MTDClusterParameterEstimator.h:22
MTDClusterParameterEstimator::getParameters
virtual ReturnType getParameters(const FTLCluster &cl, const GeomDetUnit &det) const =0
LocalPoint.h
MTDClusterParameterEstimator::MTDClusterParameterEstimator
MTDClusterParameterEstimator()
Definition: MTDClusterParameterEstimator.h:57