R3BROOT
R3B analysis software
Loading...
Searching...
No Matches
R3BNeulandOnlineSpectra.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (C) 2019 GSI Helmholtzzentrum für Schwerionenforschung GmbH *
3 * Copyright (C) 2019-2025 Members of R3B Collaboration *
4 * *
5 * This software is distributed under the terms of the *
6 * GNU General Public Licence (GPL) version 3, *
7 * copied verbatim in the file "LICENSE". *
8 * *
9 * In applying this license GSI does not waive the privileges and immunities *
10 * granted to it by virtue of its status as an Intergovernmental Organization *
11 * or submit itself to any jurisdiction. *
12 ******************************************************************************/
13
14#pragma once
15
16#include "R3BNeulandCalData.h"
17#include "R3BNeulandHit.h"
19
20#include <FairTask.h>
21#include <TCAConnector.h>
22#include <array>
23
24class TCanvas;
25class TH1D;
26class TH2D;
27class R3BEventHeader;
28
29class R3BNeulandOnlineSpectra : public FairTask
30{
31 public:
33
34 InitStatus Init() override;
35 void Exec(Option_t*) override;
36 void FinishTask() override;
37
38 void ResetHistos();
39 void ResetHistosMapped();
40 inline void SetDistanceToTarget(double zpos) { fDistanceToTarget = zpos; }
41
42 inline void SetCosmicTpat(UInt_t CosmicTpat = 0) { fCosmicTpat = CosmicTpat; }
43
44 private:
45 static const unsigned int fNPlanes = 26;
46 static const unsigned int fNBars = fNPlanes * 50;
47
48 R3BEventHeader* fEventHeader = nullptr;
49
53
54 TH1D* hTstart;
55 TH1D* hNstart;
56
57 TH2D* hTestJump;
58 TH2D* hJumpsvsEvnt;
59 TH2D* hJumpsvsEvntzoom;
60
61 std::array<TH1D*, 4> ahMappedBar1;
62 std::array<TH1D*, 4> ahMappedBar2;
63
64 std::array<TH2D*, 2> ahCalTvsBar;
65 std::array<TH2D*, 2> ahCalEvsBar;
66
67 TH2D* hHitEvsBar;
68
69 TH2D* hHitEvsBarCosmics;
70
71 TH2D* hTdiffvsBar;
72 TH2D* hToFvsBar;
73 TH2D* hTofvsEhit;
74
75 TH2D* hToFcvsBar;
76 TH2D* hTofcvsEhit;
77
78 TH2D* hTofvsX;
79 TH2D* hTofcvsX;
80 TH2D* hTofvsY;
81 TH2D* hTofcvsY;
82 TH2D* hTofvsZ;
83 TH2D* hTofcvsZ;
84
85 TH2D* hTdiffvsBarCosmics;
86 TH2D* hDT675;
87 TH2D* hDT625;
88 TH2D* hDT675c;
89 TH2D* hDT625c;
90
91 std::array<TH2D*, fNPlanes> ahXYperPlane;
92
93 TH1D* hSofiaTime;
94 TH2D* hNeuLANDvsStart;
95 TH1D* hTOF;
96 TH1D* hTOFc;
97
98 double fDistanceToTarget = 0.;
99
100 bool fIsOnline = false;
101
102 UInt_t fCosmicTpat = 0;
103
104 private:
105 bool IsBeam() const;
106
107 ClassDefOverride(R3BNeulandOnlineSpectra, 0)
108};
void SetCosmicTpat(UInt_t CosmicTpat=0)
void Exec(Option_t *) override
void SetDistanceToTarget(double zpos)