5#include "GaudiKernel/SystemOfUnits.h"
23 return static_cast<unsigned>(detHash)*4 + (idHelper.
gasGap(gasGapId) -1);
32 <<
" already exist. Overwriting is not allowed");
33 return StatusCode::FAILURE;
35 slot = std::make_unique<CTPParameters>(std::move(newConstants));
36 return StatusCode::SUCCESS;
47 ATH_MSG_WARNING(
"There's no drift velocity calibration available for gasGap "
49 return std::numeric_limits<double>::max();
56 double tan_theta = std::tan(trf_theta_in_degrees*Gaudi::Units::deg);
63 double vDrift = (*calibPars)[0] + (*calibPars)[1] * trf_theta_in_degrees;
66 vDrift = (tan_theta != 0 ) ? std::abs(vDrift/tan_theta) : std::abs(vDrift);
69 ATH_MSG_VERBOSE(
"New drift velocity: " << vDrift <<
" for theta: " << trf_theta_in_degrees <<
" degrees" );
Scalar theta() const
theta method
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
This is a "hash" representation of an Identifier.
virtual int get_detectorElement_hash(const Identifier &id, IdentifierHash &hash_id) const override
int gasGap(const Identifier &id) const override
get the hashes
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
const Muon::IMuonIdHelperSvc * m_idHelperSvc
std::uint32_t convertHash(const Identifier &gasGapId) const
Converts the identifier to a continious hash used to access the stored parameters.
parameterMap_t m_database
std::array< double, 2 > CTPParameters
StatusCode storeConstants(const Identifier &gasGapId, CTPParameters &&newConstants)
MmCTPClusterCalibData(const Muon::IMuonIdHelperSvc *idHelperSvc)
double getCTPCorrectedDriftVelocity(const Identifier &identifier, const double theta) const
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.