BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
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
15#include "BmnZdcDigiScheme.h"
16
17#include <iostream>
18using std::cout;
19using std::endl;
20
21// -------------------------------------------------------------------------
22
24{
25 fGroupID = -1;
26 fModuleID = -1;
27 fChannelID = -1;
28 fELoss = 0;
29 fELossDigi = 0;
30}
31
32// -------------------------------------------------------------------------
33
34BmnZdcDigi::BmnZdcDigi(Int_t pfGroupID, Int_t pfModuleID, Int_t pfChannelID, Double_t pfELoss, Double_t pfELossDigi)
35{
36 fGroupID = pfGroupID;
37 fModuleID = pfModuleID;
38 fChannelID = pfChannelID;
39 fELoss = pfELoss;
40 fELossDigi = pfELossDigi;
41
42 // InitStatic();
43}
44
45// -------------------------------------------------------------------------
46
48{
49 fGroupID = -1;
50 fModuleID = -1;
51 fChannelID = -1;
52 fELoss = 0;
53 fELossDigi = 0;
54
56
57 if ((pDigiScheme) && (p)) {
58
59 Int_t module_groupID, modID, chanID;
60 // pDigiScheme->SplitDigiID(pDigiScheme->GetDigiIdFromCoords(p->GetX(),p->GetY(),p->GetZ()),module_groupID,
61 // modID, chanID);
62
63 pDigiScheme->SplitDigiID(pDigiScheme->GetDigiIdFromVolumeData(p->GetDetectorID(), p->GetCopyMother()),
64 module_groupID, modID, chanID);
65
66 fGroupID = module_groupID;
67 fModuleID = modID;
68 fChannelID = chanID;
69
70 fELoss = p->GetEnergyLoss();
71 }
72
73 // InitStatic();
74}
75
76// -------------------------------------------------------------------------
77
79
80// -------------------------------------------------------------------------
81
83{
84 fELossDigi = 0;
85 fELoss = 0;
86}
87
88// -------------------------------------------------------------------------
89// -------------------------------------------------------------------------
90
92{
93 Bool_t do_init = 1;
94 if (do_init) {
95 Clear();
97
98 if (pDigiScheme) {
99 // BmnZdcDigiPar* pZdcDigiPar=0;
100 /*pZdcDigiPar = */ pDigiScheme->GetZdcDigiPar();
101 }
102 }
103}
104
105// -------------------------------------------------------------------------
106
108{
109 cout << " BmnZdcDigi ModuleGroupID:" << fGroupID << " ModuleID:" << fModuleID << " ChanID:" << fChannelID
110 << " ELossDigi:" << fELossDigi << " ELoss: " << fELoss << endl;
111}
112
113// -------------------------------------------------------------------------
114
116{
118
119 if ((pDigiScheme) && (p)) {
120
121 Int_t module_groupID, modID, chanID;
122 // pDigiScheme->SplitDigiID(pDigiScheme->GetDigiIdFromCoords(p->GetX(),p->GetY(),p->GetZ()),module_groupID,
123 // modID, chanID);
124 pDigiScheme->SplitDigiID(pDigiScheme->GetDigiIdFromVolumeData(p->GetDetectorID(), p->GetCopyMother()),
125 module_groupID, modID, chanID);
126
127 if ((fGroupID == module_groupID) && (fModuleID == modID) && (fChannelID == chanID))
128 fELoss += p->GetEnergyLoss();
129 }
130
131 return 0;
132}
bool Bool_t
int Int_t
double Double_t
const char Option_t
void SplitDigiID(BmnZdcDigiId_t digiID, Int_t &module_groupID, Int_t &modID, Int_t &chanID)
BmnZdcDigiId_t GetDigiIdFromVolumeData(Int_t pMcVolumeNumber, Int_t pMotherMotherCopyNumber)
BmnZdcDigiPar * GetZdcDigiPar()
static BmnZdcDigiScheme * Instance()
Int_t fModuleID
Definition BmnZdcDigi.h:57
virtual ~BmnZdcDigi()
Int_t fChannelID
Definition BmnZdcDigi.h:58
Double_t fELossDigi
Definition BmnZdcDigi.h:59
Int_t fGroupID
Definition BmnZdcDigi.h:55
void Clear()
Double_t fELoss
Definition BmnZdcDigi.h:60
virtual void Print(const Option_t *opt="")
UInt_t AddZdcPoint(BmnZdcPoint *p)
void InitStatic()
Short_t GetCopyMother() const
Definition BmnZdcPoint.h:58