CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/CalibTracker/SiPixelESProducers/interface/SiPixelCPEGenericDBErrorParametrization.h

Go to the documentation of this file.
00001 #ifndef CalibTracker_SiPixelESProducers_SiPixelDBErrorParametrization_h
00002 #define CalibTracker_SiPixelESProducers_SiPixelDBErrorParametrization_h
00003 
00004 #include <memory>
00005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00006 #include "FWCore/Framework/interface/EventSetup.h"
00007 #include "FWCore/Framework/interface/ESHandle.h"
00008 #include "Geometry/CommonDetUnit/interface/GeomDetType.h"
00009 #include "CondFormats/SiPixelObjects/interface/SiPixelCPEGenericErrorParm.h"
00010 
00011 class SiPixelCPEGenericDBErrorParametrization
00012 {
00013   public:
00014         
00015         SiPixelCPEGenericDBErrorParametrization();
00016          ~SiPixelCPEGenericDBErrorParametrization();
00017 
00018          void setDBAccess(const edm::EventSetup& es);
00019          
00020          std::pair<float,float>
00021                  getError(const SiPixelCPEGenericErrorParm* parmErrors,
00022                                 GeomDetType::SubDetector pixelPart,
00023                                 int sizex, int sizey,
00024                                 float alpha, float beta,
00025                                 bool bigInX = false,
00026                                 bool bigInY = false);
00027 
00028          std::pair<float,float>
00029                  getError(GeomDetType::SubDetector pixelPart,
00030                                 int sizex, int sizey,
00031                                 float alpha, float beta,
00032                                 bool bigInX = false,
00033                                 bool bigInY = false);
00034 
00035          float index(int ind_subpart, int size, float alpha, float beta, bool big);
00036          
00037   private:
00038 
00039          edm::ESHandle<SiPixelCPEGenericErrorParm> errorsH;
00040          
00041          static const float bx_a_min[3];
00042          static const float bx_a_max[3];
00043          
00044          static const float fx_a_min[2];
00045          static const float fx_a_max[2];
00046          static const float fx_b_min[2];
00047          static const float fx_b_max[2];
00048          
00049          static const float by_a_min[6];
00050          static const float by_a_max[6];
00051          static const float by_b_min[6];
00052          static const float by_b_max[6];
00053          
00054          static const float fy_a_min[2];
00055          static const float fy_a_max[2];
00056          static const float fy_b_min[2];
00057          static const float fy_b_max[2];
00058 
00059          static const float errors_big_pix[4];
00060          static const int   size_max[4];
00061          
00062          static const int part_bin_size[4];
00063          static const int size_bin_size[4];
00064          static const int alpha_bin_size[4];
00065          static const int beta_bin_size[4];
00066 
00067          static const float* a_min[4];
00068          static const float* a_max[4];
00069          static const float* b_min[4];
00070          static const float* b_max[4];
00071 
00072 };
00073 #endif