/afs/hep.man.ac.uk/u/markowen/ATLAS/SFrameProof/2011EPS/topUtils/topUtils/MuidCBScaleEffFactors.h

00001 // from PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/tags/MuonEfficiencyCorrections-00-03-08
00002 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00003 // 27.04.2011, MCP working group
00004 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00005 
00006 #ifndef MuidCBScaleEffFactorH
00007 #define MuidCBScaleEffFactorH
00008 
00010 // CLASS MuidCBScaleEffFactors //
00012 
00024 
00026 // HEADER FILES //
00028 
00029 // ROOT //
00030 #include "TLorentzVector.h"
00031 
00032 // STL //
00033 #include <vector>
00034 
00035 // Base class //
00036 #include "topUtils/topUtils/MuonEfficiencyScaleFactor.h"
00037 
00038 // auxiliary class //
00039 #include "topUtils/topUtils/EtaPhiBinning.h"
00040 
00041 namespace Analysis {
00042     class MuidCBScaleEffFactors : public MuonEfficiencyScaleFactor {
00043     public:
00045     MuidCBScaleEffFactors(void);
00047     virtual ~MuidCBScaleEffFactors() {}
00048 
00049     // Methods //
00050     double scaleFactor(const TLorentzVector & tlv) const;
00053     double scaleFactorUncertainty(const TLorentzVector & tlv) const;
00056     double scaleFactor(const TLorentzVector & tlv,
00057                                     const unsigned int & run_nb) const;
00060     double scaleFactorUncertainty(const TLorentzVector & tlv,
00061                                     const unsigned int & run_nb) const;
00064 
00065     double scaleFactorSystematicUncertainty(const TLorentzVector & tlv) const;
00068 
00069 // private //
00070   private:
00071     std::vector<double> m_scale_factor_A;
00072     std::vector<double> m_scale_factor_uncertainty_A;
00073     std::vector<double> m_scale_factor_C;
00074     std::vector<double> m_scale_factor_uncertainty_C;
00075     std::vector<double> m_scale_factor_A_periodB;
00076     std::vector<double> m_scale_factor_uncertainty_A_periodB;
00077     std::vector<double> m_scale_factor_C_periodB;
00078     std::vector<double> m_scale_factor_uncertainty_C_periodB;
00079 
00080     unsigned m_last_run_periodB;
00081 
00082     EtaPhiBinning m_eta_phi_binning; // auxiliary binning class
00083   };
00084 }
00085 
00086 #endif

Generated on Thu Jun 30 11:40:04 2011 for manTreeSFrame by  doxygen 1.4.7