|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #include "Identifier/Identifier.h"
8 #include "GeoModelHelpers/throwExcept.h"
11 ostr<<
"slope: "<<std::setprecision(15)<<
obj.slope;
12 ostr<<
" intercept: "<<std::setprecision(15)<<
obj.intercept;
19 m_idHelperSvc{idHelperSvc} {
20 m_pdo_data.resize(m_nStgcElements + m_nMmElements);
21 m_tdo_data.resize(m_nStgcElements + m_nMmElements);
28 return 4 *
static_cast<int>(
hash) + idHelper.
gasGap(chan_id) -1;
32 3* (idHelper.gasGap(chan_id) - 1) + idHelper.channelType(chan_id);
77 std::vector<Identifier>
79 std::vector<Identifier> chnls;
81 chnls.reserve(calibMap.size());
84 if (
module.channels.empty())
continue;
89 if (tech ==
"STGC")
continue;
91 for (
unsigned int chn = 1 ; chn <=
module.channels.size() ; ++chn) {
92 if (!
module.channels[chn -1])
continue;
94 chnls.push_back(idHelper.channelID(
module.layer_id,
95 idHelper.multilayer(
module.layer_id),
96 idHelper.gasGap(
module.layer_id), chn ));
99 if (tech ==
"MM")
break;
101 for (
unsigned int chn = 1 ; chn <=
module.channels.size() ; ++chn) {
102 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),
106 idHelper.channelType(
module.layer_id), chn ));
119 if (calibMap.at(array_idx).channels.size() >
channel && calibMap[array_idx].channels[
channel]) {
120 return calibMap[array_idx].channels[
channel].get();
128 std::map<MuonCond::CalibTechType, ZeroCalibMap>::const_iterator itr =
m_zero.find(tech);
131 ZeroCalibMap::const_iterator type_itr = zeroMap.find(
type);
132 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)
#define THROW_EXCEPTION(MSG)
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
virtual Identifier layerId(const Identifier &id) const =0
create a layer ID, returns tube id for the MDTs
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
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
int gasGap(const Identifier &id) const override
get the hashes
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.
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.