CbmRoot
Loading...
Searching...
No Matches
CbmCaInputQaSetup.h
Go to the documentation of this file.
1/* Copyright (C) 2023 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Sergei Zharko [committer] */
4
9
10
11#pragma once
12
13#include "CaParameters.h"
14#include "CbmL1DetectorID.h"
15#include "CbmMCDataArray.h"
16#include "CbmMCDataObject.h"
17#include "CbmMCEventList.h"
18#include "CbmMuchPixelHit.h"
19#include "CbmMuchPoint.h"
20#include "CbmMvdHit.h"
21#include "CbmMvdPoint.h"
22#include "CbmQaTask.h"
23#include "CbmStsHit.h"
24#include "CbmStsPoint.h"
25#include "CbmTimeSlice.h"
26#include "CbmTofHit.h"
27#include "CbmTofPoint.h"
28#include "CbmTrdHit.h"
29#include "CbmTrdPoint.h"
30
31class TClonesArray;
32
33namespace cbm::ca
34{
37 class InputQaSetup : public CbmQaTask {
38 public:
42 InputQaSetup(int verbose, bool isMCUsed);
43
45 void Check() override;
46
48 void CreateSummary() override;
49
51 void ExecQa() override;
52
54 InitStatus InitQa() override;
55
56 private:
58 void CheckoutDetectors();
59
61 void CheckInit() const;
62
64 template<ca::EDetectorID DetID>
65 void FillHistogramsDet();
66
67
68 // *******************************
69 // ** Data branches and flags **
70 // *******************************
74
77 std::shared_ptr<const ca::Parameters<double>> fpParameters = nullptr;
78 std::string fsParametersFilename = "";
79
86
87 // ******************
88 // ** Histograms **
89 // ******************
90
91 std::vector<TH2F*> fph_hit_xy = {};
92 std::vector<TH2F*> fph_hit_xz = {};
93 std::vector<TH2F*> fph_hit_yz = {};
94 std::vector<TH2F*> fph_point_xy = {};
95 std::vector<TH2F*> fph_point_xz = {};
96 std::vector<TH2F*> fph_point_yz = {};
97 };
98
99} // namespace cbm::ca
Implementation of L1DetectorID enum class for CBM.
Class for pixel hits in MUCH detector.
A base class for CBM QA task logic.
Data class for a reconstructed hit in the STS.
Class for hits in TRD detector.
Access to a MC data branch for time-based analysis.
Container class for MC events with number, file and start time.
CbmQaTask(const char *name, int verbose, bool isMCUsed, ECbmRecoMode recoMode=ECbmRecoMode::Timeslice)
Constructor from parameters.
Definition CbmQaTask.cxx:32
void FillHistogramsDet()
Fill histograms for a given detector type.
std::vector< TH2F * > fph_hit_xz
Hit occupancy in x-z plane vs. station.
std::vector< TH2F * > fph_hit_xy
Hit occupancy in x-y plane vs. station.
DetIdArr_t< std::vector< double > > fvZmax
std::vector< TH2F * > fph_point_yz
MC point occupancy in y-z plane vs. station.
std::vector< TH2F * > fph_point_xz
MC point occupancy in x-z plane vs. station.
DetIdArr_t< std::vector< double > > fvXmin
DetIdArr_t< bool > fvbUseDet
Detector subsystem usage flag.
DetIdArr_t< std::vector< double > > fvZmin
std::string fsParametersFilename
Filename for the tracking parameters.
DetIdArr_t< std::vector< double > > fvXmax
std::vector< TH2F * > fph_hit_yz
Hit occupancy in y-z plane vs. station.
void CheckInit() const
Checks branches initialization.
void Check() override
Checks results of the QA and returns a success flag.
DetIdArr_t< TClonesArray * > fvpBrHits
Input branch for hits.
CbmMCDataObject * fpMCEventHeader
Pointer to MC event header.
InputQaSetup(int verbose, bool isMCUsed)
Constructor from parameters.
InitStatus InitQa() override
Initializes QA-task.
std::vector< TH2F * > fph_point_xy
MC point occupancy in x-z plane vs. station.
void ExecQa() override
Fills histograms.
DetIdArr_t< std::vector< double > > fvYmax
DetIdArr_t< CbmMCDataArray * > fvpBrPoints
Input branch for MC points.
CbmMCEventList * fpMCEventList
Pointer to MC event list.
std::shared_ptr< const ca::Parameters< double > > fpParameters
Pointer to CA parameters object.
void CheckoutDetectors()
Check out initialized detectors.
void CreateSummary() override
Creates summary cavases, tables etc.
DetIdArr_t< std::vector< double > > fvYmin
cbm::core::EnumArray< ca::EDetectorID, T > DetIdArr_t
Alias to array, indexed by L1DetectorID enum.