ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/MuonTools.h
(Generate patch)

Comparing UserCode/MitPhysics/Utils/interface/MuonTools.h (file contents):
Revision 1.9 by loizides, Mon Jun 15 15:00:23 2009 UTC vs.
Revision 1.22 by sixie, Sun Apr 15 12:07:00 2012 UTC

# Line 19 | Line 19
19   #define MITPHYSICS_UTILS_MUONTOOLS_H
20  
21   #include "MitAna/DataTree/interface/Muon.h"
22 + #include "MitAna/DataTree/interface/VertexCol.h"
23 + #include "MitAna/DataTree/interface/BeamSpotCol.h"
24   #include "MitCommon/MathTools/interface/MathUtils.h"
25   #include "TH2D.h"
26  
# Line 27 | Line 29 | namespace mithep {
29      public:
30        MuonTools(const char *mutemp="$CMSSW_BASE/src/MitPhysics/data/MuonCaloTemplate.root",
31                  const char *pitemp="$CMSSW_BASE/src/MitPhysics/data/PionCaloTemplate.root");
32 <      ~MuonTools();
32 >      virtual ~MuonTools();
33  
34        enum ESelType {
35          kAllArbitrated,          //All arbitration (DT/CSC/RPC Hits) put on at least one
# Line 43 | Line 45 | namespace mithep {
45                                   //  ===> 1.2 Segment compatability + 0.8 calo compatability > 1.2
46        };
47  
48 <      Bool_t      Init(const char *mutemp, const char *pitemp);
49 <      Bool_t      IsGood(const mithep::Muon *iMuon, ESelType iSel) const;
50 <      Double_t    GetCaloCompatability(const mithep::Muon *iMuon,
51 <                                       Bool_t iEMSpecial, Bool_t iCorrectedHCAL) const;
52 <      Double_t    GetSegmentCompatability(const mithep::Muon *iMuon)             const;
48 >      enum EMuonEffectiveAreaType {
49 >        kMuChargedIso03,
50 >        kMuNeutralIso03,
51 >        kMuChargedIso04,
52 >        kMuNeutralIso04,
53 >        kMuHadEnergy,
54 >        kMuHoEnergy,
55 >        kMuEmEnergy,
56 >        kMuHadS9Energy,
57 >        kMuHoS9Energy,
58 >        kMuEmS9Energy,
59 >        kMuTrkIso03,
60 >        kMuEMIso03,
61 >        kMuHadIso03,
62 >        kMuTrkIso05,
63 >        kMuEMIso05,
64 >        kMuHadIso05,
65 >        kMuGammaIsoDR0p0To0p1,
66 >        kMuGammaIsoDR0p1To0p2,
67 >        kMuGammaIsoDR0p2To0p3,
68 >        kMuGammaIsoDR0p3To0p4,
69 >        kMuGammaIsoDR0p4To0p5,
70 >        kMuNeutralHadronIsoDR0p0To0p1,
71 >        kMuNeutralHadronIsoDR0p1To0p2,
72 >        kMuNeutralHadronIsoDR0p2To0p3,
73 >        kMuNeutralHadronIsoDR0p3To0p4,
74 >        kMuNeutralHadronIsoDR0p4To0p5
75 >      };
76 >
77 >      enum EMuonEffectiveAreaTarget {
78 >        kMuEANoCorr,
79 >        kMuEAData2011,
80 >        kMuEASummer11MC,
81 >        kMuEAFall11MC
82 >      };
83 >
84 >      Bool_t          Init(const char *mutemp, const char *pitemp);
85 >      Bool_t          IsGood(const mithep::Muon *iMuon, ESelType iSel) const;
86 >      Double_t        GetCaloCompatability(const mithep::Muon *iMuon,
87 >                                         Bool_t iEMSpecial, Bool_t iCorrectedHCAL) const;
88 >      Double_t        GetSegmentCompatability(const mithep::Muon *iMuon)             const;
89 >      static Bool_t   PassD0Cut(const Muon *mu, const VertexCol *vertices, Double_t fD0Cut, Int_t nVertex = 0);
90 >      static Bool_t   PassD0Cut(const Muon *mu, const BeamSpotCol *beamspots, Double_t fD0Cut);
91 >      static Bool_t   PassDZCut(const Muon *mu, const VertexCol *vertices, Double_t fDZCut, Int_t nVertex = 0);
92 >      static Bool_t   PassSoftMuonCut(const Muon *mu, const VertexCol *vertices, const Double_t fDZCut = 0.2,
93 >                                    const Bool_t applyIso = kTRUE);
94 >      static Double_t MuonEffectiveArea(EMuonEffectiveAreaType type, Double_t Eta,
95 >                                        EMuonEffectiveAreaTarget EffectiveAreaTarget = kMuEAData2011);
96  
97      protected:
98        void        DeleteHistos();
# Line 76 | Line 121 | namespace mithep {
121        TH2D       *fpion_had_etaEpl;     //!Plus Endcap Hadronic Calo Deposit Template for Pions
122  
123        TH2D       *LoadHisto(const char *fname, TFile *file)                      const;
124 +
125 +    ClassDef(MuonTools, 0) // Muon tools
126    };
127   }
128  
# Line 105 | Line 152 | inline Bool_t mithep::MuonTools::Overflo
152  
153    if (iHist ->GetXaxis()->FindBin(lVal0) == 0                  ||
154        iHist ->GetXaxis()->FindBin(lVal0) >  iHist->GetNbinsX() ||
155 <      iHist ->GetYaxis()->FindBin(lVal0) == 0                  ||
156 <      iHist ->GetYaxis()->FindBin(lVal0) >  iHist->GetNbinsY()) {
155 >      iHist ->GetYaxis()->FindBin(lVal1) == 0                  ||
156 >      iHist ->GetYaxis()->FindBin(lVal1) >  iHist->GetNbinsY()) {
157      return kTRUE;
158    }
159    return kFALSE;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines