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

00001 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00002 // 27.04.2011, MCP working group
00003 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00004 
00005 #ifndef StacoCBScaleEffFactorH
00006 #define StacoCBScaleEffFactorH
00007 
00009 // CLASS StacoCBScaleEffFactors //
00011 
00023 
00025 // HEADER FILES //
00027 
00028 // ROOT //
00029 #include "TLorentzVector.h"
00030 
00031 // STL //
00032 #include <vector>
00033 
00034 // Base class //
00035 #include "topUtils/MuonEfficiencyScaleFactor.h"
00036 
00037 // auxiliary class //
00038 #include "topUtils/EtaPhiBinning.h"
00039 
00040 namespace Analysis {
00041   class StacoCBScaleEffFactors : public MuonEfficiencyScaleFactor {
00042   public:
00044     StacoCBScaleEffFactors(void);
00046     virtual ~StacoCBScaleEffFactors() {}
00047 
00048     // Methods //
00049     double scaleFactor(const TLorentzVector & tlv) const;
00052     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     std::vector<double> m_scale_factor_A;
00071     std::vector<double> m_scale_factor_uncertainty_A;
00072     std::vector<double> m_scale_factor_C_high_pt; 
00073     std::vector<double> m_scale_factor_uncertainty_C_high_pt; 
00074     std::vector<double> m_scale_factor_C_low_pt; 
00075     std::vector<double> m_scale_factor_uncertainty_C_low_pt; 
00076     std::vector<double> m_scale_factor_A_periodB;
00077     std::vector<double> m_scale_factor_uncertainty_A_periodB;
00078     std::vector<double> m_scale_factor_C_periodB;
00079     std::vector<double> m_scale_factor_uncertainty_C_periodB;
00080 
00081     unsigned m_last_run_periodB;
00082 
00083     EtaPhiBinning m_eta_phi_binning; // auxiliary binning class
00084   };
00085 }
00086 
00087 #endif

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