ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetDetDescr
ITkStripCabling
ITkStripCabling
ITkStripCablingData.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef ITkStripCablingData_h
5
#define ITkStripCablingData_h
12
13
#include "
ITkStripCabling/ITkStripOnlineId.h
"
14
15
// Athena includes
16
#include "
Identifier/IdentifierHash.h
"
17
#include "Identifier/Identifier.h"
18
#include "
AthenaKernel/CLASS_DEF.h
"
19
#include "
AthenaKernel/CondCont.h
"
20
//STL
21
#include <unordered_map>
22
#include <iosfwd>
23
24
class
ITkStripCablingData
{
25
public
:
27
friend
std::istream&
operator>>
(std::istream & is,
ITkStripCablingData
& cabling);
29
friend
std::ostream&
operator<<
(std::ostream & os,
const
ITkStripCablingData
& cabling);
30
bool
empty
()
const
;
31
std::size_t
size
()
const
;
32
ITkStripOnlineId
onlineId
(
const
Identifier
&
id
)
const
;
33
35
void
getRods
(std::vector<std::uint32_t>& usersVector)
const
;
36
38
ITkStripOnlineId
getOnlineIdFromHash
(
const
IdentifierHash
& hash)
const
;
39
40
enum
{
NUMBER_OF_HASHES
=49536};
// In ITk, we have 49536 sensors.
41
42
private
:
43
std::unordered_map<Identifier, ITkStripOnlineId>
m_offline2OnlineMap
;
44
std::set<std::uint32_t>
m_rodIdSet
;
45
std::array<ITkStripOnlineId, NUMBER_OF_HASHES>
m_hash2OnlineIdArray
;
46
47
static
const
IdentifierHash
s_invalidHash
;
48
static
const
ITkStripOnlineId
s_invalidId
;
49
50
};
51
// Magic "CLassID" for storage/retrieval in StoreGate
52
// These values produced using clid script.
53
// "clid ITkStripCablingData"
54
// 92425761 ITkStripCablingData
55
CLASS_DEF
(
ITkStripCablingData
, 92425761 , 1 )
56
//"clid -cs ITkStripCablingData"
57
// 133529577
58
CONDCONT_DEF
(
ITkStripCablingData
, 133529577 );
59
#endif
CondCont.h
Hold mappings of ranges to condition objects.
CONDCONT_DEF
#define CONDCONT_DEF(...)
Definition
CondCont.h:1413
CLASS_DEF.h
macros to associate a CLID to a type
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition
Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
ITkStripOnlineId.h
IdentifierHash.h
ITkStripCablingData
Definition
ITkStripCablingData.h:24
ITkStripCablingData::NUMBER_OF_HASHES
@ NUMBER_OF_HASHES
Definition
ITkStripCablingData.h:40
ITkStripCablingData::m_rodIdSet
std::set< std::uint32_t > m_rodIdSet
Set of robIds.
Definition
ITkStripCablingData.h:44
ITkStripCablingData::s_invalidId
static const ITkStripOnlineId s_invalidId
Invalid SCT_OnlineId.
Definition
ITkStripCablingData.h:16
ITkStripCablingData::getRods
void getRods(std::vector< std::uint32_t > &usersVector) const
Get a vector of all RODs.
Definition
ITkStripCablingData.cxx:83
ITkStripCablingData::m_offline2OnlineMap
std::unordered_map< Identifier, ITkStripOnlineId > m_offline2OnlineMap
Definition
ITkStripCablingData.h:43
ITkStripCablingData::operator>>
friend std::istream & operator>>(std::istream &is, ITkStripCablingData &cabling)
stream extraction to read value from stream into ITkStripCablingData
Definition
ITkStripCablingData.cxx:38
ITkStripCablingData::empty
bool empty() const
Definition
ITkStripCablingData.cxx:19
ITkStripCablingData::m_hash2OnlineIdArray
std::array< ITkStripOnlineId, NUMBER_OF_HASHES > m_hash2OnlineIdArray
Array for hash to onlineId; hash goes from 0-49536.
Definition
ITkStripCablingData.h:45
ITkStripCablingData::size
std::size_t size() const
Definition
ITkStripCablingData.cxx:24
ITkStripCablingData::getOnlineIdFromHash
ITkStripOnlineId getOnlineIdFromHash(const IdentifierHash &hash) const
Get ITkStripOnlineId from IdentifierHash.
Definition
ITkStripCablingData.cxx:79
ITkStripCablingData::onlineId
ITkStripOnlineId onlineId(const Identifier &id) const
Definition
ITkStripCablingData.cxx:29
ITkStripCablingData::operator<<
friend std::ostream & operator<<(std::ostream &os, const ITkStripCablingData &cabling)
stream insertion for debugging
Definition
ITkStripCablingData.cxx:71
ITkStripCablingData::s_invalidHash
static const IdentifierHash s_invalidHash
Invalid IdentifierHash.
Definition
ITkStripCablingData.h:15
ITkStripOnlineId
Definition
ITkStripOnlineId.h:16
IdentifierHash
This is a "hash" representation of an Identifier.
Definition
IdentifierHash.h:25
Identifier
Definition
IdentifierFieldParser.cxx:14
Generated on
for ATLAS Offline Software by
1.17.0