File indexing completed on 2023-03-17 10:46:40
0001 #include "CondFormats/CSCObjects/interface/CSCReadoutMappingFromFile.h"
0002 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0003 #include <iostream>
0004 #include <fstream>
0005 #include <sstream>
0006
0007 CSCReadoutMappingFromFile::CSCReadoutMappingFromFile(std::string iName) { fill(std::move(iName)); }
0008
0009 CSCReadoutMappingFromFile::~CSCReadoutMappingFromFile() {}
0010
0011 void CSCReadoutMappingFromFile::fill(std::string fileName) {
0012 theMappingFile = std::move(fileName);
0013 std::ifstream in(theMappingFile.c_str());
0014 std::string line;
0015 const std::string commentFlag = "#";
0016 if (!in) {
0017 edm::LogError("CSC") << " Failed to open file " << theMappingFile << " containing mapping.";
0018 } else {
0019 edm::LogInfo("CSC") << " Opened file " << theMappingFile << " containing mapping.";
0020
0021 while (getline(in, line)) {
0022
0023 if (line[0] != commentFlag[0]) {
0024 int i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11;
0025 std::istringstream is(line);
0026 is >> i1 >> i2 >> i3 >> i4 >> i5 >> i6 >> i7 >> i8 >> i9 >> i10 >> i11;
0027
0028
0029 addRecord(i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11);
0030 }
0031 }
0032 }
0033
0034 return;
0035 }