5#ifndef MUONCONDDATA_NSWCALIBDBTIMECHARGEDATA_H
6#define MUONCONDDATA_NSWCALIBDBTIMECHARGEDATA_H
15#include "Identifier/Identifier.h"
65 4* (
m_idHelperSvc->mmIdHelper().detectorElement_hash_max() + 1) : 0};
68 3*4 *(
m_idHelperSvc->stgcIdHelper().detectorElement_hash_max() +1): 0};
72 std::vector<std::unique_ptr<CalibConstants>>
channels{};
81 std::map<MuonCond::CalibTechType, ZeroCalibMap>
m_zero{};
Hold mappings of ranges to condition objects.
Provide an interface for finding inheritance information at run time.
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
std::ostream & operator<<(std::ostream &ostr, const NswCalibDbTimeChargeData::CalibConstants &obj)
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Hold mapping of ranges to condition objects.
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
const CalibConstants * getCalibForChannel(const CalibDataType type, const Identifier &channelId) const
Retrieves the calibration constant for a particular readout channel.
const Muon::IMuonIdHelperSvc * m_idHelperSvc
int identToModuleIdx(const Identifier &chan_id) const
void setZero(CalibDataType type, MuonCond::CalibTechType tech, CalibConstants constants)
void setData(CalibDataType type, const Identifier &chnlId, CalibConstants constants)
~NswCalibDbTimeChargeData()=default
NswCalibDbTimeChargeData(const Muon::IMuonIdHelperSvc *idHelperSvc)
ChannelCalibMap m_pdo_data
const size_t m_nMmElements
Segmentation of the elements is per NSW gasGap. Each wedge has 4 gasgaps.
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
std::vector< Identifier > getChannelIds(const CalibDataType type, const std::string &tech, const std::string &side) const
std::vector< CalibModule > ChannelCalibMap
std::map< CalibDataType, CalibConstants > ZeroCalibMap
std::map< MuonCond::CalibTechType, ZeroCalibMap > m_zero
const size_t m_nStgcElements
Additionally reserve space for the 3 channel types.
Helper struct to cache all calibration constants in a common place of the memory.
std::vector< std::unique_ptr< CalibConstants > > channels