81 if (fVerbose) cout <<
" BmnSiMDDigitizer::Exec() started\n";
84 if (!fDigitArray) Fatal(
"Exec",
"No SiMDDigit array");
86 fDigitArray->Delete();
89 map<Int_t, Double_t> ampMap;
92 for (Int_t iPoint = 0; iPoint < fPointArray->GetEntriesFast(); iPoint++) {
98 auto it = ampMap.find(mod);
99 if (it != ampMap.end()) {
100 ampMap[mod] += point->GetEnergyLoss();
102 ampMap[mod] = point->GetEnergyLoss();
107 for (
auto mit : ampMap) {
109 digi.
SetMod((Short_t)mit.first);
111 new ((*fDigitArray)[fDigitArray->GetEntriesFast()])
BmnTrigDigit(digi);
115 printf(
" Number of BmnSiMDPoints = %d\n", fPointArray->GetEntriesFast());
116 printf(
" Number of BmnSiMDDigits = %d\n", fDigitArray->GetEntriesFast());
117 cout <<
" BmnSiMDDigitizer::Exec() finished\n";
121 workTime += sw.RealTime();