Project
Loading...
Searching...
No Matches
DigiParser.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 <map>
13#include <deque>
14#include <gsl/span>
15#include <TFile.h>
16#include <TAxis.h>
17#include <TH1.h>
18#include <TH2.h>
19#include "Framework/Logger.h"
20#include "ZDCBase/Constants.h"
36
37#ifndef ALICEO2_ZDC_DIGI_PARSER_H
38#define ALICEO2_ZDC_DIGI_PARSER_H
39
40namespace o2
41{
42namespace zdc
43{
44
46{
47 public:
48 DigiParser() = default;
49 ~DigiParser() = default;
50 void init();
51 int process(const gsl::span<const o2::zdc::OrbitData>& orbitdata,
52 const gsl::span<const o2::zdc::BCData>& bcdata,
53 const gsl::span<const o2::zdc::ChannelData>& chdata);
54 void setVerbosity(int v)
55 {
56 mVerbosity = v;
57 }
58 int getVerbosity() const { return mVerbosity; }
59 void setOutput(std::string output)
60 {
61 mOutput = output;
62 }
63 void setRejectPileUp(bool op = true)
64 {
65 mRejectPileUp = op;
66 }
67 void eor();
68
69 void setModuleConfig(const ModuleConfig* moduleConfig) { mModuleConfig = moduleConfig; };
70 const ModuleConfig* getModuleConfig() { return mModuleConfig; };
71
72 private:
73 const ModuleConfig* mModuleConfig = nullptr;
74 const RecoParamZDC* mRopt = nullptr;
75
76 void setStat(TH1* h);
77 void setModuleLabel(TH1* h);
78 void setModuleLabel(TAxis* ax);
79
80 int32_t mVerbosity = DbgMinimal;
81 bool mRejectPileUp = true;
82 std::string mOutput = "ZDCDigiParser.root";
83 uint32_t mTriggerMask = 0;
84 uint32_t mChMask[NChannels] = {0};
85
86 std::unique_ptr<TH1> mTransmitted = nullptr;
87 std::unique_ptr<TH1> mFired = nullptr;
88 std::unique_ptr<TH1> mBaseline[NChannels] = {nullptr};
89 std::unique_ptr<TH1> mCounts[NChannels] = {nullptr};
90 std::unique_ptr<TH2> mSignalTH[NChannels] = {nullptr};
91 std::unique_ptr<TH2> mBunchH[NChannels] = {nullptr}; // Bunch pattern Hit
92 std::unique_ptr<TH2> mAlignment;
93
94 int mNBC = 0;
95};
96} // namespace zdc
97} // namespace o2
98#endif
Class to describe fired triggered and/or stored channels for the BC and to refer to channel data.
Baseline calibration data.
uint32_t op
void output(const std::map< std::string, ChannelStat > &channels)
Definition rawdump.cxx:197
Class to describe pedestal data accumulated over the orbit.
Class to describe reconstructed ZDC event (single BC with signal in one of detectors)
ZDC reconstruction parameters.
ZDC reconstruction parameters.
ZDC Energy calibration.
ZDC TDC correction parameters.
Parameters to correct TDCs (produced by QA)
ZDC Tower calibration.
Container class to store NTimeBinsPerBC ADC values of single ZDC channel.
Class for time synchronization of RawReader instances.
void setVerbosity(int v)
Definition DigiParser.h:54
int getVerbosity() const
Definition DigiParser.h:58
void setModuleConfig(const ModuleConfig *moduleConfig)
Definition DigiParser.h:69
const ModuleConfig * getModuleConfig()
Definition DigiParser.h:70
void setOutput(std::string output)
Definition DigiParser.h:59
void setRejectPileUp(bool op=true)
Definition DigiParser.h:63
const GLdouble * v
Definition glcorearb.h:832
struct o2::upgrades_utils::@463 zdc
structure to keep FT0 information
constexpr int NChannels
Definition Constants.h:65
constexpr int DbgMinimal
Definition Constants.h:208
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...