CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
pos::PixelLTCConfig Class Reference

This is the documentation about PixelLTCConfig... More...

#include <PixelLTCConfig.h>

Inheritance diagram for pos::PixelLTCConfig:
pos::PixelConfigBase

Public Member Functions

std::stringstream & getLTCConfigStream ()
 
 PixelLTCConfig (std::vector< std::vector< std::string > > &tableMat)
 
 PixelLTCConfig (std::string filename)
 
void writeASCII (std::string dir) const override
 
void writeXML (pos::PixelConfigKey key, int version, std::string path) const override
 
void writeXML (std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
 
void writeXMLHeader (pos::PixelConfigKey key, int version, std::string path, std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
 
void writeXMLTrailer (std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
 
- Public Member Functions inherited from pos::PixelConfigBase
std::string creator ()
 
std::string date ()
 
std::string description ()
 
std::string getAuthor () const
 
std::string getComment () const
 
 PixelConfigBase (std::string description, std::string creator, std::string date)
 
void setAuthor (std::string author)
 
void setComment (std::string comment)
 
virtual void writeXML (std::ofstream *out) const
 
virtual void writeXMLHeader (pos::PixelConfigKey key, int version, std::string path, std::ofstream *out) const
 
virtual void writeXMLTrailer (std::ofstream *out) const
 
virtual ~PixelConfigBase ()
 

Private Attributes

std::stringstream ltcConfigStream_
 

Detailed Description

This is the documentation about PixelLTCConfig...

" "

This class reads the LTC configuration file

Definition at line 30 of file PixelLTCConfig.h.

Constructor & Destructor Documentation

pos::PixelLTCConfig::PixelLTCConfig ( std::vector< std::vector< std::string > > &  tableMat)
PixelLTCConfig::PixelLTCConfig ( std::string  filename)

Definition at line 64 of file PixelLTCConfig.cc.

References gather_cfg::cout, recoMuon::in, geometryCSVtoXML::line, ltcConfigStream_, and AlCaHLTBitMon_QueryRunRegistry::string.

64  :
65  PixelConfigBase(" "," "," "){
66 
67  std::string mthn = "[PixelLTCConfig::PixelLTCConfig()]\t\t\t " ;
68  std::ifstream in(filename.c_str());
69 
70  if (!in.good()){
71  std::cout << __LINE__ << "]\t" << mthn << "Could not open: " << filename << std::endl;
72  throw std::runtime_error("Failed to open file "+filename);
73  }
74  else {
75  std::cout << __LINE__ << "]\t" << mthn << "Opened: " << filename << std::endl;
76  }
77 
78  //ltcConfigPath_ = filename;
79  string line;
80  while (!in.eof()) {
81  getline (in,line);
82  ltcConfigStream_ << line << endl;
83  }
84 
85 }
std::stringstream ltcConfigStream_
PixelConfigBase(std::string description, std::string creator, std::string date)

Member Function Documentation

std::stringstream& pos::PixelLTCConfig::getLTCConfigStream ( )
inline

Definition at line 37 of file PixelLTCConfig.h.

References dir, ltcConfigStream_, AlCaHLTBitMon_QueryRunRegistry::string, and writeASCII().

37 {return ltcConfigStream_;}
std::stringstream ltcConfigStream_
void PixelLTCConfig::writeASCII ( std::string  dir) const
overridevirtual

Implements pos::PixelConfigBase.

Definition at line 87 of file PixelLTCConfig.cc.

References corrVsCorr::filename, ltcConfigStream_, MillePedeFileConverter_cfg::out, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by getLTCConfigStream(), and writeXMLHeader().

87  {
88 
89  if (dir!="") dir+="/";
90  std::string filename=dir+"LTCConfiguration.txt";
91  std::ofstream out(filename.c_str());
92 
93  //std::ifstream in(ltcConfigPath_.c_str());
94  //assert(in.good());
95 
96  string configstr = ltcConfigStream_.str();
97 
98  out << configstr << endl;
99 
100  out.close();
101 
102 }
std::stringstream ltcConfigStream_
dbl *** dir
Definition: mlp_gen.cc:35
void pos::PixelLTCConfig::writeXML ( pos::PixelConfigKey  key,
int  version,
std::string  path 
) const
inlineoverridevirtual
void PixelLTCConfig::writeXML ( std::ofstream *  out,
std::ofstream *  out1 = nullptr,
std::ofstream *  out2 = nullptr 
) const
overridevirtual

Reimplemented from pos::PixelConfigBase.

Definition at line 152 of file PixelLTCConfig.cc.

References AlCaHLTBitMon_QueryRunRegistry::string.

155 {
156  std::string mthn = "[PixelLTCConfig::writeXML()]\t\t\t " ;
157 
158  *outstream << " <DATA>" << std::endl ;
159  *outstream << " <LTC_OBJ_DATA_FILE>./LTCConfiguration.txt</LTC_OBJ_DATA_FILE>" << std::endl ;
160  *outstream << " </DATA>" << std::endl ;
161 }
void PixelLTCConfig::writeXMLHeader ( pos::PixelConfigKey  key,
int  version,
std::string  path,
std::ofstream *  out,
std::ofstream *  out1 = nullptr,
std::ofstream *  out2 = nullptr 
) const
overridevirtual

Reimplemented from pos::PixelConfigBase.

Definition at line 105 of file PixelLTCConfig.cc.

References gather_cfg::cout, pos::PixelConfigBase::getAuthor(), pos::PixelConfigBase::getComment(), pos::PixelTimeFormatter::getmSecTime(), pos::PixelTimeFormatter::getTime(), AlCaHLTBitMon_QueryRunRegistry::string, and writeASCII().

Referenced by writeXML().

111 {
112  std::string mthn = "[PixelLTCConfig::writeXMLHeader()]\t\t\t " ;
113  std::stringstream maskFullPath ;
114 
115  writeASCII(path) ;
116 
117  maskFullPath << path << "/Pixel_LtcParameters_" << PixelTimeFormatter::getmSecTime() << ".xml";
118  std::cout << __LINE__ << "]\t" << mthn << "Writing to: " << maskFullPath.str() << std::endl ;
119 
120  outstream->open(maskFullPath.str().c_str()) ;
121 
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_LTC_PARAMETERS</EXTENSION_TABLE_NAME>" << std::endl ;
128  *outstream << " <NAME>LTC Configuration Parameters</NAME>" << std::endl ;
129  *outstream << " </TYPE>" << std::endl ;
130  *outstream << " <RUN>" << std::endl ;
131  *outstream << " <RUN_TYPE>LTC Configuration Parameters</RUN_TYPE>" << std::endl ;
132  *outstream << " <RUN_NUMBER>1</RUN_NUMBER>" << std::endl ;
133  *outstream << " <RUN_BEGIN_TIMESTAMP>" << PixelTimeFormatter::getTime() << "</RUN_BEGIN_TIMESTAMP>" << 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 ;
148 
149 }
static std::string getmSecTime(void)
static std::string getTime(void)
std::string getComment() const
std::string getAuthor() const
void writeASCII(std::string dir) const override
void PixelLTCConfig::writeXMLTrailer ( std::ofstream *  out,
std::ofstream *  out1 = nullptr,
std::ofstream *  out2 = nullptr 
) const
overridevirtual

Reimplemented from pos::PixelConfigBase.

Definition at line 164 of file PixelLTCConfig.cc.

References gather_cfg::cout, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by writeXML().

167 {
168  std::string mthn = "[PixelLTCConfig::writeXMLTrailer()]\t\t\t " ;
169 
170  *outstream << " </DATA_SET>" << std::endl ;
171  *outstream << "</ROOT>" << std::endl ;
172 
173  outstream->close() ;
174  std::cout << __LINE__ << "]\t" << mthn << "Data written " << std::endl ;
175 
176 }

Member Data Documentation

std::stringstream pos::PixelLTCConfig::ltcConfigStream_
private

Definition at line 59 of file PixelLTCConfig.h.

Referenced by getLTCConfigStream(), PixelLTCConfig(), and writeASCII().