test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GlobalScales.cc
Go to the documentation of this file.
13 
14 #include <iostream>
15 #include <fstream>
16 #include <iomanip>
17 
18 
19 
22 
23 
24 // constructor
26 {
27 
28 
29 }
30 
31 // destructor
33 
34 }
35 
36 std::string l1t::GlobalScales::getScalesName() const { return m_ScaleSetName;}
37 
38 
39 void l1t::GlobalScales::setLUT_CalMuEta(std::string lutName, std::vector<long long> lut)
40 {
41  if (m_lut_CalMuEta.count(lutName) != 0) {
42  LogTrace("GlobalScales") << " LUT \"" << lutName
43  << "\"already exists in the LUT map- not inserted!" << std::endl;
44  return;
45  }
46 
47  // Insert this LUT into the Table
48  m_lut_CalMuEta.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
49 
50  return;
51 
52 }
53 
54 
55 void l1t::GlobalScales::setLUT_CalMuPhi(std::string lutName, std::vector<long long> lut)
56 {
57  if (m_lut_CalMuPhi.count(lutName) != 0) {
58  LogTrace("GlobalScales") << " LUT \"" << lutName
59  << "\"already exists in the LUT map- not inserted!" << std::endl;
60  return;
61  }
62 
63  // Insert this LUT into the Table
64  m_lut_CalMuPhi.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
65 
66  return;
67 
68 }
69 
70 
71 void l1t::GlobalScales::setLUT_DeltaEta(std::string lutName, std::vector<long long> lut, unsigned int precision)
72 {
73  if (m_lut_DeltaEta.count(lutName) != 0) {
74  LogTrace("GlobalScales") << " LUT \"" << lutName
75  << "\"already exists in the LUT map- not inserted!" << std::endl;
76  return;
77  }
78 
79  // Insert this LUT into the Table
80  m_lut_DeltaEta.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
81  m_Prec_DeltaEta.insert(std::map<std::string, unsigned int>::value_type(lutName,precision));
82 
83  return;
84 
85 }
86 
87 void l1t::GlobalScales::setLUT_DeltaPhi(std::string lutName, std::vector<long long> lut, unsigned int precision)
88 {
89  if (m_lut_DeltaPhi.count(lutName) != 0) {
90  LogTrace("GlobalScales") << " LUT \"" << lutName
91  << "\"already exists in the LUT map- not inserted!" << std::endl;
92  return;
93  }
94 
95  // Insert this LUT into the Table
96  m_lut_DeltaPhi.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
97  m_Prec_DeltaPhi.insert(std::map<std::string, unsigned int>::value_type(lutName,precision));
98 
99  return;
100 
101 }
102 
103 void l1t::GlobalScales::setLUT_Pt(std::string lutName, std::vector<long long> lut, unsigned int precision)
104 {
105  if (m_lut_Pt.count(lutName) != 0) {
106  LogTrace("GlobalScales") << " LUT \"" << lutName
107  << "\"already exists in the LUT map- not inserted!" << std::endl;
108  return;
109  }
110 
111  // Insert this LUT into the Table
112  m_lut_Pt.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
113  m_Prec_Pt.insert(std::map<std::string, unsigned int>::value_type(lutName,precision));
114 
115  return;
116 
117 }
118 
119 void l1t::GlobalScales::setLUT_Cosh(std::string lutName, std::vector<long long> lut, unsigned int precision)
120 {
121  if (m_lut_Cosh.count(lutName) != 0) {
122  LogTrace("GlobalScales") << " LUT \"" << lutName
123  << "\"already exists in the LUT map- not inserted!" << std::endl;
124  return;
125  }
126 
127  // Insert this LUT into the Table
128  m_lut_Cosh.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
129  m_Prec_Cosh.insert(std::map<std::string, unsigned int>::value_type(lutName,precision));
130 
131  return;
132 
133 }
134 
135 void l1t::GlobalScales::setLUT_Cos(std::string lutName, std::vector<long long> lut, unsigned int precision)
136 {
137  if (m_lut_Cos.count(lutName) != 0) {
138  LogTrace("GlobalScales") << " LUT \"" << lutName
139  << "\"already exists in the LUT map- not inserted!" << std::endl;
140  return;
141  }
142 
143  // Insert this LUT into the Table
144  m_lut_Cos.insert(std::map<std::string, std::vector<long long>>::value_type(lutName,lut));
145  m_Prec_Cos.insert(std::map<std::string, unsigned int>::value_type(lutName,precision));
146 
147  return;
148 
149 }
150 
151 
152 long long l1t::GlobalScales::getLUT_CalMuEta(std::string lutName, int element) const
153 {
154  long long value = 0;
155 
156  if(element < (int)m_lut_CalMuEta.find(lutName)->second.size()) {
157  value = m_lut_CalMuEta.find(lutName)->second.at(element);
158  } else {
159  std::cout << "Warning: Element Requested " << element << " too large for CalMuEta LUT (" << lutName <<") size = " << m_lut_CalMuEta.find(lutName)->second.size() << std::endl;
160  }
161  return value;
162 }
163 
164 long long l1t::GlobalScales::getLUT_CalMuPhi(std::string lutName, int element) const
165 {
166  long long value = 0;
167 
168  if(element < (int)m_lut_CalMuPhi.find(lutName)->second.size()) {
169  value = m_lut_CalMuPhi.find(lutName)->second.at(element);
170  } else {
171  std::cout << "Warning: Element Requested " << element << " too large for CalMuPhi LUT (" << lutName <<") size = " << m_lut_CalMuPhi.find(lutName)->second.size() << std::endl;
172  }
173  return value;
174 }
175 
176 
177 long long l1t::GlobalScales::getLUT_DeltaEta(std::string lutName, int element) const
178 {
179  long long value = 0;
180 
181  //first check whether this LUT exists
182  if(m_lut_DeltaEta.find(lutName) == m_lut_DeltaEta.end()) {
183 
184  //does not exist. Check for oppoisite ordering
185  std::size_t pos = lutName.find("-");
186  std::string name = lutName.substr(pos+1);
187  name += "-";
188  name += lutName.substr(0,pos);
189 
190  //check again
191  if(m_lut_DeltaEta.find(name) == m_lut_DeltaEta.end()) {
192  std::cout << "Warning: No LUT by name "<< lutName << " or " << name << " exists! " << std::endl;
193  return value;
194  } else {
195  lutName = name;
196  }
197  }
198 
199 
200  if(element < (int)m_lut_DeltaEta.find(lutName)->second.size()) {
201  value = m_lut_DeltaEta.find(lutName)->second.at(element);
202  } else {
203  std::cout << "Warning: Element Requested " << element << " too large for DeltaEta LUT (" << lutName <<") size = " << m_lut_DeltaEta.find(lutName)->second.size() << std::endl;
204  }
205  return value;
206 }
208 {
209  unsigned int value = 0;
210 
211  if(m_Prec_DeltaEta.find(lutName) != m_Prec_DeltaEta.end()) {
212  value = m_Prec_DeltaEta.find(lutName)->second;
213  } else {
214 
215  //does not exist. Check for oppoisite ordering
216  std::size_t pos = lutName.find("-");
217  std::string name = lutName.substr(pos+1);
218  name += "-";
219  name += lutName.substr(0,pos);
220 
221  //check again
222  if(m_Prec_DeltaEta.find(name) != m_Prec_DeltaEta.end()) {
223  value = m_Prec_DeltaEta.find(name)->second;
224  } else {
225  std::cout << "Warning: LUT " << lutName << " for DeltaEta not found" << std::endl;
226  }
227  }
228  return value;
229 }
230 
231 
232 long long l1t::GlobalScales::getLUT_DeltaPhi(std::string lutName, int element) const
233 {
234  long long value = 0;
235 
236  //first check whether this LUT exists
237  if(m_lut_DeltaPhi.find(lutName) == m_lut_DeltaPhi.end()) {
238 
239  //does not exist. Check for oppoisite ordering
240  std::size_t pos = lutName.find("-");
241  std::string name = lutName.substr(pos+1);
242  name += "-";
243  name += lutName.substr(0,pos);
244 
245  //check again
246  if(m_lut_DeltaPhi.find(name) == m_lut_DeltaPhi.end()) {
247  std::cout << "Warning: No LUT by name "<< lutName << " or " << name << " exists! " << std::endl;
248  return value;
249  } else {
250  lutName = name;
251  }
252  }
253 
254 
255  if(element < (int)m_lut_DeltaPhi.find(lutName)->second.size()) {
256  value = m_lut_DeltaPhi.find(lutName)->second.at(element);
257  } else {
258  std::cout << "Warning: Element Requested " << element << " too large for DeltaPhi LUT (" << lutName <<") size = " << m_lut_DeltaPhi.find(lutName)->second.size() << std::endl;
259  }
260  return value;
261 }
263 {
264  unsigned int value = 0;
265 
266  if(m_Prec_DeltaPhi.find(lutName) != m_Prec_DeltaPhi.end()) {
267  value = m_Prec_DeltaPhi.find(lutName)->second;
268  } else {
269 
270  //does not exist. Check for oppoisite ordering
271  std::size_t pos = lutName.find("-");
272  std::string name = lutName.substr(pos+1);
273  name += "-";
274  name += lutName.substr(0,pos);
275 
276  //check again
277  if(m_Prec_DeltaPhi.find(name) != m_Prec_DeltaPhi.end()) {
278  value = m_Prec_DeltaPhi.find(name)->second;
279  } else {
280  std::cout << "Warning: LUT " << lutName << " for DeltaPhi not found" << std::endl;
281  }
282  }
283  return value;
284 }
285 
286 
287 long long l1t::GlobalScales::getLUT_Pt(std::string lutName, int element) const
288 {
289  long long value = 0;
290 
291  if(element < (int)m_lut_Pt.find(lutName)->second.size()) {
292  value = m_lut_Pt.find(lutName)->second.at(element);
293  } else {
294  std::cout << "Warning: Element Requested " << element << " too large for Pt LUT (" << lutName <<") size = " << m_lut_Pt.find(lutName)->second.size() << std::endl;
295  }
296  return value;
297 }
298 unsigned int l1t::GlobalScales::getPrec_Pt(std::string lutName) const
299 {
300  unsigned int value = 0;
301 
302  if(m_Prec_Pt.find(lutName) != m_Prec_Pt.end()) {
303  value = m_Prec_Pt.find(lutName)->second;
304  } else {
305  std::cout << "Warning: LUT " << lutName << " for Pt not found" << std::endl;
306  }
307  return value;
308 }
309 
310 long long l1t::GlobalScales::getLUT_Cosh(std::string lutName, int element) const
311 {
312  long long value = 0;
313 
314 
315  //first check whether this LUT exists
316  if(m_lut_Cosh.find(lutName) == m_lut_Cosh.end()) {
317 
318  //does not exist. Check for oppoisite ordering
319  std::size_t pos = lutName.find("-");
320  std::string name = lutName.substr(pos+1);
321  name += "-";
322  name += lutName.substr(0,pos);
323 
324  //check again
325  if(m_lut_Cosh.find(name) == m_lut_Cosh.end()) {
326  std::cout << "Warning: No LUT by name "<< lutName << " or " << name << " exists! " << std::endl;
327  return value;
328  } else {
329  lutName = name;
330  }
331  }
332 
333  if(element < (int)m_lut_Cosh.find(lutName)->second.size()) {
334  value = m_lut_Cosh.find(lutName)->second.at(element);
335  } else {
336  std::cout << "Warning: Element Requested " << element << " too large for Cosh LUT (" << lutName <<") size = " << m_lut_Cosh.find(lutName)->second.size() << std::endl;
337  }
338  return value;
339 }
340 unsigned int l1t::GlobalScales::getPrec_Cosh(std::string lutName) const
341 {
342  unsigned int value = 0;
343 
344  if(m_Prec_Cosh.find(lutName) != m_Prec_Cosh.end()) {
345  value = m_Prec_Cosh.find(lutName)->second;
346  } else {
347 
348  //does not exist. Check for oppoisite ordering
349  std::size_t pos = lutName.find("-");
350  std::string name = lutName.substr(pos+1);
351  name += "-";
352  name += lutName.substr(0,pos);
353 
354  //check again
355  if(m_Prec_Cosh.find(name) != m_Prec_Cosh.end()) {
356  value = m_Prec_Cosh.find(name)->second;
357  } else {
358  std::cout << "Warning: LUT " << lutName << " for Cosh not found" << std::endl;
359  }
360  }
361  return value;
362 }
363 
364 long long l1t::GlobalScales::getLUT_Cos(std::string lutName, int element) const
365 {
366  long long value = 0;
367 
368  //first check whether this LUT exists
369  if(m_lut_Cos.find(lutName) == m_lut_Cos.end()) {
370 
371  //does not exist. Check for oppoisite ordering
372  std::size_t pos = lutName.find("-");
373  std::string name = lutName.substr(pos+1);
374  name += "-";
375  name += lutName.substr(0,pos);
376 
377  //check again
378  if(m_lut_Cos.find(name) == m_lut_Cos.end()) {
379  std::cout << "Warning: No LUT by name "<< lutName << " or " << name << " exists! " << std::endl;
380  return value;
381  } else {
382  lutName = name;
383  }
384  }
385 
386  if(element < (int)m_lut_Cos.find(lutName)->second.size()) {
387  value = m_lut_Cos.find(lutName)->second.at(element);
388  } else {
389  std::cout << "Warning: Element Requested " << element << " too large for Cos LUT (" << lutName <<") size = " << m_lut_Cos.find(lutName)->second.size() << std::endl;
390  }
391  return value;
392 }
393 unsigned int l1t::GlobalScales::getPrec_Cos(std::string lutName) const
394 {
395  unsigned int value = 0;
396 
397  if(m_Prec_Cos.find(lutName) != m_Prec_Cos.end()) {
398  value = m_Prec_Cos.find(lutName)->second;
399  } else {
400 
401  //does not exist. Check for oppoisite ordering
402  std::size_t pos = lutName.find("-");
403  std::string name = lutName.substr(pos+1);
404  name += "-";
405  name += lutName.substr(0,pos);
406 
407  //check again
408  if(m_Prec_Cos.find(name) != m_Prec_Cos.end()) {
409  value = m_Prec_Cos.find(name)->second;
410  } else {
411  std::cout << "Warning: LUT " << lutName << " for Cos not found" << std::endl;
412  }
413  }
414  return value;
415 }
416 
417 void l1t::GlobalScales::dumpAllLUTs(std::ostream& myCout) const
418 {
419 
420  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_CalMuEta.begin(); itr != m_lut_CalMuEta.end(); itr++) {
421  dumpLUT(myCout,1,itr->first);
422  }
423 
424  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_CalMuPhi.begin(); itr != m_lut_CalMuPhi.end(); itr++) {
425  dumpLUT(myCout,2,itr->first);
426  }
427 
428 
429  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_DeltaEta.begin(); itr != m_lut_DeltaEta.end(); itr++) {
430  dumpLUT(myCout,3,itr->first);
431  }
432 
433 
434  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_DeltaPhi.begin(); itr != m_lut_DeltaPhi.end(); itr++) {
435  dumpLUT(myCout,4,itr->first);
436  }
437 
438 
439  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_Cosh.begin(); itr != m_lut_Cosh.end(); itr++) {
440  dumpLUT(myCout,5,itr->first);
441  }
442 
443 
444  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_Cos.begin(); itr != m_lut_Cos.end(); itr++) {
445  dumpLUT(myCout,6,itr->first);
446  }
447 
448 
449  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_Pt.begin(); itr != m_lut_Pt.end(); itr++) {
450  dumpLUT(myCout,7,itr->first);
451  }
452 }
453 
454 void l1t::GlobalScales::dumpLUT(std::ostream& myCout, int LUTtype, std::string name) const
455 {
456  std::vector<long long> dumpV;
457  unsigned int prec = 0;
458  std::string type = "Null";
459  switch(LUTtype) {
460  case 1: {
461  dumpV = m_lut_CalMuEta.find(name)->second;
462  type = "Cal-Mu Eta";
463  break;
464  }
465  case 2: {
466  dumpV = m_lut_CalMuPhi.find(name)->second;
467  type = "Cal-Mu Phi";
468  break;
469  }
470  case 3: {
471  dumpV = m_lut_DeltaEta.find(name)->second;
472  prec = m_Prec_DeltaEta.find(name)->second;
473  type = "Delta Eta";
474  break;
475  }
476  case 4: {
477  dumpV = m_lut_DeltaPhi.find(name)->second;
478  prec = m_Prec_DeltaPhi.find(name)->second;
479  type = "Delta Phi";
480  break;
481  }
482  case 5: {
483  dumpV = m_lut_Cosh.find(name)->second;
484  prec = m_Prec_Cosh.find(name)->second;
485  type = "Cosh";
486  break;
487  }
488  case 6: {
489  dumpV = m_lut_Cos.find(name)->second;
490  prec = m_Prec_Cos.find(name)->second;
491  type = "Cos";
492  break;
493  }
494  case 7: {
495  dumpV = m_lut_Pt.find(name)->second;
496  prec = m_Prec_Pt.find(name)->second;
497  type = "Pt";
498  break;
499  }
500  }
501 
502  myCout << "=========================================" << std::endl;
503  myCout << " LUT: " << type << " Table: " << name << " Size = " << dumpV.size() << " Precision " << prec << std::endl;
504  myCout << "=========================================" << std::endl;
505  for(int i=0; i<(int)dumpV.size(); i++) {
506  myCout << " Element " << i << " " << dumpV.at(i) << std::endl;
507  }
508 }
509 
510 void l1t::GlobalScales::print(std::ostream& myCout) const
511 {
512 
513  myCout << "\n ************* L1T Global Scales ************" << std::endl;
514 
515 
516  myCout << " Muon Scales: " << std::endl;
517  printScale(m_muScales,myCout);
518 
519  myCout << " EG Scales: "<< std::endl;
520  printScale(m_egScales,myCout);
521 
522  myCout << " Tau Scales: "<< std::endl;
523  printScale(m_tauScales,myCout);
524 
525  myCout << " Jet Scales: "<< std::endl;
526  printScale(m_jetScales,myCout);
527 
528 
529  myCout << " HTT Scales: "<< std::endl;
530  printScale(m_httScales,myCout);
531 
532  myCout << " ETT Scales: "<< std::endl;
533  printScale(m_ettScales,myCout);
534 
535  myCout << " HTM Scales: "<< std::endl;
536  printScale(m_htmScales,myCout);
537 
538  myCout << " ETM Scales: "<< std::endl;
539  printScale(m_etmScales,myCout);
540 
541 
542  myCout << std::endl;
543  myCout << " LUTs Stored: " << std::endl;
544  myCout << " CalMuEta:";
545  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_CalMuEta.begin(); itr != m_lut_CalMuEta.end(); itr++) {
546  myCout << " " << itr->first;
547  }
548  myCout << std::endl;
549 
550  myCout << " CalMuPhi:";
551  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_CalMuPhi.begin(); itr != m_lut_CalMuPhi.end(); itr++) {
552  myCout << " " << itr->first;
553  }
554  myCout << std::endl;
555 
556  myCout << " DeltaEta:";
557  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_DeltaEta.begin(); itr != m_lut_DeltaEta.end(); itr++) {
558  myCout << " " << itr->first;
559  }
560  myCout << std::endl;
561 
562  myCout << " DeltaPhi:";
563  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_DeltaPhi.begin(); itr != m_lut_DeltaPhi.end(); itr++) {
564  myCout << " " << itr->first;
565  }
566  myCout << std::endl;
567 
568  myCout << " Cos: ";
569  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_Cos.begin(); itr != m_lut_Cos.end(); itr++) {
570  myCout << " " << itr->first;
571  }
572  myCout << std::endl;
573 
574  myCout << " Cosh: ";
575  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_Cosh.begin(); itr != m_lut_Cosh.end(); itr++) {
576  myCout << " " << itr->first;
577  }
578  myCout << std::endl;
579 
580  myCout << " Pt: ";
581  for (std::map<std::string, std::vector<long long>>::const_iterator itr = m_lut_Pt.begin(); itr != m_lut_Pt.end(); itr++) {
582  myCout << " " << itr->first;
583  }
584  myCout << std::endl;
585 
586 }
587 void l1t::GlobalScales::printScale(ScaleParameters scale, std::ostream& myCout) const
588 {
589 
590  myCout << " Pt Min = " << std::setw(10) << scale.etMin
591  << " Pt Max = " << std::setw(10) << scale.etMax
592  << " Pt Step = " << std::setw(10) << scale.etStep
593  << " Number = " << std::setw(10) << scale.etBins.size()
594  << "\n Phi Min = " << std::setw(10) << scale.phiMin
595  << " Phi Max = " << std::setw(10) << scale.phiMax
596  << " Phi Step = " << std::setw(10) << scale.phiStep
597  << " Number = " << std::setw(10) << scale.phiBins.size()
598  << "\n Eta Min = " << std::setw(10) << scale.etaMin
599  << " Eta Max = " << std::setw(10) << scale.etaMax
600  << " Eta Step = " << std::setw(10) << scale.etaStep
601  << " Number = " << std::setw(10) << scale.etaBins.size()
602  << std::endl;
603 
604 }
type
Definition: HCALResponse.h:21
int i
Definition: DBlmapReader.cc:9
virtual void setLUT_DeltaEta(std::string lutName, std::vector< long long > lut, unsigned int precision)
Definition: GlobalScales.cc:71
std::vector< std::pair< double, double > > etaBins
Definition: GlobalScales.h:54
virtual ~GlobalScales()
Definition: GlobalScales.cc:32
unsigned int getPrec_Pt(std::string lutName) const
std::vector< std::pair< double, double > > phiBins
Definition: GlobalScales.h:49
virtual void setLUT_CalMuPhi(std::string lutName, std::vector< long long > lut)
Definition: GlobalScales.cc:55
long long getLUT_Cos(std::string lutName, int element) const
unsigned int getPrec_Cosh(std::string lutName) const
long long getLUT_DeltaEta(std::string lutName, int element) const
virtual void setLUT_Cosh(std::string lutName, std::vector< long long > lut, unsigned int precision)
virtual void dumpAllLUTs(std::ostream &myCout) const
long long getLUT_Pt(std::string lutName, int element) const
unsigned int getPrec_DeltaEta(std::string lutName) const
long long getLUT_Cosh(std::string lutName, int element) const
long long getLUT_CalMuEta(std::string lutName, int element) const
virtual void print(std::ostream &myCout) const
unsigned int getPrec_DeltaPhi(std::string lutName) const
virtual void setLUT_Cos(std::string lutName, std::vector< long long > lut, unsigned int precision)
tuple lut
Definition: lumiPlot.py:244
virtual void setLUT_CalMuEta(std::string lutName, std::vector< long long > lut)
Definition: GlobalScales.cc:39
#define LogTrace(id)
virtual void dumpLUT(std::ostream &myCout, int LUTtype, std::string name) const
std::vector< std::pair< double, double > > etBins
Definition: GlobalScales.h:44
long long getLUT_DeltaPhi(std::string lutName, int element) const
virtual void setLUT_DeltaPhi(std::string lutName, std::vector< long long > lut, unsigned int precision)
Definition: GlobalScales.cc:87
virtual void setLUT_Pt(std::string lutName, std::vector< long long > lut, unsigned int precision)
typedef for a single object template
Definition: GlobalScales.h:39
tuple cout
Definition: gather_cfg.py:145
long long getLUT_CalMuPhi(std::string lutName, int element) const
virtual std::string getScalesName() const
Definition: GlobalScales.cc:36
unsigned int getPrec_Cos(std::string lutName) const
virtual void printScale(ScaleParameters scale, std::ostream &myCout) const