BmnRoot
Loading...
Searching...
No Matches
BmnZdcDigi.cxx
Go to the documentation of this file.
1
2
/*************************************************************************************
3
*
4
* BmnZdcDigi
5
* Class for digital data taken from BmnZdc detector
6
*
7
* Author: Elena Litvinenko
8
* e-mail: litvin@nf.jinr.ru
9
* Version: 18-11-2015
10
*
11
************************************************************************************/
12
13
#include "
BmnZdcDigi.h
"
14
#include "
BmnZdcDigiScheme.h
"
15
16
#include <iostream>
17
using
std::cout;
18
using
std::endl;
19
20
// -------------------------------------------------------------------------
21
22
BmnZdcDigi::BmnZdcDigi
()
23
{
24
fGroupID
= -1;
25
fModuleID
= -1;
26
fChannelID
= -1;
27
fELoss
= 0;
28
fELossDigi
= 0;
29
}
30
31
// -------------------------------------------------------------------------
32
33
BmnZdcDigi::BmnZdcDigi
(Int_t pfGroupID, Int_t pfModuleID, Int_t pfChannelID, Double_t pfELoss, Double_t pfELossDigi)
34
{
35
fGroupID
= pfGroupID;
36
fModuleID
= pfModuleID;
37
fChannelID
= pfChannelID;
38
fELoss
= pfELoss;
39
fELossDigi
= pfELossDigi;
40
41
// InitStatic();
42
}
43
44
// -------------------------------------------------------------------------
45
46
BmnZdcDigi::BmnZdcDigi
(
BmnZdcPoint
*p)
47
{
48
fGroupID
= -1;
49
fModuleID
= -1;
50
fChannelID
= -1;
51
fELoss
= 0;
52
fELossDigi
= 0;
53
54
BmnZdcDigiScheme
*pDigiScheme =
BmnZdcDigiScheme::Instance
();
55
56
if
((pDigiScheme)&&(p)) {
57
58
Int_t module_groupID, modID, chanID;
59
// pDigiScheme->SplitDigiID(pDigiScheme->GetDigiIdFromCoords(p->GetX(),p->GetY(),p->GetZ()),module_groupID, modID, chanID);
60
61
pDigiScheme->
SplitDigiID
(pDigiScheme->
GetDigiIdFromVolumeData
(p->GetDetectorID(),p->
GetCopyMother
() ),module_groupID, modID, chanID);
62
63
64
fGroupID
= module_groupID;
65
fModuleID
= modID;
66
fChannelID
= chanID;
67
68
fELoss
= p->GetEnergyLoss();
69
}
70
71
// InitStatic();
72
}
73
74
75
// -------------------------------------------------------------------------
76
77
BmnZdcDigi::~BmnZdcDigi
()
78
{
79
80
}
81
82
83
// -------------------------------------------------------------------------
84
85
void
BmnZdcDigi::Clear
()
86
{
87
fELossDigi
= 0;
88
fELoss
= 0;
89
}
90
91
92
// -------------------------------------------------------------------------
93
// -------------------------------------------------------------------------
94
95
void
BmnZdcDigi::InitStatic
()
96
{
97
Bool_t do_init = 1;
98
if
(do_init) {
99
Clear
();
100
BmnZdcDigiScheme
*pDigiScheme =
BmnZdcDigiScheme::Instance
();
101
102
if
(pDigiScheme) {
103
//BmnZdcDigiPar* pZdcDigiPar=0;
104
/*pZdcDigiPar = */
pDigiScheme->
GetZdcDigiPar
();
105
}
106
}
107
}
108
109
// -------------------------------------------------------------------------
110
111
void
BmnZdcDigi::Print
(
const
Option_t* opt)
112
{
113
cout <<
" BmnZdcDigi ModuleGroupID:"
<<
fGroupID
<<
" ModuleID:"
<<
fModuleID
<<
" ChanID:"
<<
fChannelID
<<
114
" ELossDigi:"
<<
fELossDigi
<<
" ELoss: "
<<
fELoss
<< endl;
115
}
116
117
// -------------------------------------------------------------------------
118
119
UInt_t
BmnZdcDigi::AddZdcPoint
(
BmnZdcPoint
*p)
120
{
121
BmnZdcDigiScheme
*pDigiScheme =
BmnZdcDigiScheme::Instance
();
122
123
if
((pDigiScheme)&&(p)) {
124
125
Int_t module_groupID, modID, chanID;
126
// pDigiScheme->SplitDigiID(pDigiScheme->GetDigiIdFromCoords(p->GetX(),p->GetY(),p->GetZ()),module_groupID, modID, chanID);
127
pDigiScheme->
SplitDigiID
(pDigiScheme->
GetDigiIdFromVolumeData
(p->GetDetectorID(),p->
GetCopyMother
() ),module_groupID, modID, chanID);
128
129
if
((
fGroupID
== module_groupID)&&(
fModuleID
== modID)&&(
fChannelID
== chanID))
130
fELoss
+= p->GetEnergyLoss();
131
}
132
133
return
0;
134
}
BmnZdcDigiScheme
Definition
BmnZdcDigiScheme.h:30
BmnZdcDigiScheme::SplitDigiID
void SplitDigiID(BmnZdcDigiId_t digiID, Int_t &module_groupID, Int_t &modID, Int_t &chanID)
Definition
BmnZdcDigiScheme.cxx:575
BmnZdcDigiScheme::GetDigiIdFromVolumeData
BmnZdcDigiId_t GetDigiIdFromVolumeData(Int_t pMcVolumeNumber, Int_t pMotherMotherCopyNumber)
Definition
BmnZdcDigiScheme.cxx:565
BmnZdcDigiScheme::GetZdcDigiPar
BmnZdcDigiPar * GetZdcDigiPar()
Definition
BmnZdcDigiScheme.h:68
BmnZdcDigiScheme::Instance
static BmnZdcDigiScheme * Instance()
Definition
BmnZdcDigiScheme.cxx:48
BmnZdcDigi::fModuleID
Int_t fModuleID
Definition
BmnZdcDigi.h:49
BmnZdcDigi::~BmnZdcDigi
virtual ~BmnZdcDigi()
Definition
BmnZdcDigi.cxx:77
BmnZdcDigi::fChannelID
Int_t fChannelID
Definition
BmnZdcDigi.h:50
BmnZdcDigi::fELossDigi
Double_t fELossDigi
Definition
BmnZdcDigi.h:51
BmnZdcDigi::fGroupID
Int_t fGroupID
Definition
BmnZdcDigi.h:48
BmnZdcDigi::Clear
void Clear()
Definition
BmnZdcDigi.cxx:85
BmnZdcDigi::fELoss
Double_t fELoss
Definition
BmnZdcDigi.h:52
BmnZdcDigi::Print
virtual void Print(const Option_t *opt="")
Definition
BmnZdcDigi.cxx:111
BmnZdcDigi::AddZdcPoint
UInt_t AddZdcPoint(BmnZdcPoint *p)
Definition
BmnZdcDigi.cxx:119
BmnZdcDigi::BmnZdcDigi
BmnZdcDigi()
Definition
BmnZdcDigi.cxx:22
BmnZdcDigi::InitStatic
void InitStatic()
Definition
BmnZdcDigi.cxx:95
BmnZdcPoint
Definition
BmnZdcPoint.h:20
BmnZdcPoint::GetCopyMother
Short_t GetCopyMother() const
Definition
BmnZdcPoint.h:56
BmnZdcDigiScheme.h
BmnZdcDigi.h
detectors
zdc
BmnZdcDigi.cxx
Generated on Fri May 15 2026 10:40:53 for BmnRoot by
1.9.8