Project
Loading...
Searching...
No Matches
RecoConfigZDC.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#ifndef O2_ZDC_RECOCONFIGZDC_H
13#define O2_ZDC_RECOCONFIGZDC_H
14
15#include <array>
16#include <Rtypes.h>
17#include "ZDCBase/Constants.h"
18
22
23namespace o2
24{
25namespace zdc
26{
28 // Trigger
29 int32_t tsh[NTDCChannels] = {4, 4, 4, 4, 4, 4, 4, 4, 4, 4}; // Trigger shift
30 int32_t tth[NTDCChannels] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8}; // Trigger threshold
31 std::array<bool, NTDCChannels> bitset = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Set bits in coincidence
32 void setBit(uint32_t ibit, bool val = true);
33 uint8_t triggerCondition = 0x3;
38
39 // Signal processing
40 bool low_pass_filter = true; // Low pass filtering
41 bool full_interpolation = false; // Full interpolation of waveform
42 bool corr_signal = true; // TDC signal correction
43 bool corr_background = true; // TDC pile-up correction
44
45 // TDC
46 int tdc_search[NTDCChannels] = {250, 250, 250, 250, 250, 250, 250, 250, 250, 250}; // Search zone for a TDC signal ideally 2.5 ns (units of ~10 ps)
47 void setSearch(uint32_t ich, int val);
48 int getSearch(uint32_t ich) const;
49 bool extendedSearch = false; // Extend search at beginning of window (needs orbit pedestal info)
50 bool storeEvPileup = false; // Store TDC hits with in-event pile-up
51
52 // Charge integration
53 // Beginning and end of integration range: signal
56 // Beginning and end of integration range: pedestal
59 void setIntegration(uint32_t ich, int beg, int end, int beg_ped, int end_ped);
60 // Pedestal thresholds for pile-up detection
61 // Default value ADCRange will never allow to revert to orbit pedestal and will never identify pile-up
62 // Values <=0 will identify all events as pile-up and use always orbit pedestal
65 void setPedThreshold(int32_t ich, float high, float low);
66
67 void print() const;
68
70};
71} // namespace zdc
72} // namespace o2
73
74#endif
GLuint GLuint end
Definition glcorearb.h:469
GLuint GLfloat * val
Definition glcorearb.h:1582
struct o2::upgrades_utils::@463 zdc
structure to keep FT0 information
constexpr int DummyIntRange
Definition Constants.h:303
constexpr int NTDCChannels
Definition Constants.h:90
constexpr int NChannels
Definition Constants.h:65
constexpr int ADCRange
Definition Constants.h:76
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
uint8_t getTriggerCondition()
Trigger condition: 0x1 single, 0x3 double and 0x7 triple.
void setIntegration(uint32_t ich, int beg, int end, int beg_ped, int end_ped)
int32_t beg_ped_int[NChannels]
int getSearch(uint32_t ich) const
float ped_thr_hi[NChannels]
int32_t beg_int[NChannels]
int32_t tsh[NTDCChannels]
int32_t tth[NTDCChannels]
int32_t end_int[NChannels]
float ped_thr_lo[NChannels]
void setPedThreshold(int32_t ich, float high, float low)
void setSearch(uint32_t ich, int val)
ClassDefNV(RecoConfigZDC, 4)
int32_t end_ped_int[NChannels]
std::array< bool, NTDCChannels > bitset
void setBit(uint32_t ibit, bool val=true)
int tdc_search[NTDCChannels]