8 std::cout <<
"Got " << channelMap->size() <<
" channels" << std::endl;
9 std::map<int, unsigned int> address;
11 for(
auto channel : *channelMap) {
13 if(channel.second->GetClassType() == TGriffin::Class()) {
16 address[4 * (channel.second->GetDetectorNumber() - 1) + channel.second->GetCrystalNumber() + 1] = channel.second->GetAddress();
21 std::cout <<
"x-axis: " << address.rbegin()->first - address.begin()->first + 1 <<
" bins from " << address.begin()->first <<
" to " << address.rbegin()->first + 1 << std::endl;
24 fH2[slot][
"EnergyVsChannel"] =
new TH2D(
"EnergyVsChannel",
"#gamma singles energy vs. channel", address.rbegin()->first - address.begin()->first + 1, address.begin()->first, address.rbegin()->first + 1, 4000, 0, 2000);
25 fH2[slot][
"ChargeVsChannel"] =
new TH2D(
"ChargeVsChannel",
"#gamma singles charge vs. channel", address.rbegin()->first - address.begin()->first + 1, address.begin()->first, address.rbegin()->first + 1, 4000, 0, 4000);
27 for(
int bin = 1; bin <=
fH2[slot][
"EnergyVsChannel"]->GetNbinsX(); ++bin) {
28 if(address.find(bin) == address.end()) {
29 std::cout <<
"Couldn't find array number " << bin <<
" in address map" << std::endl;
32 fH2[slot][
"EnergyVsChannel"]->GetXaxis()->SetBinLabel(bin, Form(
"0x%x", address.at(bin)));
33 fH2[slot][
"ChargeVsChannel"]->GetXaxis()->SetBinLabel(bin, Form(
"0x%x", address.at(bin)));