Skip to content

Commit 797b0e9

Browse files
Wiktor Pierozakwpierozak
authored andcommitted
draft
1 parent 1521406 commit 797b0e9

3 files changed

Lines changed: 49 additions & 10 deletions

File tree

‎DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/FDDRecoConfig.h‎

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,23 +18,44 @@
1818
namespace o2::fdd
1919
{
2020
struct FDDRecoConfig : o2::conf::ConfigurableParamHelper<FDDRecoConfig> {
21-
float AmplitudeCutOnCollisionTimeWeights = 3;
22-
float AmplitudeCollisionTimeCutSideA = 1.0;
23-
float AmplitudeCollisionTimeCutSideC = 0.0;
21+
int16_t ChannelAmplitudeUpper = 4096;
22+
int16_t ChannelAmplitudeLower = 0;
23+
int16_t ChannelTimeLower = -2050;
24+
int16_t ChannelTimeUpper = 2050;
25+
26+
uint8_t ChannelValidPmInputFlagMask = 0;
27+
uint8_t ChannelValidPmInputFlags = 0;
28+
bool isChannelDataGoodForCollisionTime(uint8_t flags) const
29+
{
30+
return (flags & ChannelValidPmInputFlagMask) == ChannelValidPmInputFlags;
31+
}
32+
33+
uint8_t TriggerBitsValidationMask = 0;
34+
uint8_t TriggerBitsValid = 0;
35+
bool areTriggerBitsGood(uint8_t flags) const
36+
{
37+
return (flags & TriggerBitsValidationMask) == TriggerBitsValid;
38+
}
39+
40+
41+
int16_t CollisionTimeAmpltudeUpper = 4096;
42+
int16_t CollisionTimeAmplitudeLower = 0;
43+
int16_t CollisionTimeTimeLower = -2050;
44+
int16_t CollisionTimeTimeUpper = 2050;
45+
46+
uint8_t CollisionTimeValidPmInputFlagMask = static_cast<uint8_t>(~(1u << ChannelData::kNumberADC));
47+
uint8_t CollisionTimeValidPmInputFlags = static_cast<uint8_t>((1u << ChannelData::kIsCFDinADCgate) | (1u << ChannelData::kIsEventInTVDC));
48+
bool isChannelDataGoodForCollisionTime(uint8_t flags) const
49+
{
50+
return (flags & CollisionTimeValidPmInputFlagMask) == CollisionTimeValidPmInputFlags;
51+
}
2452

2553
float SwTriggerTimeLowThreshold= -1.25;
2654
float SwTriggerTimeHighThreshold= 1.25;
2755
float SwTriggerAmplitudeLowThreshold = 0.0;
2856
float SwTriggerAmplitudeHighThreshold = 4096.0;
2957
bool SwTriggerEnabled = false;
3058

31-
uint8_t ValidPmInputFlagMask = static_cast<uint8_t>(~(1u << ChannelData::kNumberADC));
32-
uint8_t ValidPmInputFlags = static_cast<uint8_t>((1u << ChannelData::kIsCFDinADCgate) | (1u << ChannelData::kIsEventInTVDC));
33-
bool areChannelDataFlagsGood(uint8_t flags) const
34-
{
35-
return (flags & mValidPmInputFlagMask) == mValidPmInputFlags;
36-
}
37-
3859
O2ParamDef(FDDRecoConfig, "FDDRecoConfig");
3960
ClassDefNV(FDDRecoConfig, 1);
4061
};

‎Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/Reconstructor.h‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include "DataFormatsFDD/Digit.h"
1919
#include "DataFormatsFDD/RecPoint.h"
2020
#include "DataFormatsFIT/DeadChannelMap.h"
21+
#include "DataFormatsFDD/FDDRecoConfig.h"
2122
namespace o2
2223
{
2324
namespace fdd
@@ -40,6 +41,10 @@ class Reconstructor
4041
}
4142

4243
private:
44+
bool isInAmplitudeWindow(int16_t amplitude) {
45+
return amplitude >= FDDRecoConfig::Instance().ChannelAmplitudeLower && amplitude <= FDDRecoConfig::Instance().ChannelAmplitudeUpper;
46+
}
47+
4348
o2::fit::DeadChannelMap const* mDeadChannelMap = nullptr;
4449
ClassDefNV(Reconstructor, 3);
4550
};

‎Detectors/FIT/FDD/reconstruction/src/Reconstructor.cxx‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,19 @@ void Reconstructor::process(o2::fdd::Digit const& digitBC, gsl::span<const o2::f
3838
bool atLeastOneVertexChannel = false;
3939
bool atLeastOneChannelInSwAmplitudeRange = false;
4040

41+
int64_t timeSideA = 0;
42+
int64_t timeSideC = 0;
43+
int64_t entriesNumSideA = 0;
44+
int64_t entriesNumSideC = 0;
45+
46+
for (const auto& channelData: inChData) {
47+
if (mDeadChannelMap && !mDeadChannelMap->isChannelAlive(channelData.mPMNumber)) {
48+
LOG(debug) << "Channel " << channelData.mPMNumber << " is dead - discarding data";
49+
continue;
50+
}
51+
52+
}
53+
4154
for (int ich = 0; ich < nch; ich++) {
4255
if (mDeadChannelMap && !mDeadChannelMap->isChannelAlive(inChData[ich].mPMNumber)) {
4356
LOG(debug) << "Channel " << ich << " is dead - discarding data";

0 commit comments

Comments
 (0)