 |
ATLAS Offline Software
|
Go to the documentation of this file.
7 #include "GeoModelKernel/throwExcept.h"
12 ostr<<
"slope: "<<std::setprecision(15)<<
obj.slope;
13 ostr<<
" intercept: "<<std::setprecision(15)<<
obj.intercept;
20 m_idHelperSvc{idHelperSvc} {
21 m_pdo_data.resize(m_nStgcElements + m_nMmElements);
22 m_tdo_data.resize(m_nStgcElements + m_nMmElements);
29 return static_cast<unsigned int>(
hash)*(idHelper.gasGapMax()) + (idHelper.gasGap(chan_id) -1);
32 return static_cast<unsigned int>(
hash)*(idHelper.gasGapMax() * 3 ) +
33 (idHelper.gasGap(chan_id) -1 + idHelper.gasGapMax() * idHelper.channelType(chan_id)) +
m_nMmElements;
58 calib_mod.
layer_id = idHelper.channelID(chnlId, idHelper.multilayer(chnlId), idHelper.gasGap(chnlId), 1);
61 calib_mod.
layer_id = idHelper.channelID(chnlId, idHelper.multilayer(chnlId), idHelper.gasGap(chnlId), idHelper.channelType(chnlId), 1);
86 std::vector<Identifier>
88 std::vector<Identifier> chnls;
90 chnls.reserve(calibMap.size());
93 if (
module.channels.empty())
continue;
98 if (tech ==
"STGC")
continue;
100 for (
unsigned int chn = 1 ; chn <=
module.channels.size() ; ++chn) {
101 if (!
module.channels[chn -1])
continue;
103 chnls.push_back(idHelper.channelID(
module.layer_id,
104 idHelper.multilayer(
module.layer_id),
105 idHelper.gasGap(
module.layer_id), chn ));
108 if (tech ==
"MM")
break;
110 for (
unsigned int chn = 1 ; chn <=
module.channels.size() ; ++chn) {
111 if (!
module.channels[chn -1])
continue;
112 chnls.push_back(idHelper.channelID(
module.layer_id,
113 idHelper.multilayer(
module.layer_id),
114 idHelper.gasGap(
module.layer_id),
115 idHelper.channelType(
module.layer_id), chn ));
128 if (calibMap.at(array_idx).channels.size() >
channel && calibMap[array_idx].channels[
channel]) {
129 return calibMap[array_idx].channels[
channel].get();
137 std::map<MuonCond::CalibTechType, ZeroCalibMap>::const_iterator itr =
m_zero.find(tech);
140 ZeroCalibMap::const_iterator type_itr = zeroMap.find(
type);
141 if(type_itr != zeroMap.end())
return &type_itr->second;
void setData(CalibDataType type, const Identifier &chnlId, CalibConstants constants)
virtual const sTgcIdHelper & stgcIdHelper() const =0
access to TgcIdHelper
Helper struct to cache all calibration constants in a common place of the memory.
const size_t m_nMmElements
Segmentation of the elements is per NSW gasGap. Each wedge has 4 gasgaps.
virtual int stationEta(const Identifier &id) const =0
Return stationEta for all technologies.
#define ATH_MSG_VERBOSE(x)
virtual const MmIdHelper & mmIdHelper() const =0
access to CscIdHelper
void setZero(CalibDataType type, MuonCond::CalibTechType tech, CalibConstants constants)
const CalibConstants * getZeroCalibChannel(const CalibDataType type, const MuonCond::CalibTechType tech) const
Returns the dummy calibration constant for the given technology type.
ChannelCalibMap m_tdo_data
int channel(const Identifier &id) const override
std::vector< std::unique_ptr< CalibConstants > > channels
Class to provide easy MsgStream access and capabilities.
NswCalibDbTimeChargeData(const Muon::IMuonIdHelperSvc *idHelperSvc)
std::map< MuonCond::CalibTechType, ZeroCalibMap > m_zero
virtual bool isMM(const Identifier &id) const =0
returns whether this is a MM Identifier or not
std::vector< CalibModule > ChannelCalibMap
const Muon::IMuonIdHelperSvc * m_idHelperSvc
#define THROW_EXCEPTION(MESSAGE)
std::vector< Identifier > getChannelIds(const CalibDataType type, const std::string &tech, const std::string &side) const
std::ostream & operator<<(std::ostream &ostr, const NswCalibDbTimeChargeData::CalibConstants &obj)
int channel(const Identifier &id) const override
virtual std::string toString(const Identifier &id) const =0
print all fields to string
ChannelCalibMap m_pdo_data
std::map< CalibDataType, CalibConstants > ZeroCalibMap
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
int identToModuleIdx(const Identifier &chan_id) const
const CalibConstants * getCalibForChannel(const CalibDataType type, const Identifier &channelId) const
Retrieves the calibration constant for a particular readout channel.
virtual bool issTgc(const Identifier &id) const =0
returns whether this is a sTGC Identifier or not
virtual IdentifierHash detElementHash(const Identifier &id) const =0
Returns the detector element hash associated to an Identifier.