ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbbAnalysis/VHbbDataFormats/interface/VHbbEventAuxInfo.h
Revision: 1.16
Committed: Tue Jun 12 19:40:16 2012 UTC (12 years, 10 months ago) by arizzi
Content type: text/plain
Branch: MAIN
CVS Tags: EDMV42_Step2_V8, EDMV42_Step2_V7, EDMV42_Step2_V6, EDMV42_Step2_V5a, EDMV42_Step2_V5, tauCandV42, hbbsubstructDev_6, hbbsubstructDev_5, hbbsubstructDev_4, hbbsubstructDev_3, hbbsubstructDev_2, hbbsubstructDev_1, hbbsubstructDev, EDMV42_Step2_V4a, EDMV42_Step2_V4, EDMV42_Step2_V3, EDMV42_Step2_V2, EDMV42_Step2_V1, EdmV42, EdmV41alpha1, EdmV40alpha1, EdmV40alpha, EdmV33Jun12v2_consistent, Step2ForV33_v2, Step2ForV33_v1, EdmV33Jun12v2, EdmV33Jun12v1, HEAD
Branch point for: V42TauCandidate, hbbsubstructDevPostHCP
Changes since 1.15: +2 -2 lines
Log Message:
add gen particles, add rho25Iso

File Contents

# User Rev Content
1 tboccali 1.1 #ifndef VHbbEventAuxInfo__H
2     #define VHbbEventAuxInfo__H
3    
4     #include <TLorentzVector.h>
5     #include <TVector2.h>
6 tboccali 1.12 #include "Math/SMatrix.h"
7 tboccali 1.1 #include <vector>
8 tboccali 1.9 #include<map>
9 tboccali 1.1 class VHbbEventAuxInfo{
10     public:
11    
12    
13     class PrimaryVertexInfo {
14     public:
15 tboccali 1.5 PrimaryVertexInfo() : nVertices (-99){}
16 tboccali 1.1 TVector3 firstPVInPT2,firstPVInProb;
17 tboccali 1.12 ROOT::Math::SMatrix<double, 3, 3, ROOT::Math::MatRepSym<double, 3> > efirstPVInPT2,efirstPVInProb;
18 tboccali 1.5 int nVertices;
19 tboccali 1.1 };
20    
21     class PUInfo{
22     public:
23 arizzi 1.16 PUInfo(): rho(-99), rho25(-99),rho25Iso(-99),rhoNeutral(-99),truePU(9999) {}
24 tboccali 1.1 public:
25 arizzi 1.16 float rho, rho25,rhoNeutral,rho25Iso;
26 tboccali 1.9 std::map<int,unsigned int> pus;
27 arizzi 1.15 unsigned int truePU;
28 tboccali 1.1 };
29    
30    
31 tboccali 1.2 class ParticleMCInfo {
32     public:
33 tboccali 1.4 ParticleMCInfo(): status(-99), momid(-99), gmomid(-99), charge(-99){}
34 tboccali 1.2 public:
35     int status;
36     int momid;
37     int gmomid;
38 tboccali 1.4 float charge;
39 tboccali 1.3 TLorentzVector p4;
40 tboccali 1.2 // int ndau;
41     std::vector<int> dauid;
42     std::vector<TLorentzVector> dauFourMomentum;
43     };
44    
45 arizzi 1.7 double genBBDeltaR() const
46 arizzi 1.6 {
47 arizzi 1.7 if(mcB.size() > 0 && mcBbar.size() > 0)
48 arizzi 1.6 return mcB[0].p4.DeltaR(mcBbar[0].p4);
49 arizzi 1.7 else return -99;
50     }
51     double genCCDeltaR() const
52     {
53     if(mcC.size() >=2)
54     return mcC[0].p4.DeltaR(mcC[1].p4);
55     else return -99;
56 arizzi 1.6 }
57    
58 tboccali 1.1 public:
59     PUInfo puInfo;
60 arizzi 1.10 float weightMCProd;
61 tboccali 1.8 PrimaryVertexInfo pvInfo;
62 tboccali 1.2 std::vector<ParticleMCInfo> mcH;
63     std::vector<ParticleMCInfo> mcW;
64     std::vector<ParticleMCInfo> mcZ;
65 tboccali 1.1
66 tboccali 1.2 std::vector<ParticleMCInfo> mcBbar;
67     std::vector<ParticleMCInfo> mcB;
68     std::vector<ParticleMCInfo> mcC;
69 tboccali 1.1
70 sethzenz 1.13 std::vector<ParticleMCInfo> mcTau;
71 tboccali 1.1 };
72     #endif