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 
18 {
19  public :
20 
22  VEcalCalibBlock (int numberOfElements) :
23  m_numberOfElements (numberOfElements) {} ;
25  virtual ~VEcalCalibBlock () {} ;
26 
28  virtual void Fill (std::map<int,double>::const_iterator,
29  std::map<int,double>::const_iterator,
30  double pTk,
31  double pSubtract,
32  double sigma = 1.) = 0 ;
33 
35  virtual void reset () = 0 ;
37  float at (const unsigned int index) { return m_coefficients[index] ; }
39  virtual int solve (int usingBlockSolver, double min, double max) = 0 ;
40 
41  protected :
42 
44  unsigned int m_numberOfElements ;
46  std::map<unsigned int, float> m_coefficients ;
47 } ;
48 
49 
50 #endif
51 #endif
52 
element for the single ECAL block intercalibration
#define min(a, b)
Definition: mlp_lapack.h:161
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