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

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