ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/Particle.h
Revision: 1.17
Committed: Mon Aug 18 10:53:05 2008 UTC (16 years, 8 months ago) by sixie
Content type: text/plain
Branch: MAIN
Changes since 1.16: +3 -1 lines
Log Message:
Added mt.

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2 sixie 1.17 // $Id: Particle.h,v 1.16 2008/08/08 11:17:32 sixie Exp $
3 loizides 1.1 //
4     // Particle
5     //
6     // Details to be worked out...
7     //
8 paus 1.7 // Authors: C.Loizides
9 loizides 1.1 //--------------------------------------------------------------------------------------------------
10    
11 loizides 1.9 #ifndef DATATREE_PARTICLE_H
12     #define DATATREE_PARTICLE_H
13    
14     #include <TMath.h>
15     #include "MitAna/DataTree/interface/DataObject.h"
16    
17 loizides 1.1 namespace mithep
18     {
19 loizides 1.3 class Particle : public DataObject
20 loizides 1.1 {
21     public:
22     Particle() {}
23 loizides 1.3 ~Particle() {}
24 loizides 1.11
25 sixie 1.16 virtual Double_t Charge() const = 0;
26 loizides 1.11 virtual Double_t E() const { return Mom().E();}
27 sixie 1.16 virtual Double_t Et() const { return Mom().E()*Mom().Pt()/Mom().P(); }
28 loizides 1.11 virtual Double_t Eta() const { return Mom().Eta();}
29     virtual Double_t Mass() const { return TMath::Sqrt(Mom().M2()); }
30 sixie 1.17 virtual Double_t Mt() const { return TMath::Sqrt(Mom().Mt2()); }
31 sixie 1.16 virtual FourVector Mom() const = 0;
32 sixie 1.17
33 loizides 1.11 virtual Double_t Phi() const { return Mom().Phi();}
34     virtual Double_t Pt() const { return Mom().Pt();}
35     virtual Double_t Px() const { return Mom().Px();}
36     virtual Double_t Py() const { return Mom().Py();}
37     virtual Double_t Pz() const { return Mom().Pz();}
38     virtual Double_t P() const { return Mom().P();}
39 loizides 1.8
40 loizides 1.13 void Print(Option_t *opt="") const;
41    
42 loizides 1.4 protected:
43 loizides 1.11
44 loizides 1.12 ClassDef(Particle, 1) // Generic particle class
45 loizides 1.1 };
46 loizides 1.8 }
47     #endif