CMS 3D CMS Logo

TotemTimingRecHitProducerAlgorithm.h
Go to the documentation of this file.
1 /****************************************************************************
2  *
3  * This is a part of CTPPS offline software.
4  * Authors:
5  * Laurent Forthomme (laurent.forthomme@cern.ch)
6  * Nicola Minafra
7  *
8  ****************************************************************************/
9 
10 #ifndef RecoCTPPS_TotemRPLocal_TotemTimingRecHitProducerAlgorithm
11 #define RecoCTPPS_TotemRPLocal_TotemTimingRecHitProducerAlgorithm
12 
14 
16 
21 
22 #include "TGraph.h"
23 #include <algorithm>
24 
27 
29 public:
31 
34 
36  float m;
37  float q;
38  float rms;
39  RegressionResults() : m(0), q(0), rms(0){};
40  };
41 
42 private:
43  static const float SINC_COEFFICIENT;
44 
48  double cfdFraction_;
51  double hysteresis_;
53 
54  RegressionResults simplifiedLinearRegression(const std::vector<float> &time,
55  const std::vector<float> &data,
56  const unsigned int start_at,
57  const unsigned int points) const;
58 
59  int fastDiscriminator(const std::vector<float> &data,
60  const float &threshold) const;
61 
62  float constantFractionDiscriminator(const std::vector<float> &time,
63  const std::vector<float> &data);
64 };
65 
66 #endif
float constantFractionDiscriminator(const std::vector< float > &time, const std::vector< float > &data)
TotemTimingRecHitProducerAlgorithm(const edm::ParameterSet &conf)
RegressionResults simplifiedLinearRegression(const std::vector< float > &time, const std::vector< float > &data, const unsigned int start_at, const unsigned int points) const
The manager class for TOTEM RP geometry.
Definition: CTPPSGeometry.h:33
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
void build(const CTPPSGeometry *, const edm::DetSetVector< TotemTimingDigi > &, edm::DetSetVector< TotemTimingRecHit > &)
int fastDiscriminator(const std::vector< float > &data, const float &threshold) const