ATLAS Offline Software
Public Member Functions | Private Attributes | Friends | List of all members
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 More...
 
std::ostream & operator<< (std::ostream &os, const ITkPixelCablingData &cabling)
 stream insertion for debugging More...
 

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 }

◆ addEntryOffOn() [2/2]

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

Definition at line 61 of file ITkPixelCablingData.cxx.

61  {
63 }

◆ addEntryOnOff() [1/2]

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

Definition at line 69 of file ITkPixelCablingData.cxx.

69  {
71 }

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

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

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

Friends And Related Function Documentation

◆ 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:
Undefined
@ Undefined
Definition: MaterialTypes.h:8
get_generator_info.result
result
Definition: get_generator_info.py:21
ITkPixelCablingData::m_online2ModuleInfoMap
std::unordered_map< ITkPixelOnlineId, ITkPixelCabling::ModuleInfo< Identifier > > m_online2ModuleInfoMap
Definition: ITkPixelCablingData.h:147
ITkPixelCablingData::m_online2OfflineMap
std::unordered_map< ITkPixelOnlineId, Identifier > m_online2OfflineMap
Definition: ITkPixelCablingData.h:144
ReadCellNoiseFromCool.cabling
cabling
Definition: ReadCellNoiseFromCool.py:154
skel.it
it
Definition: skel.GENtoEVGEN.py:407
ITkPixelCablingData::m_offline2ModuleInfoMap
std::unordered_map< Identifier, ITkPixelCabling::ModuleInfo< ITkPixelOnlineId > > m_offline2ModuleInfoMap
Definition: ITkPixelCablingData.h:141
ITkPixelCablingData::m_offline2OnlineMap
std::unordered_map< Identifier, ITkPixelOnlineId > m_offline2OnlineMap
Definition: ITkPixelCablingData.h:138
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
ITkPixelCablingData::onlineId
ITkPixelOnlineId onlineId(const Identifier &id) const
Definition: ITkPixelCablingData.cxx:26
ITkPixelCablingData::offlineId
Identifier offlineId(const ITkPixelOnlineId &id) const
ITkPixelOnlineId
Definition: ITkPixelOnlineId.h:18
ITkPixelCabling::UndefinedTransform
@ UndefinedTransform
Definition: ITkPixelCablingData.h:42
Identifier
Definition: IdentifierFieldParser.cxx:14