CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/RecoMuon/MuonIdentification/interface/MuonCaloCompatibility.h

Go to the documentation of this file.
00001 #ifndef MuonIdentification_MuonCaloCompatibility_h
00002 #define MuonIdentification_MuonCaloCompatibility_h
00003 
00004 // -*- C++ -*-
00005 //
00006 // Package:    MuonIdentification
00007 // Class:      MuonCaloCompatibility
00008 // 
00009 /*
00010 
00011  Description: test track muon hypothesis using energy deposition in ECAL,HCAL,HO
00012 
00013 */
00014 //
00015 // Original Author:  Ingo Bloch
00016 // $Id: MuonCaloCompatibility.h,v 1.4 2010/06/02 15:50:51 andersj Exp $
00017 //
00018 //
00019 
00020 #include "TH2.h"
00021 #include "TH2D.h"
00022 #include "TFile.h"
00023 #include "DataFormats/MuonReco/interface/Muon.h"
00024 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00025 #include <string>
00026 
00027 class MuonCaloCompatibility {
00028  public:
00029    MuonCaloCompatibility():isConfigured_(false){}
00030    void configure(const edm::ParameterSet&);
00031    double evaluate( const reco::Muon& );
00032  private:
00033    bool accessing_overflow( TH2D* histo, double x, double y );
00034    bool isConfigured_;
00035    
00036    /*    std::string muon_templateFileName; */
00037    /*    std::string pion_templateFileName; */
00038    std::string MuonfileName_;
00039    std::string PionfileName_;
00040    
00041    boost::shared_ptr<TFile> pion_templates;
00042    boost::shared_ptr<TFile> muon_templates;
00043    // used input templates for given eta
00044    TH2D * pion_template_em ;
00045    TH2D * pion_template_had;
00046    TH2D * pion_template_ho ;
00047    TH2D * muon_template_em ;
00048    TH2D * muon_template_had;
00049    TH2D * muon_template_ho ;
00050    // input template functions by eta
00051    TH2D* pion_had_etaEpl ;
00052    TH2D* pion_em_etaEpl  ;
00053    TH2D* pion_had_etaTpl ;
00054    TH2D* pion_em_etaTpl  ;
00055    TH2D* pion_ho_etaB    ;
00056    TH2D* pion_had_etaB   ;
00057    TH2D* pion_em_etaB    ;
00058    TH2D* pion_had_etaTmi ;
00059    TH2D* pion_em_etaTmi  ;
00060    TH2D* pion_had_etaEmi ;
00061    TH2D* pion_em_etaEmi  ;
00062 
00063    TH2D* muon_had_etaEpl ;
00064    TH2D* muon_em_etaEpl  ;
00065    TH2D* muon_had_etaTpl ;
00066    TH2D* muon_em_etaTpl  ;
00067    TH2D* muon_ho_etaB    ;
00068    TH2D* muon_had_etaB   ;
00069    TH2D* muon_em_etaB    ;
00070    TH2D* muon_had_etaTmi ;
00071    TH2D* muon_em_etaTmi  ;
00072    TH2D* muon_had_etaEmi ;
00073    TH2D* muon_em_etaEmi  ;
00074 
00075    double  pbx;
00076    double  pby;
00077    double  pbz;
00078    
00079    double  psx;
00080    double  psy;
00081    double  psz;
00082 
00083    double  muon_compatibility;
00084 
00085    bool use_corrected_hcal;
00086    bool use_em_special;
00087 };
00088 #endif