LCFIVertex  0.7.2
vertex_lcfi/inc/jet.h
1 #ifndef LCFIJET_H
2 #define LCFIJET_H
3 
4 #include "../util/inc/vector3.h"
5 #include "../util/inc/recalculate.h"
6 #include <vector>
7 #include <map>
8 
9 namespace vertex_lcfi
10 {
11  using namespace util;
12 
13  //Forward Declarations
14  class Track;
15  class Event;
16  class DecayChain;
17 
19 
24  class Jet
25  {
26  public:
27 
29  Jet();
30 
32 
37  Jet(Event* Event, const std::vector<Track*> & Tracks,double _Energy, Vector3 Momentum, void* TrackingNum);
38 
40 
43  Event* event() const;
44 
46 
49  const std::vector<Track*> & tracks() const;
50 
52 
55  void* trackingNum() const;
56 
58 
62  void addTrack(Track* Track);
63 
65 
70  bool removeTrack(Track* TrackR);
71 
73 
78  bool hasTrack(Track* Track) const;
79 
81 
85  inline Vector3 momentum() const
86  {return _Momentum;}
87 
89 
93  inline double energy() const
94  {return _Energy;}
95 
96 
97  private:
98  Event* _Event;
99  std::vector<vertex_lcfi::Track*> _Tracks;
100  void* _TrackingNum;
101  double _Energy;
102  Vector3 _Momentum;
103  };
104 
105  }
106 #endif //LCFIJET_H
107 
108 
Vector3 momentum() const
Momentum.
double energy() const
Energy.