ATLAS Offline Software
Loading...
Searching...
No Matches
ITkPixelCablingData Class Reference

#include <ITkPixelCablingData.h>

Collaboration diagram for ITkPixelCablingData:

Public Member Functions

bool empty () const
std::size_t size () const
ITkPixelOnlineId onlineId (const Identifier &id) const
Identifier offlineId (const ITkPixelOnlineId &id) const
ITkPixelCabling::ModuleInfo< ITkPixelOnlineIdonlineModuleInfo (const Identifier &id) const
ITkPixelCabling::ModuleInfo< IdentifierofflineModuleInfo (const ITkPixelOnlineId &id) const
ITkPixelOnlineId onlineId (const uint32_t &offlineDetectorResourceID) const
const std::unordered_map< uint32_t, ITkPixelOnlineId > & onlineIdMap () const
const std::vector< uint32_t > & sourceIDs () const
ITkPixelCabling::TransformType transformType (const uint32_t &moduleID) const
template<typename Func>
void forEachOffOn (Func &&f) const
void addEntryOffOn (const Identifier &idOff, const ITkPixelOnlineId &idOn)
void addEntryOffOn (const Identifier &idOff, const ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > &moduleInfo)
void addEntryOffOn (const uint32_t &offlineDetectorResourceID, const ITkPixelOnlineId &onlineId)
void addSourceID (const uint32_t &sourceID)
void addTransformType (const uint32_t &moduleID, const ITkPixelCabling::TransformType &transform)
void addEntryOnOff (const ITkPixelOnlineId &idOn, const Identifier &idOff)
void addEntryOnOff (const ITkPixelOnlineId &idOn, const ITkPixelCabling::ModuleInfo< Identifier > &moduleInfo)
void print () const

Private Attributes

std::unordered_map< Identifier, ITkPixelOnlineIdm_offline2OnlineMap
std::unordered_map< Identifier, ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > > m_offline2ModuleInfoMap
std::unordered_map< ITkPixelOnlineId, Identifierm_online2OfflineMap
std::unordered_map< ITkPixelOnlineId, ITkPixelCabling::ModuleInfo< Identifier > > m_online2ModuleInfoMap
std::unordered_map< ITkPixelOnlineId, ITkPixelCabling::ModuleTypem_online2ModuleType
std::unordered_map< Identifier, ITkPixelCabling::ModuleTypem_offline2ModuleType
std::unordered_map< uint32_t, ITkPixelOnlineIdm_offlineDetectorResourceID2OnlineIdMap {}
std::vector< uint32_t > m_sourceIDs {}
std::unordered_map< uint32_t, ITkPixelCabling::TransformTypem_module2TransformTypeMap {}

Friends

std::istream & operator>> (std::istream &is, ITkPixelCablingData &cabling)
 stream extraction to read value from stream into ITkPixelCablingData
std::ostream & operator<< (std::ostream &os, const ITkPixelCablingData &cabling)
 stream insertion for debugging

Detailed Description

Definition at line 127 of file ITkPixelCablingData.h.

Member Function Documentation

◆ addEntryOffOn() [1/3]

void ITkPixelCablingData::addEntryOffOn ( const Identifier & idOff,
const ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > & moduleInfo )

Definition at line 65 of file ITkPixelCablingData.cxx.

65 {
66 m_offline2ModuleInfoMap.insert({offlineId, moduleInfo});
67}
Identifier offlineId(const ITkPixelOnlineId &id) const
std::unordered_map< Identifier, ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > > m_offline2ModuleInfoMap

◆ addEntryOffOn() [2/3]

void ITkPixelCablingData::addEntryOffOn ( const Identifier & idOff,
const ITkPixelOnlineId & idOn )

Definition at line 61 of file ITkPixelCablingData.cxx.

61 {
63}
ITkPixelOnlineId onlineId(const Identifier &id) const
std::unordered_map< Identifier, ITkPixelOnlineId > m_offline2OnlineMap

◆ addEntryOffOn() [3/3]

void ITkPixelCablingData::addEntryOffOn ( const uint32_t & offlineDetectorResourceID,
const ITkPixelOnlineId & onlineId )

Definition at line 69 of file ITkPixelCablingData.cxx.

69 {
70 m_offlineDetectorResourceID2OnlineIdMap.insert({offlineDetectorResourceID, onlineId});
71}
std::unordered_map< uint32_t, ITkPixelOnlineId > m_offlineDetectorResourceID2OnlineIdMap

◆ addEntryOnOff() [1/2]

void ITkPixelCablingData::addEntryOnOff ( const ITkPixelOnlineId & idOn,
const Identifier & idOff )

Definition at line 77 of file ITkPixelCablingData.cxx.

77 {
79}
std::unordered_map< ITkPixelOnlineId, Identifier > m_online2OfflineMap

◆ addEntryOnOff() [2/2]

void ITkPixelCablingData::addEntryOnOff ( const ITkPixelOnlineId & idOn,
const ITkPixelCabling::ModuleInfo< Identifier > & moduleInfo )

Definition at line 81 of file ITkPixelCablingData.cxx.

81 {
82 m_online2ModuleInfoMap.insert({onlineId, moduleInfo});
83}
std::unordered_map< ITkPixelOnlineId, ITkPixelCabling::ModuleInfo< Identifier > > m_online2ModuleInfoMap

◆ addSourceID()

void ITkPixelCablingData::addSourceID ( const uint32_t & sourceID)

Definition at line 73 of file ITkPixelCablingData.cxx.

73 {
74 m_sourceIDs.push_back(sourceID);
75}
std::vector< uint32_t > m_sourceIDs

◆ addTransformType()

void ITkPixelCablingData::addTransformType ( const uint32_t & moduleID,
const ITkPixelCabling::TransformType & transform )

Definition at line 85 of file ITkPixelCablingData.cxx.

85 {
86 m_module2TransformTypeMap.insert({moduleID, transform});
87}
std::unordered_map< uint32_t, ITkPixelCabling::TransformType > m_module2TransformTypeMap
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.

◆ empty()

bool ITkPixelCablingData::empty ( ) const

Definition at line 16 of file ITkPixelCablingData.cxx.

16 {
18}

◆ forEachOffOn()

template<typename Func>
void ITkPixelCablingData::forEachOffOn ( Func && f) const
inline

Definition at line 146 of file ITkPixelCablingData.h.

146 {
147 for (const auto& [key, val] : m_offlineDetectorResourceID2OnlineIdMap){
148 f(key, val);
149 }
150 }

◆ offlineId()

Identifier ITkPixelCablingData::offlineId ( const ITkPixelOnlineId & id) const

◆ offlineModuleInfo()

ITkPixelCabling::ModuleInfo< Identifier > ITkPixelCablingData::offlineModuleInfo ( const ITkPixelOnlineId & id) const

Definition at line 98 of file ITkPixelCablingData.cxx.

98 {
99 std::unordered_map<ITkPixelOnlineId, ITkPixelCabling::ModuleInfo<Identifier>>::const_iterator it = m_online2ModuleInfoMap.find(id);
100 if (it == m_online2ModuleInfoMap.end()){
102 }
103
104 return it->second;
105}

◆ onlineId() [1/2]

ITkPixelOnlineId ITkPixelCablingData::onlineId ( const Identifier & id) const

Definition at line 26 of file ITkPixelCablingData.cxx.

26 {
27 const ITkPixelOnlineId invalidId;
28 const auto result = m_offline2OnlineMap.find(id);
29 if (result == m_offline2OnlineMap.end()) return invalidId;
30 return result->second;
31}
static const ITkStripOnlineId invalidId

◆ onlineId() [2/2]

ITkPixelOnlineId ITkPixelCablingData::onlineId ( const uint32_t & offlineDetectorResourceID) const

Definition at line 107 of file ITkPixelCablingData.cxx.

107 {
108 std::unordered_map<uint32_t, ITkPixelOnlineId>::const_iterator it = m_offlineDetectorResourceID2OnlineIdMap.find(offlineDetectorResourceID);
110 return ITkPixelOnlineId();
111 }
112
113 return it->second;
114}

◆ onlineIdMap()

const std::unordered_map< uint32_t, ITkPixelOnlineId > & ITkPixelCablingData::onlineIdMap ( ) const
inline

Definition at line 143 of file ITkPixelCablingData.h.

◆ onlineModuleInfo()

ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > ITkPixelCablingData::onlineModuleInfo ( const Identifier & id) const

Definition at line 89 of file ITkPixelCablingData.cxx.

89 {
90 std::unordered_map<Identifier, ITkPixelCabling::ModuleInfo<ITkPixelOnlineId>>::const_iterator it = m_offline2ModuleInfoMap.find(id);
91 if (it == m_offline2ModuleInfoMap.end()){
93 }
94
95 return it->second;
96}

◆ print()

void ITkPixelCablingData::print ( ) const

Definition at line 33 of file ITkPixelCablingData.cxx.

33 {
34 std::cout << "Online -> Offline ModuleInfo map " << m_online2ModuleInfoMap.size() << "\n";
35 std::cout << "Offline -> Online ModuleInfo map " << m_offline2ModuleInfoMap.size() << "\n";
36}

◆ size()

std::size_t ITkPixelCablingData::size ( ) const

Definition at line 21 of file ITkPixelCablingData.cxx.

21 {
23}

◆ sourceIDs()

const std::vector< uint32_t > & ITkPixelCablingData::sourceIDs ( ) const
inline

Definition at line 144 of file ITkPixelCablingData.h.

144{return m_sourceIDs;}

◆ transformType()

ITkPixelCabling::TransformType ITkPixelCablingData::transformType ( const uint32_t & moduleID) const

Definition at line 116 of file ITkPixelCablingData.cxx.

116 {
117 std::unordered_map<uint32_t, ITkPixelCabling::TransformType>::const_iterator it = m_module2TransformTypeMap.find(moduleID);
118 if (it == m_module2TransformTypeMap.end()){
120 }
121
122 return it->second;
123}

◆ operator<<

std::ostream & operator<< ( std::ostream & os,
const ITkPixelCablingData & cabling )
friend

stream insertion for debugging

Definition at line 52 of file ITkPixelCablingData.cxx.

53 {
54 for (const auto & [offlineId, onlineId]:cabling.m_offline2OnlineMap){
55 os<<offlineId<<", "<<onlineId<<"\n";
56 }
57 os<<std::endl;
58 return os;
59}

◆ operator>>

std::istream & operator>> ( std::istream & is,
ITkPixelCablingData & cabling )
friend

stream extraction to read value from stream into ITkPixelCablingData

Definition at line 40 of file ITkPixelCablingData.cxx.

40 {
41 unsigned int onlineInt{}, offlineInt{};
42 //very primitive, should refine with regex and value range checking
43 while(is>>offlineInt>>onlineInt){
44 const Identifier offlineId(offlineInt);
45 const ITkPixelOnlineId onlineId(onlineInt);
46 cabling.m_offline2OnlineMap[offlineId] = onlineId;
47 }
48 return is;
49}

Member Data Documentation

◆ m_module2TransformTypeMap

std::unordered_map<uint32_t, ITkPixelCabling::TransformType> ITkPixelCablingData::m_module2TransformTypeMap {}
private

Definition at line 204 of file ITkPixelCablingData.h.

204{};

◆ m_offline2ModuleInfoMap

std::unordered_map<Identifier, ITkPixelCabling::ModuleInfo<ITkPixelOnlineId> > ITkPixelCablingData::m_offline2ModuleInfoMap
private

Definition at line 183 of file ITkPixelCablingData.h.

◆ m_offline2ModuleType

std::unordered_map<Identifier, ITkPixelCabling::ModuleType> ITkPixelCablingData::m_offline2ModuleType
private

Definition at line 195 of file ITkPixelCablingData.h.

◆ m_offline2OnlineMap

std::unordered_map<Identifier, ITkPixelOnlineId> ITkPixelCablingData::m_offline2OnlineMap
private

Definition at line 180 of file ITkPixelCablingData.h.

◆ m_offlineDetectorResourceID2OnlineIdMap

std::unordered_map<uint32_t, ITkPixelOnlineId> ITkPixelCablingData::m_offlineDetectorResourceID2OnlineIdMap {}
private

Definition at line 198 of file ITkPixelCablingData.h.

198{};

◆ m_online2ModuleInfoMap

std::unordered_map<ITkPixelOnlineId, ITkPixelCabling::ModuleInfo<Identifier> > ITkPixelCablingData::m_online2ModuleInfoMap
private

Definition at line 189 of file ITkPixelCablingData.h.

◆ m_online2ModuleType

std::unordered_map<ITkPixelOnlineId, ITkPixelCabling::ModuleType> ITkPixelCablingData::m_online2ModuleType
private

Definition at line 192 of file ITkPixelCablingData.h.

◆ m_online2OfflineMap

std::unordered_map<ITkPixelOnlineId, Identifier> ITkPixelCablingData::m_online2OfflineMap
private

Definition at line 186 of file ITkPixelCablingData.h.

◆ m_sourceIDs

std::vector<uint32_t> ITkPixelCablingData::m_sourceIDs {}
private

Definition at line 201 of file ITkPixelCablingData.h.

201{};

The documentation for this class was generated from the following files: