10 #include "GaudiKernel/MsgStream.h"
20 static const unsigned int kStationNameShift = 24;
22 static const unsigned int kStationEtaShift = 19;
24 static const unsigned int kStationPhiShift = 13;
28 static const unsigned int kMdtMultilayerShift = 9;
30 static const unsigned int kMdtTubeLayerShift = 7;
35 m_id.second =
id.getIdInt();
39 m_id.second = (
id.stationNameIndex() << kStationNameShift) | (
id.etaIndex() << kStationEtaShift) |
40 (
id.
phiIndex() << kStationPhiShift) | (
id.mdtMultilayerIndex() << kMdtMultilayerShift) |
41 (
id.mdtTubeLayerIndex() << kMdtTubeLayerShift);
45 m_id.second = (
id.stationNameIndex() << kStationNameShift) | (
id.etaIndex() << kStationEtaShift) |
46 (
id.
phiIndex() << kStationPhiShift) | (
id.mdtMultilayerIndex() << kMdtMultilayerShift);
50 m_id.second = (
id.stationNameIndex() << kStationNameShift) | (
id.etaIndex() << kStationEtaShift) |
56 m_id.second =
id.mdtMezzanine();
61 log << MSG::WARNING <<
"HistogramId :: Initialize: sort_by arguemnt is invalid!" <<
endmsg;
65 std::ostringstream
os;
66 if (
m_id.second == -999999) {
70 os <<
id.stationNumberToFixedStationString(
id.
stationName()) <<
"_eta";
75 os << std::abs(
id.eta()) <<
"_phi" <<
id.phi();
77 if (sort_by !=
CHAMBER)
os <<
"_ml" <<
id.mdtMultilayer();
81 if (sort_by ==
TUBE)
os <<
"_tb" <<
id.mdtTube();
83 if (sort_by ==
MEZZ_CARD) {
os <<
"_mez" << (
id.mdtMezzanine() % 100); }
85 os <<
"_num" <<
m_id.second <<
"_" << sort_by;