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
void addEntryOffOn (const Identifier &idOff, const ITkPixelOnlineId &idOn)
void addEntryOffOn (const Identifier &idOff, const ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > &moduleInfo)
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

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 105 of file ITkPixelCablingData.h.

Member Function Documentation

◆ addEntryOffOn() [1/2]

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/2]

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

◆ addEntryOnOff() [1/2]

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

Definition at line 69 of file ITkPixelCablingData.cxx.

69 {
71}
std::unordered_map< ITkPixelOnlineId, Identifier > m_online2OfflineMap

◆ addEntryOnOff() [2/2]

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

Definition at line 73 of file ITkPixelCablingData.cxx.

73 {
74 m_online2ModuleInfoMap.insert({onlineId, moduleInfo});
75}
std::unordered_map< ITkPixelOnlineId, ITkPixelCabling::ModuleInfo< Identifier > > m_online2ModuleInfoMap

◆ empty()

bool ITkPixelCablingData::empty ( ) const

Definition at line 16 of file ITkPixelCablingData.cxx.

16 {
17 return m_offline2OnlineMap.empty();
18}

◆ offlineId()

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

◆ offlineModuleInfo()

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

Definition at line 86 of file ITkPixelCablingData.cxx.

86 {
87 std::unordered_map<ITkPixelOnlineId, ITkPixelCabling::ModuleInfo<Identifier>>::const_iterator it = m_online2ModuleInfoMap.find(id);
88 if (it == m_online2ModuleInfoMap.end()){
90 }
91
92 return it->second;
93}

◆ onlineId()

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

◆ onlineModuleInfo()

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

Definition at line 77 of file ITkPixelCablingData.cxx.

77 {
78 std::unordered_map<Identifier, ITkPixelCabling::ModuleInfo<ITkPixelOnlineId>>::const_iterator it = m_offline2ModuleInfoMap.find(id);
79 if (it == m_offline2ModuleInfoMap.end()){
81 }
82
83 return it->second;
84}

◆ 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 {
22 return m_offline2OnlineMap.size();
23}

◆ 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_offline2ModuleInfoMap

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

Definition at line 141 of file ITkPixelCablingData.h.

◆ m_offline2ModuleType

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

Definition at line 153 of file ITkPixelCablingData.h.

◆ m_offline2OnlineMap

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

Definition at line 138 of file ITkPixelCablingData.h.

◆ m_online2ModuleInfoMap

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

Definition at line 147 of file ITkPixelCablingData.h.

◆ m_online2ModuleType

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

Definition at line 150 of file ITkPixelCablingData.h.

◆ m_online2OfflineMap

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

Definition at line 144 of file ITkPixelCablingData.h.


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