18 std::map<std::string , int > colM;
19 std::vector<std::string > colNames;
32 colNames.push_back(
"CONFIG_KEY" );
33 colNames.push_back(
"KEY_TYPE" );
34 colNames.push_back(
"KEY_ALIAS" );
35 colNames.push_back(
"VERSION" );
36 colNames.push_back(
"KIND_OF_COND" );
37 colNames.push_back(
"TTC_OBJ_DATA_FILE");
38 colNames.push_back(
"TTC_OBJ_DATA_CLOB");
40 for(
unsigned int c = 0 ;
c < tableMat[0].size() ;
c++)
42 for(
unsigned int n=0;
n<colNames.size();
n++)
44 if(tableMat[0][
c] == colNames[
n])
46 colM[colNames[
n]] =
c;
51 for(
unsigned int n=0;
n<colNames.size();
n++)
53 if(colM.find(colNames[
n]) == colM.end())
55 std::cerr <<
"[PixelTTCciConfig::PixelTTCciConfig()]\tCouldn't find in the database the column with name " << colNames[
n] << std::endl;
59 ttcConfigStream_ << tableMat[1][colM[
"TTC_OBJ_DATA_CLOB"]] ;
66 std::string mthn =
"]\t[PixelTKFECConfig::PixelTKFECConfig()]\t\t\t " ;
67 std::ifstream
in(filename.c_str());
70 std::cout << __LINE__ << mthn <<
"Could not open: " << filename << std::endl;
71 throw std::runtime_error(
"Failed to open file "+filename);
74 std::cout << __LINE__ << mthn <<
"Opened : " << filename << std::endl;
89 if (dir!=
"") dir+=
"/";
91 std::ofstream
out(filename.c_str());
98 out << configstr << endl;
108 std::ofstream *outstream,
109 std::ofstream *out1stream,
110 std::ofstream *out2stream)
const 112 std::string mthn =
"[PixelTTCciConfig::writeXMLHeader()]\t\t\t " ;
113 std::stringstream maskFullPath ;
118 std::cout << mthn <<
"Writing to: " << maskFullPath.str() << std::endl ;
120 outstream->open(maskFullPath.str().c_str()) ;
122 *outstream <<
"<?xml version='1.0' encoding='UTF-8' standalone='yes'?>" << std::endl ;
123 *outstream <<
"<ROOT xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>" << std::endl ;
124 *outstream <<
"" << std::endl ;
125 *outstream <<
" <HEADER>" << std::endl ;
126 *outstream <<
" <TYPE>" << std::endl ;
127 *outstream <<
" <EXTENSION_TABLE_NAME>PIXEL_TTC_PARAMETERS</EXTENSION_TABLE_NAME>" << std::endl ;
128 *outstream <<
" <NAME>TTC Configuration Parameters</NAME>" << std::endl ;
129 *outstream <<
" </TYPE>" << std::endl ;
130 *outstream <<
" <RUN>" << std::endl ;
131 *outstream <<
" <RUN_TYPE>TTC Configuration Parameters</RUN_TYPE>" << std::endl ;
132 *outstream <<
" <RUN_NUMBER>1</RUN_NUMBER>" << std::endl ;
134 *outstream <<
" <LOCATION>CERN P5</LOCATION>" << std::endl ;
135 *outstream <<
" </RUN>" << std::endl ;
136 *outstream <<
" </HEADER>" << std::endl ;
137 *outstream <<
"" << std::endl ;
138 *outstream <<
" <DATA_SET>" << std::endl ;
139 *outstream <<
"" << std::endl ;
140 *outstream <<
" <VERSION>" << version <<
"</VERSION>" << std::endl ;
141 *outstream <<
" <COMMENT_DESCRIPTION>" <<
getComment() <<
"</COMMENT_DESCRIPTION>" << std::endl ;
142 *outstream <<
" <CREATED_BY_USER>" <<
getAuthor() <<
"</CREATED_BY_USER>" << std::endl ;
143 *outstream <<
"" << std::endl ;
144 *outstream <<
" <PART>" << std::endl ;
145 *outstream <<
" <NAME_LABEL>CMS-PIXEL-ROOT</NAME_LABEL>" << std::endl ;
146 *outstream <<
" <KIND_OF_PART>Detector ROOT</KIND_OF_PART>" << std::endl ;
147 *outstream <<
" </PART>" << std::endl ;
153 std::ofstream *out1stream,
154 std::ofstream *out2stream)
const 156 std::string mthn =
"[PixelTTCciConfig::writeXML()]\t\t\t " ;
158 *outstream <<
" " << std::endl ;
159 *outstream <<
" <DATA>" << std::endl ;
160 *outstream <<
" <TTC_OBJ_DATA_FILE>TTCciConfiguration.txt</TTC_OBJ_DATA_FILE>" << std::endl ;
161 *outstream <<
" </DATA>" << std::endl ;
162 *outstream <<
" " << std::endl ;
167 std::ofstream *out1stream,
168 std::ofstream *out2stream )
const 170 std::string mthn =
"[PixelTTCciConfig::writeXMLTrailer()]\t\t\t " ;
172 *outstream <<
" " << std::endl ;
173 *outstream <<
" </DATA_SET>" << std::endl ;
174 *outstream <<
"</ROOT>" << std::endl ;
177 std::cout << mthn <<
"Data written " << std::endl ;
This file contains the base class for "pixel configuration data" management.
std::stringstream ttcConfigStream_
void writeXMLTrailer(std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
std::string getComment() const
std::string getAuthor() const
void writeXML(pos::PixelConfigKey key, int version, std::string path) const override
void writeASCII(std::string dir) const override
PixelTTCciConfig(std::string filename)
void writeXMLHeader(pos::PixelConfigKey key, int version, std::string path, std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override