CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
VEcalCalibBlock.h
Go to the documentation of this file.
1 #ifndef __CINT__
2 #ifndef VEcalCalibBlock_H
3 #define VEcalCalibBlock_H
4 
5 #include <map>
6 #include <string>
7 #include <vector>
8 
14 {
15  public :
16 
18  VEcalCalibBlock (int numberOfElements) :
19  m_numberOfElements (numberOfElements) {} ;
21  virtual ~VEcalCalibBlock () {} ;
22 
24  virtual void Fill (std::map<int,double>::const_iterator,
25  std::map<int,double>::const_iterator,
26  double pTk,
27  double pSubtract,
28  double sigma = 1.) = 0 ;
29 
31  virtual void reset () = 0 ;
33  float at (const unsigned int index) { return m_coefficients[index] ; }
35  virtual int solve (int usingBlockSolver, double min, double max) = 0 ;
36 
37  protected :
38 
40  unsigned int m_numberOfElements ;
42  std::map<unsigned int, float> m_coefficients ;
43 } ;
44 
45 
46 #endif
47 #endif
48 
element for the single ECAL block intercalibration
virtual void reset()=0
reset the chi2 matrices
const T & max(const T &a, const T &b)
virtual int solve(int usingBlockSolver, double min, double max)=0
solve the chi2 linear system
std::map< unsigned int, float > m_coefficients
map of coefficients
unsigned int m_numberOfElements
The only parameter!
float at(const unsigned int index)
retrieve the coefficients
virtual void Fill(std::map< int, double >::const_iterator, std::map< int, double >::const_iterator, double pTk, double pSubtract, double sigma=1.)=0
insert an entry
VEcalCalibBlock(int numberOfElements)
ctor
virtual ~VEcalCalibBlock()
dtor