39 unsigned int onlineInt{}, offlineInt{};
40 std::string extendedId{};
44 while(getline(is,line)){
45 std::stringstream
ss(line);
47 std::vector<std::string> words;
48 std::string offIdShort =
"";
49 if(line[0] ==
'#')
continue;
50 while(getline(
ss,t,
' ')){
53 if(words[0].
size()>10) offIdShort=words[0].erase(10);
54 else offIdShort=words[0];
55 offlineInt=
static_cast<unsigned int>(std::strtoul(offIdShort.c_str(),NULL,0));
56 onlineInt=
static_cast<unsigned int>(std::strtoul(words[2].c_str(),NULL,0));
59 cabling.m_offline2OnlineMap[offlineId] =
onlineId;
60 cabling.m_hash2OnlineIdArray[indx] =
onlineId;
61 cabling.m_rodIdSet.insert(
onlineId.rod());
72 for (
const auto & [offlineId,
onlineId]:cabling.m_offline2OnlineMap){
std::istream & operator>>(std::istream &is, ITkStripCablingData &cabling)
std::ostream & operator<<(std::ostream &os, const ITkStripCablingData &cabling)
std::set< std::uint32_t > m_rodIdSet
Set of robIds.
static const ITkStripOnlineId s_invalidId
Invalid SCT_OnlineId.
void getRods(std::vector< std::uint32_t > &usersVector) const
Get a vector of all RODs.
std::unordered_map< Identifier, ITkStripOnlineId > m_offline2OnlineMap
std::array< ITkStripOnlineId, NUMBER_OF_HASHES > m_hash2OnlineIdArray
Array for hash to onlineId; hash goes from 0-49536.
ITkStripOnlineId getOnlineIdFromHash(const IdentifierHash &hash) const
Get ITkStripOnlineId from IdentifierHash.
ITkStripOnlineId onlineId(const Identifier &id) const
static const IdentifierHash s_invalidHash
Invalid IdentifierHash.
This is a "hash" representation of an Identifier.