Project
Loading...
Searching...
No Matches
TDCCalibConfig.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_TDCCALIBCONFIG_H
13#define O2_ZDC_TDCCALIBCONFIG_H
14
15#include "ZDCBase/Constants.h"
16#include <Rtypes.h>
17#include <array>
18#include <string>
19#include <limits>
20
24
25namespace o2
26{
27namespace zdc
28{
30 static constexpr int NTDCChannels = 10; //number of TDC channels
31 double cutLow[NTDCChannels] = {-std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(),
32 -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity()};
33 double cutHigh[NTDCChannels] = {std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
34 std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity()};
35 bool enabled[NTDCChannels] = {true, true, true, true, true, true, true, true, true, true}; //ZNAC, ZNAS, ZPAC, ZPAS, ZEM1, ZEM2, ZNCC, ZNCS, ZPCC, ZPCS
36 int nb1[NTDCChannels] = {0};
37 double amin1[NTDCChannels] = {0};
38 double amax1[NTDCChannels] = {0};
39 int nb2[NTDCChannels] = {0};
40 double amin2[NTDCChannels] = {0};
41 double amax2[NTDCChannels] = {0};
42 double l_bnd[NTDCChannels] = {0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1};
43 double u_bnd[NTDCChannels] = {10., 10., 10., 10., 10., 10., 10., 10., 10., 10.};
44 double l_bnd_o[NTDCChannels] = {-20., -20., -20., -20., -20., -20., -20., -20., -20., -20.};
45 double u_bnd_o[NTDCChannels] = {20., 20., 20., 20., 20., 20., 20., 20., 20., 20.};
46 double step_o[NTDCChannels] = {0};
47 double min_e[NTDCChannels] = {0};
48 std::string desc = "";
49
50 void print() const;
51 void resetCuts();
52 void resetCutLow();
53 void resetCutHigh();
54 void resetCutLow(int ih);
55 void resetCutHigh(int ih);
56 void setMinEntries(double val);
57 void setMinEntries(int ih, double val);
58 void setCutLow(double val);
59 void setCutHigh(double val);
60 void setCutLow(int ih, double val);
61 void setCutHigh(int ih, double val);
62 void setCuts(double low, double high);
63 void setCuts(int ih, double low, double high);
64 void setBinning1D(int nb, double amin, double amax);
65 void setBinning2D(int nb, double amin, double amax);
66 void setBinning1D(int ih, int nb, double amin, double amax);
67 void setBinning2D(int ih, int nb, double amin, double amax);
68 void setDescription(std::string d) { desc = d; }
69 void enable(bool c0, bool c1, bool c2, bool c3, bool c4, bool c5, bool c6, bool c7, bool c8, bool c9)
70 {
71 enabled[0] = c0;
72 enabled[1] = c1;
73 enabled[2] = c2;
74 enabled[3] = c3;
75 enabled[4] = c4;
76 enabled[5] = c5;
77 enabled[6] = c6;
78 enabled[7] = c7;
79 enabled[8] = c8;
80 enabled[9] = c9;
81 }
82
84};
85} // namespace zdc
86} // namespace o2
87
88#endif
bool const GPUTPCGMMerger::trackCluster * c1
bool const GPUTPCGMMerger::trackCluster const clcomparestruct * c2
GLenum GLenum GLsizei const GLuint GLboolean enabled
Definition glcorearb.h:2513
GLuint GLfloat * val
Definition glcorearb.h:1582
struct o2::upgrades_utils::@463 zdc
structure to keep FT0 information
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
int nb2[NTDCChannels]
maximum
void setCutHigh(double val)
void setCuts(double low, double high)
double amax1[NTDCChannels]
minimum
void setDescription(std::string d)
void setCutLow(double val)
double min_e[NTDCChannels]
double cutLow[NTDCChannels]
void setBinning1D(int nb, double amin, double amax)
static constexpr int NTDCChannels
double l_bnd[NTDCChannels]
maximum
void setMinEntries(double val)
void enable(bool c0, bool c1, bool c2, bool c3, bool c4, bool c5, bool c6, bool c7, bool c8, bool c9)
void setBinning2D(int nb, double amin, double amax)
ClassDefNV(TDCCalibConfig, 3)
double amax2[NTDCChannels]
minimum
double l_bnd_o[NTDCChannels]
double u_bnd_o[NTDCChannels]
double u_bnd[NTDCChannels]
double amin2[NTDCChannels]
2D histogram: number of bins
double amin1[NTDCChannels]
1D histogram: number of bins
int nb1[NTDCChannels]
double cutHigh[NTDCChannels]
double step_o[NTDCChannels]