ATLAS Offline Software
Loading...
Searching...
No Matches
TwinTubeMap.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef MUONCABLINGDATA_TWINTUBEMAP_H
5#define MUONCABLINGDATA_TWINTUBEMAP_H
6
10#include <unordered_map>
11
12namespace Muon{
16 class TwinTubeMap : public AthMessaging {
17 public:
19
20 TwinTubeMap(const IMuonIdHelperSvc* idHelperSvc);
23 bool isTwinTubeLayer(const Identifier& channelId) const;
27 Identifier twinId(const Identifier& channelId) const;
30 double hvDelayTime(const Identifier& channelId) const;
32 void setDefaultHVDelay(const double hvDelay);
37 StatusCode addHedgeHogBoard(const Identifier& detElId, const HedgehogBoardPtr& board, const uint16_t slot);
38 private:
40
42 uint8_t nTubesPerLay{0};
43 std::vector<HedgehogBoardPtr> cards{};
44 };
45 using Storage = std::unordered_map<IdentifierHash, HedgehogTray>;
47
48 double m_defaultHVDelay{0.};
49 };
50}
52CLASS_DEF( Muon::TwinTubeMap , 205882636 , 1 );
54
55#endif
Hold mappings of ranges to condition objects.
#define CONDCONT_DEF(...)
Definition CondCont.h:1413
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
std::shared_ptr< const HedgehogBoard > HedgehogBoardPtr
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
const IMuonIdHelperSvc * m_idHelperSvc
Definition TwinTubeMap.h:39
double hvDelayTime(const Identifier &channelId) const
Returns the HV time delay for a given twin tube pair.
bool isTwinTubeLayer(const Identifier &channelId) const
Returns whether the multilayer is equipped with twin-tubes or not.
Identifier twinId(const Identifier &channelId) const
Returns the Identifier of the mapped twin tube.
std::unordered_map< IdentifierHash, HedgehogTray > Storage
Definition TwinTubeMap.h:45
StatusCode addHedgeHogBoard(const Identifier &detElId, const HedgehogBoardPtr &board, const uint16_t slot)
Add a new hedgehog board with twin tube mapping.
HedgehogBoard::HedgehogBoardPtr HedgehogBoardPtr
Definition TwinTubeMap.h:18
double m_defaultHVDelay
Definition TwinTubeMap.h:48
Storage m_twinTubesPerRE
Definition TwinTubeMap.h:46
void setDefaultHVDelay(const double hvDelay)
Sets the default HV delay.
TwinTubeMap(const IMuonIdHelperSvc *idHelperSvc)
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
std::vector< HedgehogBoardPtr > cards
Definition TwinTubeMap.h:43