LCFIVertex  0.7.2
jet.cpp
1 #include "../inc/jet.h"
2 #include "../inc/track.h"
3 #include <algorithm>
4 
5 namespace vertex_lcfi
6 {
7  using namespace vertex_lcfi::util;
8 
10  {
11  }
12 
13  Jet::Jet(Event* Event, const std::vector<Track*> & Tracks, double Energy,Vector3 Momentum, void* TrackingNum)
14  : _Event(Event),_Tracks(Tracks),_TrackingNum(TrackingNum),_Energy(Energy),_Momentum(Momentum)
15  {
16  }
17 
18  Event* Jet::event() const
19  {
20  return _Event;
21  }
22 
23  const std::vector<Track*> & Jet::tracks() const
24  {
25  return _Tracks;
26  }
27 
28  void* Jet::trackingNum() const
29  {
30  return _TrackingNum;
31  }
32 
33  void Jet::addTrack(Track* ATrack)
34  {
35  _Tracks.push_back(ATrack);
36  }
37 
38  bool Jet::removeTrack(Track* TrackR)
39  {
40  std::vector<Track*>::iterator position = std::find(_Tracks.begin(), _Tracks.end(), TrackR);
41  if (position!=_Tracks.end()) //Found
42  {
43  _Tracks.erase(position);
44  return 1;
45  }
46  else
47  return 0;
48  }
49 
50  bool Jet::hasTrack(Track* HTrack) const
51  {
52  if (find(_Tracks.begin(), _Tracks.end(), HTrack) != _Tracks.end()) //Found
53  {
54  return 1;
55  }
56  else
57  return 0;
58  }
59 
60  /*Vector3 Jet::momentum() const
61  {
62  Vector3 result;
63  for (std::vector<Track*>::const_iterator iTrack = _Tracks.begin();iTrack!=_Tracks.end();++iTrack)
64  {
65  result = result.add((*iTrack)->momentum());
66  }
67  result = result.mult(1.0/_Tracks.size());
68  return result;
69  }*/
70 }
71 
Jet()
Default Constructor.
Definition: jet.cpp:9
void addTrack(Track *Track)
Add Track.
Definition: jet.cpp:33
const std::vector< Track * > & tracks() const
Tracks.
Definition: jet.cpp:23
Event * event() const
Event.
Definition: jet.cpp:18
void * trackingNum() const
Tracking Number.
Definition: jet.cpp:28
bool hasTrack(Track *Track) const
Does the Jet have this Track?
Definition: jet.cpp:50
Unique Track representation.
bool removeTrack(Track *TrackR)
Remove Track.
Definition: jet.cpp:38