CGEM BOSS 6.6.5.i
BESIII Offline Software System
Loading...
Searching...
No Matches
BesTofDigitizerV Class Reference

#include <BesTofDigitizerV.hh>

+ Inheritance diagram for BesTofDigitizerV:

Public Member Functions

 BesTofDigitizerV ()
 
 ~BesTofDigitizerV ()
 
void Initialize ()
 
virtual void Digitize (ScintSingle *, BesTofDigitsCollection *)
 

Protected Attributes

BesTofDigitsCollectionm_besTofDigitsCollection
 
BesTofHitsCollectionm_THC
 
ITofCaliSvcm_tofCaliSvc
 
ITofSimSvcm_tofSimSvc
 
ITofQElecSvcm_tofQElecSvc
 
G4double m_ADC [2]
 
G4double m_TDC [2]
 
G4int m_trackIndex
 
G4double m_globalTime
 

Static Protected Attributes

static bool m_booked = false
 
static NTuple::Tuple * m_tupleTof1 = 0
 
static NTuple::Item< double > m_partId
 
static NTuple::Item< double > m_scinNb
 
static NTuple::Item< double > m_edep
 
static NTuple::Item< double > m_nHits
 
static NTuple::Item< double > m_time1st0
 
static NTuple::Item< double > m_time1st1
 
static NTuple::Item< double > m_timelast0
 
static NTuple::Item< double > m_timelast1
 
static NTuple::Item< double > m_totalPhot0
 
static NTuple::Item< double > m_totalPhot1
 
static NTuple::Item< double > m_NphAllSteps
 
static NTuple::Item< double > m_max0
 
static NTuple::Item< double > m_max1
 
static NTuple::Item< double > m_tdc0
 
static NTuple::Item< double > m_adc0
 
static NTuple::Item< double > m_tdc1
 
static NTuple::Item< double > m_adc1
 
static NTuple::Tuple * m_tupleTof2 = 0
 
static NTuple::Item< double > m_eTotal
 
static NTuple::Item< double > m_nDigi
 
static NTuple::Item< double > m_partIdMPV
 
static NTuple::Item< double > m_scinNbMPV
 
static NTuple::Item< double > m_edepMPV
 
static NTuple::Item< double > m_nDigiOut
 
static NTuple::Tuple * m_tupleTof3 = 0
 
static NTuple::Item< double > m_forb
 
static NTuple::Item< double > m_timeFlight
 
static NTuple::Item< double > m_ddT
 
static NTuple::Item< double > m_scinSwim
 
static NTuple::Item< double > m_scinTime
 
static NTuple::Item< double > m_transitTime
 
static NTuple::Item< double > m_endTime
 
static NTuple::Item< double > m_edepHit
 

Detailed Description

Definition at line 29 of file BesTofDigitizerV.hh.

Constructor & Destructor Documentation

◆ BesTofDigitizerV()

BesTofDigitizerV::BesTofDigitizerV ( )

Definition at line 83 of file BesTofDigitizerV.cc.

84{
85 IMessageSvc* msgSvc;
86 Gaudi::svcLocator()->service("MessageSvc", msgSvc);
87 MsgStream log(msgSvc, "BesTofDigitizerBrV1");
88
89 ISvcLocator* svcLocator = Gaudi::svcLocator();
90// StatusCode scc = svcLocator->service("TofCaliSvc", m_tofCaliSvc);
91// if (scc == StatusCode::SUCCESS) {
92// log << MSG::INFO << "TofSim Gets TofCaliSvc Service Sucessfully!! " << endreq;
93// }
94// else {
95// log << MSG::ERROR << "TofSim Gets TofCaliSvc Service Failed !! " << endreq;
96// }
97
98 StatusCode sim_scc = svcLocator->service("TofSimSvc", m_tofSimSvc);
99 if (sim_scc == StatusCode::SUCCESS) {
100 log << MSG::INFO << "TofSim Gets TofSimSvc Service Sucessfully!! " << endreq;
101 }
102 else {
103 log << MSG::ERROR << "TofSim Gets TofSimSvc Service Failed !! " << endreq;
104 }
105 StatusCode qelec_scc = svcLocator->service("TofQElecSvc", m_tofQElecSvc);
106 if (qelec_scc == StatusCode::SUCCESS) {
107 log << MSG::INFO << "TofRec Gets tofQElecSvc Sucessfully!! " << endreq;
108 }
109 else {
110 log << MSG::ERROR << "TofRec Gets tofQElecSvc Failed !! " << endreq;
111 }
112
113
114
115 //retrieve G4Svc
116 IG4Svc* tmpSvc;
117 StatusCode sc = svcLocator->service("G4Svc", tmpSvc);
118 m_G4Svc = dynamic_cast<G4Svc *>(tmpSvc);
119
120
121
122 //get Tof Ntuple from G4Svc
123 if (m_G4Svc->TofRootFlag() && (!m_booked))
124 {
125
126
127 m_tupleTof1 = m_G4Svc->GetTupleTof1();
128
129 sc = m_tupleTof1->addItem("partId",m_partId);
130 sc = m_tupleTof1->addItem("scinNb",m_scinNb);
131 sc = m_tupleTof1->addItem("edep",m_edep);
132 sc = m_tupleTof1->addItem("nHits",m_nHits);
133 sc = m_tupleTof1->addItem("time1st0",m_time1st0);
134 sc = m_tupleTof1->addItem("time1st1",m_time1st1);
135 sc = m_tupleTof1->addItem("timelast0",m_timelast0);
136 sc = m_tupleTof1->addItem("timelast1",m_timelast1);
137 sc = m_tupleTof1->addItem("totalPhot0",m_totalPhot0);
138 sc = m_tupleTof1->addItem("totalPhot1",m_totalPhot1);
139 sc = m_tupleTof1->addItem("NphAllSteps",m_NphAllSteps);
140 sc = m_tupleTof1->addItem("max0",m_max0);
141 sc = m_tupleTof1->addItem("max1",m_max1);
142 sc = m_tupleTof1->addItem("tdc0",m_tdc0);
143 sc = m_tupleTof1->addItem("adc0",m_adc0);
144 sc = m_tupleTof1->addItem("tdc1",m_tdc1);
145 sc = m_tupleTof1->addItem("adc1",m_adc1);
146
147
148
149 m_tupleTof2 = m_G4Svc->GetTupleTof2();
150 sc = m_tupleTof2->addItem("eTotal",m_eTotal);
151 sc = m_tupleTof2->addItem("nDigi",m_nDigi);
152 sc = m_tupleTof2->addItem("partIdMPV",m_partIdMPV);
153 sc = m_tupleTof2->addItem("scinNbMPV",m_scinNbMPV);
154 sc = m_tupleTof2->addItem("edepMPV",m_edepMPV);
155 sc = m_tupleTof2->addItem("nDigiOut",m_nDigiOut);
156 sc = m_tupleTof2->addItem("edepPerHit",m_edepHit);
157
158 m_tupleTof3 = m_G4Svc->GetTupleTof3();
159 //sc = m_tupleTof3->addItem("forb",m_forb);
160 sc = m_tupleTof3->addItem("timeFlight",m_timeFlight);
161 sc = m_tupleTof3->addItem("ddT",m_ddT);
162 sc = m_tupleTof3->addItem("scinSwim",m_scinSwim);
163 sc = m_tupleTof3->addItem("scinTime",m_scinTime);
164 sc = m_tupleTof3->addItem("transitTime",m_transitTime);
165 sc = m_tupleTof3->addItem("endTime",m_endTime);
166
167
168 //m_tupleTof4 = m_G4Svc->GetTupleTof4();
169 //sc = m_tupleTof4->addItem("partID",m_partIdmrpc);
170 //sc = m_tupleTof4->addItem("stripidentifier",m_stripidentifier);
171 //sc = m_tupleTof4->addItem("trackindex",m_trackindex);
172 //sc = m_tupleTof4->addItem("signal_pc",m_signal_pc);
173 //sc = m_tupleTof4->addItem("time_threshold",m_time_threshold);
174 //sc = m_tupleTof4->addItem("time_1sthit",m_time_1sthit);
175 //sc = m_tupleTof4->addItem("time_1",m_time_1);
176 //sc = m_tupleTof4->addItem("time_2",m_time_2);
177 //sc = m_tupleTof4->addItem("firedstrip",m_firedstrip);
178 //sc = m_tupleTof4->addItem("numberions",m_numberions);
179
180
181 m_booked = true;
182 }
183
184}
IMessageSvc * msgSvc()
static NTuple::Item< double > m_partId
static NTuple::Tuple * m_tupleTof3
static NTuple::Item< double > m_tdc1
static NTuple::Item< double > m_max0
static NTuple::Item< double > m_ddT
static NTuple::Item< double > m_scinTime
static NTuple::Item< double > m_eTotal
static NTuple::Item< double > m_NphAllSteps
static NTuple::Item< double > m_timeFlight
static NTuple::Item< double > m_tdc0
static NTuple::Item< double > m_timelast1
static NTuple::Item< double > m_timelast0
ITofQElecSvc * m_tofQElecSvc
static NTuple::Item< double > m_scinSwim
static NTuple::Item< double > m_scinNb
static NTuple::Item< double > m_adc1
static NTuple::Tuple * m_tupleTof2
static NTuple::Item< double > m_edep
static NTuple::Item< double > m_totalPhot0
static NTuple::Item< double > m_endTime
static NTuple::Item< double > m_edepHit
ITofSimSvc * m_tofSimSvc
static NTuple::Item< double > m_scinNbMPV
static NTuple::Item< double > m_transitTime
static NTuple::Item< double > m_nDigi
static NTuple::Item< double > m_adc0
static NTuple::Item< double > m_nHits
static NTuple::Item< double > m_partIdMPV
static NTuple::Item< double > m_time1st1
static NTuple::Item< double > m_nDigiOut
static NTuple::Item< double > m_totalPhot1
static NTuple::Tuple * m_tupleTof1
static NTuple::Item< double > m_edepMPV
static NTuple::Item< double > m_max1
static NTuple::Item< double > m_time1st0
Definition G4Svc.h:32
NTuple::Tuple * GetTupleTof3()
Definition G4Svc.h:113
bool TofRootFlag()
Definition G4Svc.h:127
NTuple::Tuple * GetTupleTof2()
Definition G4Svc.h:110
NTuple::Tuple * GetTupleTof1()
Definition G4Svc.h:107

◆ ~BesTofDigitizerV()

BesTofDigitizerV::~BesTofDigitizerV ( )

Definition at line 186 of file BesTofDigitizerV.cc.

187{;}

Member Function Documentation

◆ Digitize()

virtual void BesTofDigitizerV::Digitize ( ScintSingle * ,
BesTofDigitsCollection *  )
inlinevirtual

◆ Initialize()

void BesTofDigitizerV::Initialize ( )

Definition at line 189 of file BesTofDigitizerV.cc.

190{
191 for (G4int i=0;i<2;i++)
192 {
193 m_ADC[i] = -999;
194 m_TDC[i] = -999;
195 }
196 m_trackIndex = -999;
197 m_globalTime = 9999;
198}

Referenced by BesTofDigitizerBrV1::TofPmtInit(), BesTofDigitizerBrV2::TofPmtInit(), and BesTofDigitizerEcV1::TofPmtInit().

Member Data Documentation

◆ m_ADC

◆ m_adc0

NTuple::Item< double > BesTofDigitizerV::m_adc0
staticprotected

◆ m_adc1

NTuple::Item< double > BesTofDigitizerV::m_adc1
staticprotected

◆ m_besTofDigitsCollection

◆ m_booked

bool BesTofDigitizerV::m_booked = false
staticprotected

Definition at line 50 of file BesTofDigitizerV.hh.

Referenced by BesTofDigitizerV().

◆ m_ddT

NTuple::Item< double > BesTofDigitizerV::m_ddT
staticprotected

Definition at line 82 of file BesTofDigitizerV.hh.

Referenced by BesTofDigitizerV(), and BesTofDigitizerEcV3::TofPmtAccum().

◆ m_edep

NTuple::Item< double > BesTofDigitizerV::m_edep
staticprotected

◆ m_edepHit

NTuple::Item< double > BesTofDigitizerV::m_edepHit
staticprotected

Definition at line 88 of file BesTofDigitizerV.hh.

Referenced by BesTofDigitizerV().

◆ m_edepMPV

NTuple::Item< double > BesTofDigitizerV::m_edepMPV
staticprotected

◆ m_endTime

NTuple::Item< double > BesTofDigitizerV::m_endTime
staticprotected

◆ m_eTotal

NTuple::Item< double > BesTofDigitizerV::m_eTotal
staticprotected

◆ m_forb

NTuple::Item< double > BesTofDigitizerV::m_forb
staticprotected

Definition at line 80 of file BesTofDigitizerV.hh.

◆ m_globalTime

◆ m_max0

NTuple::Item< double > BesTofDigitizerV::m_max0
staticprotected

◆ m_max1

NTuple::Item< double > BesTofDigitizerV::m_max1
staticprotected

◆ m_nDigi

NTuple::Item< double > BesTofDigitizerV::m_nDigi
staticprotected

◆ m_nDigiOut

NTuple::Item< double > BesTofDigitizerV::m_nDigiOut
staticprotected

◆ m_nHits

NTuple::Item< double > BesTofDigitizerV::m_nHits
staticprotected

◆ m_NphAllSteps

NTuple::Item< double > BesTofDigitizerV::m_NphAllSteps
staticprotected

◆ m_partId

NTuple::Item< double > BesTofDigitizerV::m_partId
staticprotected

◆ m_partIdMPV

NTuple::Item< double > BesTofDigitizerV::m_partIdMPV
staticprotected

◆ m_scinNb

NTuple::Item< double > BesTofDigitizerV::m_scinNb
staticprotected

◆ m_scinNbMPV

NTuple::Item< double > BesTofDigitizerV::m_scinNbMPV
staticprotected

◆ m_scinSwim

NTuple::Item< double > BesTofDigitizerV::m_scinSwim
staticprotected

◆ m_scinTime

NTuple::Item< double > BesTofDigitizerV::m_scinTime
staticprotected

Definition at line 84 of file BesTofDigitizerV.hh.

Referenced by BesTofDigitizerV(), and BesTofDigitizerEcV3::TofPmtAccum().

◆ m_TDC

◆ m_tdc0

NTuple::Item< double > BesTofDigitizerV::m_tdc0
staticprotected

◆ m_tdc1

NTuple::Item< double > BesTofDigitizerV::m_tdc1
staticprotected

◆ m_THC

◆ m_time1st0

NTuple::Item< double > BesTofDigitizerV::m_time1st0
staticprotected

◆ m_time1st1

NTuple::Item< double > BesTofDigitizerV::m_time1st1
staticprotected

◆ m_timeFlight

NTuple::Item< double > BesTofDigitizerV::m_timeFlight
staticprotected

Definition at line 81 of file BesTofDigitizerV.hh.

Referenced by BesTofDigitizerV(), and BesTofDigitizerEcV3::TofPmtAccum().

◆ m_timelast0

NTuple::Item< double > BesTofDigitizerV::m_timelast0
staticprotected

◆ m_timelast1

NTuple::Item< double > BesTofDigitizerV::m_timelast1
staticprotected

◆ m_tofCaliSvc

◆ m_tofQElecSvc

ITofQElecSvc* BesTofDigitizerV::m_tofQElecSvc
protected

◆ m_tofSimSvc

◆ m_totalPhot0

NTuple::Item< double > BesTofDigitizerV::m_totalPhot0
staticprotected

◆ m_totalPhot1

NTuple::Item< double > BesTofDigitizerV::m_totalPhot1
staticprotected

◆ m_trackIndex

◆ m_transitTime

NTuple::Item< double > BesTofDigitizerV::m_transitTime
staticprotected

Definition at line 85 of file BesTofDigitizerV.hh.

Referenced by BesTofDigitizerV(), and BesTofDigitizerEcV3::TofPmtAccum().

◆ m_tupleTof1

NTuple::Tuple * BesTofDigitizerV::m_tupleTof1 = 0
staticprotected

◆ m_tupleTof2

NTuple::Tuple * BesTofDigitizerV::m_tupleTof2 = 0
staticprotected

◆ m_tupleTof3

NTuple::Tuple * BesTofDigitizerV::m_tupleTof3 = 0
staticprotected

The documentation for this class was generated from the following files: