CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/OnlineDB/CSCCondDB/interface/CSCThrTurnOnFcn.h

Go to the documentation of this file.
00001 #ifndef CSCCalibration_CSCThrTurnOnFcn_h
00002 #define CSCCalibration_CSCThrTurnOnFcn_h
00003 
00004 
00013 #include "Minuit2/FCNBase.h"
00014 #include <vector>
00015 
00016 
00017 
00018 class CSCThrTurnOnFcn : public ROOT::Minuit2::FCNBase {
00019 
00020 private:
00022   std::vector<float>  xdata;
00023   std::vector<float>  ydata;
00024   std::vector<float>  ery;
00025   float               norm;
00026 
00027 public:
00029   void setData(const std::vector<float> & x, const std::vector<float> & y) { 
00030     for(unsigned int i=0;i<x.size();i++) {
00031      xdata.push_back(x[i]); ydata.push_back(y[i]);
00032     }
00033 };
00034 
00036    void setErrors(const std::vector<float> & er) {
00037    for(unsigned int i=0;i<er.size();i++) ery.push_back(er[i]); 
00038  };
00039 
00041    void setNorm(float n) {norm=n;};
00042  
00044   virtual double operator() (const std::vector<double>&) const;
00045 
00047   virtual double Up() const {return 1.;}
00048 
00049 };
00050 
00051 #endif