CMS 3D CMS Logo

TotemTimingConversions.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 (nicola.minafra@cern.ch)
7  * Filip Dej
8  *
9  ****************************************************************************/
10 
11 #ifndef RecoPPS_Local_TotemTimingConversions
12 #define RecoPPS_Local_TotemTimingConversions
13 
15 
18 
19 #include <string>
20 #include <vector>
21 
23 public:
24  TotemTimingConversions(bool mergeTimePeaks, const PPSTimingCalibration& calibration);
25 
26  float timeOfFirstSample(const TotemTimingDigi& digi) const;
27  float triggerTime(const TotemTimingDigi& digi) const;
28  float timePrecision(const TotemTimingDigi& digi) const;
29  std::vector<float> timeSamples(const TotemTimingDigi& digi) const;
30  std::vector<float> voltSamples(const TotemTimingDigi& digi) const;
31 
32 private:
33  static constexpr float SAMPIC_SAMPLING_PERIOD_NS = 1. / 7.695;
34  static constexpr float SAMPIC_ADC_V = 1. / 256;
35  static constexpr int SAMPIC_MAX_NUMBER_OF_SAMPLES = 64;
36  static constexpr int SAMPIC_DEFAULT_OFFSET = 30;
37  static constexpr int ACCEPTED_TIME_RADIUS = 4;
38  static constexpr unsigned long CELL0_MASK = 0xfffffff000;
39 
43 };
44 
45 #endif
TotemTimingConversions::SAMPIC_SAMPLING_PERIOD_NS
static constexpr float SAMPIC_SAMPLING_PERIOD_NS
Definition: TotemTimingConversions.h:39
TotemTimingConversions
Definition: TotemTimingConversions.h:21
TotemTimingConversions::SAMPIC_MAX_NUMBER_OF_SAMPLES
static constexpr int SAMPIC_MAX_NUMBER_OF_SAMPLES
Definition: TotemTimingConversions.h:41
TotemTimingConversions::voltSamples
std::vector< float > voltSamples(const TotemTimingDigi &digi) const
Definition: TotemTimingConversions.cc:86
TotemTimingDigi.h
TotemTimingConversions::TotemTimingConversions
TotemTimingConversions(bool mergeTimePeaks, const PPSTimingCalibration &calibration)
Definition: TotemTimingConversions.cc:15
TotemTimingConversions::mergeTimePeaks_
bool mergeTimePeaks_
Definition: TotemTimingConversions.h:47
reco::FormulaEvaluator
Definition: FormulaEvaluator.h:67
TotemTimingConversions::triggerTime
float triggerTime(const TotemTimingDigi &digi) const
Definition: TotemTimingConversions.cc:57
TotemTimingDigi
Definition: TotemTimingDigi.h:19
TotemTimingConversions::calibration_
PPSTimingCalibration calibration_
Definition: TotemTimingConversions.h:46
Phase1L1TJetCalibrator_cfi.calibration
calibration
Definition: Phase1L1TJetCalibrator_cfi.py:2
TotemTimingConversions::timeSamples
std::vector< float > timeSamples(const TotemTimingDigi &digi) const
Definition: TotemTimingConversions.cc:76
FormulaEvaluator.h
TotemTimingConversions::SAMPIC_ADC_V
static constexpr float SAMPIC_ADC_V
Definition: TotemTimingConversions.h:40
TotemTimingConversions::timePrecision
float timePrecision(const TotemTimingDigi &digi) const
Definition: TotemTimingConversions.cc:67
PPSTimingCalibration.h
TotemTimingConversions::ACCEPTED_TIME_RADIUS
static constexpr int ACCEPTED_TIME_RADIUS
Definition: TotemTimingConversions.h:43
TotemTimingConversions::SAMPIC_DEFAULT_OFFSET
static constexpr int SAMPIC_DEFAULT_OFFSET
Definition: TotemTimingConversions.h:42
TotemTimingConversions::timeOfFirstSample
float timeOfFirstSample(const TotemTimingDigi &digi) const
Definition: TotemTimingConversions.cc:20
PPSTimingCalibration
Definition: PPSTimingCalibration.h:17
TotemTimingConversions::CELL0_MASK
static constexpr unsigned long CELL0_MASK
Definition: TotemTimingConversions.h:44
TotemTimingConversions::calibrationFunction_
reco::FormulaEvaluator calibrationFunction_
Definition: TotemTimingConversions.h:48