CbmRoot
Loading...
Searching...
No Matches
CbmTofDigiPar.cxx
Go to the documentation of this file.
1
/* Copyright (C) 2020 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2
SPDX-License-Identifier: GPL-3.0-only
3
Authors: Florian Uhlig [committer] */
4
5
#include "
CbmTofDigiPar.h
"
6
7
#include "
CbmTofCell.h
"
// for CbmTofCell
8
9
#include <FairParGenericSet.h>
// for FairParGenericSet
10
#include <FairParamList.h>
// for FairParamList
11
#include <Logger.h>
// for LOG, Logger
12
13
#include <TArrayD.h>
// for TArrayD
14
#include <TArrayI.h>
// for TArrayI
15
#include <TString.h>
// for TString
16
17
#include <utility>
// for pair
18
19
ClassImp
(
CbmTofDigiPar
)
20
21
CbmTofDigiPar::CbmTofDigiPar
(
const
char
* name,
const
char
* title,
const
char
* context)
22
: FairParGenericSet(name, title, context)
23
, fCellMap()
24
, fCellIdArray()
25
, fCellXArray()
26
, fCellYArray()
27
, fCellZArray()
28
, fCellDxArray()
29
, fCellDyArray()
30
, fNrOfCells(-1)
31
{
32
detName =
"Tof"
;
33
}
34
35
CbmTofDigiPar::~CbmTofDigiPar
(
void
)
36
{
37
LOG(debug4) <<
"Enter CbmTofDigiPar destructor"
;
38
std::map<Int_t, CbmTofCell*>::iterator fCellMapIt;
39
for
(fCellMapIt =
fCellMap
.begin(); fCellMapIt !=
fCellMap
.end(); ++fCellMapIt) {
40
delete
fCellMapIt->second;
41
}
42
fCellMap
.clear();
43
clear
();
44
LOG(debug4) <<
"Leave CbmTofDigiPar destructor"
;
45
}
46
47
void
CbmTofDigiPar::clear
(
void
)
48
{
49
status = kFALSE;
50
resetInputVersions();
51
}
52
53
void
CbmTofDigiPar::putParams
(FairParamList* l)
54
{
55
if
(!l) {
56
return
;
57
}
58
59
l->add(
"NrOfCells"
,
fNrOfCells
);
60
l->add(
"CellIdArray"
,
fCellIdArray
);
61
l->add(
"CellXArray"
,
fCellXArray
);
62
l->add(
"CellYArray"
,
fCellYArray
);
63
l->add(
"CellZArray"
,
fCellZArray
);
64
l->add(
"CellDxArray"
,
fCellDxArray
);
65
l->add(
"CellDyArray"
,
fCellDyArray
);
66
}
67
68
Bool_t
CbmTofDigiPar::getParams
(FairParamList* l)
69
{
70
if
(!l) {
71
return
kFALSE;
72
}
73
74
LOG(debug2) <<
"Get the tof digitization parameters."
;
75
76
if
(!l->fill(
"NrOfCells"
, &
fNrOfCells
))
return
kFALSE;
77
78
LOG(debug2) <<
"There are "
<<
fNrOfCells
<<
" cells to be read."
;
79
80
fCellIdArray
.Set(
fNrOfCells
);
81
if
(!l->fill(
"CellIdArray"
, &
fCellIdArray
))
return
kFALSE;
82
83
fCellXArray
.Set(
fNrOfCells
);
84
if
(!l->fill(
"CellXArray"
, &
fCellXArray
))
return
kFALSE;
85
86
fCellYArray
.Set(
fNrOfCells
);
87
if
(!l->fill(
"CellYArray"
, &
fCellYArray
))
return
kFALSE;
88
89
fCellZArray
.Set(
fNrOfCells
);
90
if
(!l->fill(
"CellZArray"
, &
fCellZArray
))
return
kFALSE;
91
92
fCellDxArray
.Set(
fNrOfCells
);
93
if
(!l->fill(
"CellDxArray"
, &
fCellDxArray
))
return
kFALSE;
94
95
fCellDyArray
.Set(
fNrOfCells
);
96
if
(!l->fill(
"CellDyArray"
, &
fCellDyArray
))
return
kFALSE;
97
98
99
for
(Int_t i = 0; i <
fNrOfCells
; i++) {
100
fCellMap
[
fCellIdArray
[i]] =
101
new
CbmTofCell
(
fCellIdArray
[i],
fCellXArray
[i],
fCellYArray
[i],
fCellZArray
[i],
fCellDxArray
[i],
fCellDyArray
[i]);
102
}
103
return
kTRUE;
104
}
CbmTofCell.h
ClassImp
ClassImp(CbmTofDigiPar) CbmTofDigiPar
Definition
CbmTofDigiPar.cxx:19
CbmTofDigiPar.h
CbmTofCell
Definition
CbmTofCell.h:12
CbmTofDigiPar
Definition
CbmTofDigiPar.h:22
CbmTofDigiPar::fCellMap
std::map< Int_t, CbmTofCell * > fCellMap
Definition
CbmTofDigiPar.h:58
CbmTofDigiPar::fCellDyArray
TArrayD fCellDyArray
Definition
CbmTofDigiPar.h:65
CbmTofDigiPar::fCellXArray
TArrayD fCellXArray
Definition
CbmTofDigiPar.h:61
CbmTofDigiPar::putParams
void putParams(FairParamList *)
Definition
CbmTofDigiPar.cxx:53
CbmTofDigiPar::fCellDxArray
TArrayD fCellDxArray
Definition
CbmTofDigiPar.h:64
CbmTofDigiPar::fCellYArray
TArrayD fCellYArray
Definition
CbmTofDigiPar.h:62
CbmTofDigiPar::getParams
Bool_t getParams(FairParamList *)
Definition
CbmTofDigiPar.cxx:68
CbmTofDigiPar::~CbmTofDigiPar
~CbmTofDigiPar(void)
Definition
CbmTofDigiPar.cxx:35
CbmTofDigiPar::fCellZArray
TArrayD fCellZArray
Definition
CbmTofDigiPar.h:63
CbmTofDigiPar::clear
void clear(void)
Definition
CbmTofDigiPar.cxx:47
CbmTofDigiPar::fNrOfCells
Int_t fNrOfCells
Definition
CbmTofDigiPar.h:66
CbmTofDigiPar::fCellIdArray
TArrayI fCellIdArray
Definition
CbmTofDigiPar.h:60
CbmTofDigiPar::CbmTofDigiPar
CbmTofDigiPar(const char *name="CbmTofDigiPar", const char *title="Digitization parameters for the TOF detector", const char *context="TestDefaultContext")
core
detectors
tof
CbmTofDigiPar.cxx
Generated on Mon Feb 3 2025 23:03:50 for CbmRoot by
1.12.0