ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/DCASig.h
Revision: 1.4
Committed: Tue May 15 23:25:18 2012 UTC (12 years, 11 months ago) by paus
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_032, Mit_031, Mit_025c_branch2, Mit_025c_branch1, Mit_030, Mit_029c, Mit_029b, Mit_030_pre1, Mit_029a, Mit_029, Mit_029_pre1, Mit_028a, Mit_025c_branch0, HEAD
Branch point for: Mit_025c_branch
Changes since 1.3: +1 -18 lines
Log Message:
Backporting from 5x.

File Contents

# User Rev Content
1 paus 1.2 //--------------------------------------------------------------------------------------------------
2 paus 1.4 // $Id: DCASig.h,v 1.3 2012/03/29 23:41:55 paus Exp $
3 paus 1.2 //
4     // DCA Significance
5     //
6     // This class holds information about the significance of the DCA for various particle assumptions.
7     //
8     // Authors: ?.?, C.Paus
9     //--------------------------------------------------------------------------------------------------
10    
11 pharris 1.1 #ifndef MITANA_DATATREE_DCASIG_H
12     #define MITANA_DATATREE_DCASIG_H
13    
14     #include "MitAna/DataTree/interface/Electron.h"
15     #include "MitAna/DataTree/interface/Muon.h"
16     #include "MitAna/DataTree/interface/PFTau.h"
17     #include "MitAna/DataCont/interface/Ref.h"
18     #include "MitAna/DataTree/interface/DataObject.h"
19    
20     namespace mithep
21     {
22     class DCASig : public DataObject
23     {
24     public:
25     DCASig() {}
26     enum EDCAType {
27     eETau, //ETau
28     eMuTau, //MuTau
29     eEMu, //EMu
30     eEE , //EE
31     eMuMu, //Mu Mu
32     eTauTau //Tau Tau
33     };
34 paus 1.2
35 pharris 1.1 Double_t DCASig3D() const {return fDCA3D /fDCA3DErr; }
36     Double_t DCASig2D() const {return fDCA2D /fDCA2DErr; }
37     Double_t DCASig3DRPhi() const {return fDCA3DRPhi/fDCA3DRPhiErr; }
38     Double_t DCASig2DRPhi() const {return fDCA2DRPhi/fDCA2DRPhiErr; }
39    
40     Double_t DCA3D() const {return fDCA3D; }
41     Double_t DCA2D() const {return fDCA2D; }
42     Double_t DCA3DRPhi() const {return fDCA3DRPhi; }
43     Double_t DCA2DRPhi() const {return fDCA2DRPhi; }
44    
45     Double_t DCA3DErr() const {return fDCA3DErr; }
46     Double_t DCA2DErr() const {return fDCA2DErr; }
47     Double_t DCA3DRPhiErr() const {return fDCA3DRPhiErr; }
48     Double_t DCA2DRPhiErr() const {return fDCA2DRPhiErr; }
49    
50     const PFTau *GetTau() const {return fTauRef.Obj();}
51     const Electron *GetElectron() const {return fElectronRef.Obj();}
52     const Muon *GetMuon() const {return fMuonRef.Obj();}
53     const PFTau *Get2ndTau() const {return f2ndTauRef.Obj();}
54     const Electron *Get2ndElectron() const {return f2ndElectronRef.Obj();}
55     const Muon *Get2ndMuon() const {return f2ndMuonRef.Obj();}
56     EDCAType Type() const {return fDCAType;}
57    
58 paus 1.2 void SetDCA2D (Double_t v) { fDCA2D = v; }
59     void SetDCA3D (Double_t v) { fDCA3D = v; }
60     void SetDCA2DRPhi (Double_t v) { fDCA2DRPhi = v; }
61     void SetDCA3DRPhi (Double_t v) { fDCA3DRPhi = v; }
62     void SetDCA2DErr (Double_t v) { fDCA2DErr = v; }
63     void SetDCA3DErr (Double_t v) { fDCA3DErr = v; }
64     void SetDCA2DRPhiErr(Double_t v) { fDCA2DRPhiErr = v; }
65     void SetDCA3DRPhiErr(Double_t v) { fDCA3DRPhiErr = v; }
66     void SetTau (const mithep::PFTau*iTau, Bool_t i2nd=false)
67     { i2nd ? f2ndTauRef = iTau : fTauRef = iTau; }
68     void SetElectron (const mithep::Electron *iElectron, Bool_t i2nd=false)
69     { i2nd ? f2ndElectronRef = iElectron : fElectronRef = iElectron; }
70     void SetMuon (const mithep::Muon *iMuon, Bool_t i2nd=false)
71     { i2nd ? f2ndMuonRef = iMuon : fMuonRef = iMuon; }
72     void SetType (EDCAType v) { fDCAType = v; }
73    
74 pharris 1.1 protected:
75    
76 paus 1.2 EDCAType fDCAType; // Lepton pair type
77     Double_t fDCA3D; // 3D xy Distance of closest approach Unc
78     Double_t fDCA2D; // 2D xy Distance of closest approach Unc
79     Double_t fDCA3DRPhi; // 3D RPhi Distance of closest approach Unc
80     Double_t fDCA2DRPhi; // 2D RPhi Distance of closest approach Unc
81    
82     Double_t fDCA3DErr; // 3D xy Distance of closest approach Unc
83     Double_t fDCA2DErr; // 2D xy Distance of closest approach Unc
84     Double_t fDCA3DRPhiErr; // 3D RPhi Distance of closest approach Unc
85     Double_t fDCA2DRPhiErr; // 2D RPhi Distance of closest approach Unc
86 pharris 1.1
87     Ref<PFTau> fTauRef; // Tau reference
88     Ref<Electron> fElectronRef; // Electron reference
89     Ref<Muon> fMuonRef; // Muon reference
90     Ref<PFTau> f2ndTauRef; // Tau reference
91     Ref<Electron> f2ndElectronRef; // Electron reference
92     Ref<Muon> f2ndMuonRef; // Muon reference
93 paus 1.2
94     ClassDef(DCASig,1) // DCA Significance reference
95     };
96     }
97 pharris 1.1 #endif