1919#include " DataFormatsFDD/RecPoint.h"
2020#include " DataFormatsFIT/DeadChannelMap.h"
2121#include " DataFormatsFDD/FDDRecoConfig.h"
22+ #include " FDDBase/Constants.h"
2223namespace o2
2324{
2425namespace fdd
@@ -41,6 +42,9 @@ class Reconstructor
4142 }
4243
4344 private:
45+ static const int coincidencePairsSideC[4 ][2 ] = {{0 , 4 }, {1 , 5 }, {2 , 6 }, {3 , 7 }};
46+ static const int coincidencePairsSideA[4 ][2 ] = {{8 , 12 }, {9 , 13 }, {10 , 14 }, {11 , 15 }};
47+
4448 bool isInAmplitudeWindow (int16_t amplitude)
4549 {
4650 return amplitude >= FDDRecoConfig::Instance ().ChannelAmplitudeLower && amplitude <= FDDRecoConfig::Instance ().ChannelAmplitudeUpper ;
@@ -69,15 +73,15 @@ class Reconstructor
6973
7074 bool checkSwOrGateConditions (const ChannelData& channelData)
7175 {
72- bool isAmplitudeInRange = channelData.mChargeADC >= FDDRecoConfig::Instance ().SwTriggerAmplitudeLowThreshold && channelData.mChargeADC <= FDDRecoConfig::Instance ().SwTriggerAmplitudeHighThreshold ;
73- bool isInTimeWindow = std::abs (channelData.mTime ) >= FDDRecoConfig::Instance ().SwTriggerTimeLowThreshold && std::abs (channelData.mTime ) <= FDDRecoConfig::Instance ().SwTriggerTimeHighThreshold ;
76+ bool isAmplitudeInRange = channelData.mChargeADC >= FDDRecoConfig::Instance ().SwOrTriggerAmplitudeLowThreshold && channelData.mChargeADC <= FDDRecoConfig::Instance ().SwOrTriggerAmplitudeHighThreshold ;
77+ bool isInTimeWindow = std::abs (channelData.mTime ) >= o2::fdd::timePerTDC * FDDRecoConfig::Instance ().SwOrTriggerTimeLowThreshold && std::abs (channelData.mTime ) <= o2::fdd::timePerTDC * FDDRecoConfig::Instance ().SwOrTriggerTimeHighThreshold ;
7478 bool isCfdInAdcGate = channelData.getFlag (ChannelData::EEventDataBit::kIsCFDinADCgate );
7579 return isAmplitudeInRange && isInTimeWindow && isCfdInAdcGate;
7680 }
7781
7882 bool calculateSwTrigger (float meanTimeSideA, float meanTimeSideC, bool orGateSideA, bool orGateSideC)
7983 {
80- return (meanTimeSideC - meanTimeSideA) >= FDDRecoConfig::Instance ().SwTriggerTimeDiffMin && (meanTimeSideC - meanTimeSideA) <= FDDRecoConfig::Instance ().SwTriggerTimeDiffMax && orGateSideA && orGateSideC;
84+ return (meanTimeSideC - meanTimeSideA) >= o2::fdd::timePerTDC * FDDRecoConfig::Instance ().SwVtxTriggerTimeDiffMin && (meanTimeSideC - meanTimeSideA) <= o2::fdd::timePerTDC * FDDRecoConfig::Instance ().SwVtxTriggerTimeDiffMax && orGateSideA && orGateSideC;
8185 }
8286 static constexpr uint8_t sSideAMaxId = 7 ;
8387
0 commit comments