Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-05-12 08:02:26

0001 // SPDX-License-Identifier: LGPL-3.0-or-later
0002 // Copyright (C) 2024 Souvik Paul
0003 
0004 #pragma once
0005 
0006 #include <edm4eic/unit_system.h>
0007 
0008 namespace eicrecon {
0009 
0010 struct EICROCDigitizationConfig {
0011   int adc_bit = 8;
0012   int tdc_bit = 10;
0013   // total number of TDC/ADC values
0014   // Since digitizer starts at zero, max ADC value = adc_range - 1
0015   // Similar for TDC
0016   int adc_range = std::pow(2, adc_bit);
0017   int tdc_range = std::pow(2, tdc_bit);
0018 
0019   double t_thres =
0020       -0.1 *
0021       adc_range; // TDC value = time when pulse exceed t_thres. Negative because Silicon voltage is negative when hit
0022   // period of the sensor clock. Time internal to sensor will all be digitized to integer multiple
0023   // of tInterval
0024   double tMax = 25 * edm4eic::unit::ns; // 25 ns is the period of 40MHz EIC clock
0025 };
0026 
0027 } // namespace eicrecon