CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SiPixelCPEGenericErrorParm.cc
Go to the documentation of this file.
3 #include <fstream>
4 
6 {
7  //--- Open the file
8  std::ifstream in(file.c_str(), std::ios::in);
9 
10  //--- Currently do not need to store part of detector, but is in input file
11  int part;
12  set_version(version);
13 
14  DbEntry Entry;
15  in >> part >> Entry.bias >> Entry.pix_height >> Entry.ave_Qclus >> Entry.sigma >> Entry.rms;
16 
17  while(!in.eof()) {
18  errors_.push_back( Entry );
19 
20  in >> part >> Entry.bias >> Entry.pix_height
21  >> Entry.ave_Qclus >> Entry.sigma >> Entry.rms;
22  }
23  //--- Finished parsing the file, we're done.
24  in.close();
25 
26  //--- Specify the current binning sizes to use
27  DbEntryBinSize ErrorsBinSize;
28  //--- Part = 1 By
29  ErrorsBinSize.partBin_size = 0;
30  ErrorsBinSize.sizeBin_size = 40;
31  ErrorsBinSize.alphaBin_size = 10;
32  ErrorsBinSize.betaBin_size = 1;
33  errorsBinSize_.push_back(ErrorsBinSize);
34  //--- Part = 2 Bx
35  ErrorsBinSize.partBin_size = 240;
36  ErrorsBinSize.alphaBin_size = 1;
37  ErrorsBinSize.betaBin_size = 10;
38  errorsBinSize_.push_back(ErrorsBinSize);
39  //--- Part = 3 Fy
40  ErrorsBinSize.partBin_size = 360;
41  ErrorsBinSize.alphaBin_size = 10;
42  ErrorsBinSize.betaBin_size = 1;
43  errorsBinSize_.push_back(ErrorsBinSize);
44  //--- Part = 4 Fx
45  ErrorsBinSize.partBin_size = 380;
46  ErrorsBinSize.alphaBin_size = 1;
47  ErrorsBinSize.betaBin_size = 10;
48  errorsBinSize_.push_back(ErrorsBinSize);
49 }
50 
51 std::ostream& operator<<(std::ostream& s, const SiPixelCPEGenericErrorParm& genericErrors)
52 {
53  for (unsigned int count=0; count < genericErrors.errors_.size(); ++count) {
54 
55  s.precision(6);
56 
57  s << genericErrors.errors_[count].bias << " "
58  << genericErrors.errors_[count].pix_height << " "
59  << genericErrors.errors_[count].ave_Qclus << " " << std::fixed
60  << genericErrors.errors_[count].sigma << " "
61  << genericErrors.errors_[count].rms << std::endl;
62 
63  s.unsetf ( std::ios_base::fixed );
64  }
65  return s;
66 }
Definition: Entry.h:18
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
void fillCPEGenericErrorParm(double version, std::string file)
Function to fill the db object given a filename.
A struct to hold the binning information for (part, size, alpha, beta)
part
Definition: HCALResponse.h:20
A struct to hold information for a given (alpha,beta,size)