ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/PileupInfo.h
Revision: 1.1
Committed: Tue Feb 8 15:04:13 2011 UTC (14 years, 2 months ago) by mzanetti
Content type: text/plain
Branch: MAIN
Log Message:
new Pileup information collection

File Contents

# User Rev Content
1 mzanetti 1.1 //--------------------------------------------------------------------------------------------------
2     // $Id: Met.h,v 1.18 2009/09/09 03:38:26 bendavid Exp $
3     //
4     // Met
5     //
6     // Class to store missing transverse energy information.
7     // This is the base class for various specific kinds of missing energy (CaloMet, PFMet, etc.),
8     // but can also be used directly.
9     //
10     // Authors: M. Zanetti
11     //--------------------------------------------------------------------------------------------------
12    
13     #ifndef MITANA_DATATREE_PILEUPINFO_H
14     #define MITANA_DATATREE_PILEUPINFO_H
15    
16     #include "MitAna/DataTree/interface/DataBase.h"
17     #include "MitAna/DataTree/interface/Particle.h"
18    
19     namespace mithep
20     {
21     class PileupInfo : public DataBase
22     {
23     public:
24     PileupInfo():
25     num_PU_vertices(0)
26     { };
27    
28     const UInt_t GetPU_NumInteractions() const { return num_PU_vertices; }
29     const FArrDouble32 &GetPU_zPositions() const { return zPositions; }
30     const FArrDouble32 &GetPU_sumpT_lowpT() const { return sumpT_lowpT; }
31     const FArrDouble32 &GetPU_sumpT_highpT() const { return sumpT_highpT; }
32     const FArrUInt &GetPU_ntrks_lowpT() const { return ntrks_lowpT; }
33     const FArrUInt &GetPU_ntrks_highpT() const { return ntrks_highpT; }
34    
35     virtual PileupInfo *MakeCopy() const { return new PileupInfo(*this); }
36    
37     void SetPU_NumInteractions(UInt_t i) { num_PU_vertices = i; }
38     void PushPU_zPositions(Double32_t x) { zPositions.Add(x); }
39     void PushPU_sumpT_lowpT(Double32_t x) { sumpT_lowpT.Add(x); }
40     void PushPU_sumpT_highpT(Double32_t x) { sumpT_highpT.Add(x); }
41     void PushPU_ntrks_lowpT(UInt_t i) { ntrks_lowpT.Add(i); }
42     void PushPU_ntrks_highpT(UInt_t i) { ntrks_highpT.Add(i); }
43    
44     protected:
45     UInt_t num_PU_vertices; //number of PU vertices
46     FArrDouble32 zPositions; //||array positions along z
47     FArrDouble32 sumpT_lowpT; //||array sumpT for lowpT tracks
48     FArrDouble32 sumpT_highpT; //||array sumpT for highT tracks
49     FArrUInt ntrks_lowpT; //||array lowpT tracks
50     FArrUInt ntrks_highpT; //||array highpT tracks
51    
52    
53     ClassDef(PileupInfo, 1) // Pileup Information class
54     };
55     }
56    
57     #endif