ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/PollackPrograms/src/TCPhysObject.h
Revision: 1.1
Committed: Wed Feb 20 21:39:44 2013 UTC (12 years, 2 months ago) by bpollack
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Log Message:
commiting moriond analysis package

File Contents

# Content
1 #ifndef _TCPHYSOBJECT_H
2 #define _TCPHYSOBJECT_H
3
4 #include "TObject.h"
5 #include "TLorentzVector.h"
6 #include "TVector2.h"
7 #include "TVector3.h"
8 #include <map>
9 #include <utility>
10 #include <string>
11 #include <iostream>
12
13 using namespace std;
14
15 class TCPhysObject : public TLorentzVector {
16 private:
17 TVector3 _vtx;
18 map<string, float> _IdMap;
19 map<string, float> _IsoMap;
20 int _charge;
21 string _type;
22 bool _isPF;
23 bool _isReco;
24
25 public:
26 TCPhysObject();
27 TCPhysObject(TLorentzVector p4, int charge);
28 TCPhysObject(TLorentzVector p4, int charge, string type);
29 virtual ~TCPhysObject();
30
31 // "get" methods -----------
32
33 float IdMap(string key);
34 float IsoMap(string key);
35 TVector2 P2() const;
36 TVector3 Vtx() const;
37 int Charge() const;
38 string Type() const;
39 bool IsPF() const;
40 bool IsReco() const;
41
42 float Dxy(TVector3 *primVtx) const;
43 float Dz(TVector3 *primVtx) const;
44
45 // "set" methods ---------
46 void SetP4(TLorentzVector p4);
47 void SetIdMap(string s, float v);
48 void SetIsoMap(string s, float v);
49 void SetVtx(float vx, float vy, float vz);
50 void SetCharge(int c);
51 void SetType(string s);
52 void SetReco(bool);
53 void SetPF(bool);
54
55 ClassDef(TCPhysObject, 1);
56 };
57
58 #endif /* _TCPHYSOBJECT_H */