Project
Loading...
Searching...
No Matches
InterCalibEPN.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#include <mutex>
13#include <memory>
14#include <TH1.h>
15#include <TH2.h>
16#include <THnBase.h>
17#include <THnSparse.h>
18#include <TMinuit.h>
19#include "ZDCBase/Constants.h"
25#include "ZDCCalib/InterCalib.h"
28#ifndef ALICEO2_ZDC_INTERCALIBEPN_H_
29#define ALICEO2_ZDC_INTERCALIBEPN_H_
30namespace o2
31{
32namespace zdc
33{
35{
36 public:
37 InterCalibEPN() = default;
38 int init();
39 static constexpr int HidZNA = 0;
40 static constexpr int HidZPA = 1;
41 static constexpr int HidZNC = 2;
42 static constexpr int HidZPC = 3;
43 static constexpr int HidZEM = 4;
44 static constexpr int HidZNI = 5;
45 static constexpr int HidZPI = 6;
46 static constexpr int HidZPAX = 7;
47 static constexpr int HidZPCX = 8;
48 static constexpr int NH = InterCalibData::NH;
49 static constexpr int NPAR = InterCalibData::NPAR;
50 void clear(int ih = -1);
51 int process(const gsl::span<const o2::zdc::BCRecData>& bcrec,
52 const gsl::span<const o2::zdc::ZDCEnergy>& energy,
53 const gsl::span<const o2::zdc::ZDCTDCData>& tdc,
54 const gsl::span<const uint16_t>& info); // Calibration of RUN3 data
55 int endOfRun(); // Perform minimization
56 int process(const char* hname, int ic); // Calibration of RUN2 data
57 int saveDebugHistos(const std::string fn = "ZDCInterCalibEPN.root");
58 void setSaveDebugHistos() { mSaveDebugHistos = true; }
59 void setDontSaveDebugHistos() { mSaveDebugHistos = false; }
60 void cumulate(int ih, double tc, double t1, double t2, double t3, double t4, double w);
61 void setInterCalibConfig(const InterCalibConfig* param) { mInterCalibConfig = param; };
62 const InterCalibConfig* getInterCalibConfig() const { return mInterCalibConfig; };
63 void setVerbosity(int val) { mVerbosity = val; }
66 std::array<o2::dataformats::FlatHisto1D<float>*, 2 * NH> mH{};
67 std::array<o2::dataformats::FlatHisto2D<float>*, NH> mC{};
68
69 private:
70 bool mInitDone = false;
71 bool mSaveDebugHistos = false;
72 int32_t mVerbosity = DbgMinimal;
73 const InterCalibConfig* mInterCalibConfig = nullptr;
74};
75} // namespace zdc
76} // namespace o2
77
78#endif
1D messeageable histo class
2D messeageable histo class
Configuration of ZDC Tower intercalibration procedure.
Intercalibration intermediate data.
Class to describe reconstructed ZDC event (single BC with signal in one of detectors)
ZDC Energy calibration.
ZDC Tower calibration.
static constexpr int HidZPC
static constexpr int HidZPI
void setInterCalibConfig(const InterCalibConfig *param)
static constexpr int HidZNA
std::array< o2::dataformats::FlatHisto2D< float > *, NH > mC
int saveDebugHistos(const std::string fn="ZDCInterCalibEPN.root")
static constexpr int HidZNI
static constexpr int HidZEM
InterCalibData & getData()
static constexpr int HidZPAX
static constexpr int HidZPCX
static constexpr int NPAR
static constexpr int HidZPA
void setVerbosity(int val)
static constexpr int NH
static constexpr int HidZNC
void cumulate(int ih, double tc, double t1, double t2, double t3, double t4, double w)
std::array< o2::dataformats::FlatHisto1D< float > *, 2 *NH > mH
const InterCalibConfig * getInterCalibConfig() const
GLuint GLfloat * val
Definition glcorearb.h:1582
GLenum GLfloat param
Definition glcorearb.h:271
GLubyte GLubyte GLubyte GLubyte w
Definition glcorearb.h:852
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat t1
Definition glcorearb.h:5034
struct o2::upgrades_utils::@463 zdc
structure to keep FT0 information
constexpr int DbgMinimal
Definition Constants.h:208
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
static constexpr int NH
Dimension of matrix (1 + 4 coefficients + offset)
static constexpr int NPAR
vec clear()