blah2
A real-time passive radar
Tracker.h
Go to the documentation of this file.
1 
10 #ifndef TRACKER_H
11 #define TRACKER_H
12 
13 #include "data/Detection.h"
14 #include "data/Track.h"
15 #include <stdint.h>
16 
17 class Tracker
18 {
19 private:
21  uint32_t m;
22 
24  uint32_t n;
25 
27  uint32_t nDelete;
28 
30  double cpi;
31 
33  double maxAccInit;
34 
36  double rangeRes;
37 
39  std::vector<double> accInit;
40 
42  std::vector<bool> doNotInitiate;
43 
45  uint64_t timestamp;
46 
49 
50 public:
56  Tracker(uint32_t m, uint32_t n, uint32_t nDelete, double cpi, double maxAccInit, double rangeRes);
57 
60  ~Tracker();
61 
66  Track *process(Detection *detection, uint64_t timestamp);
67 
72  void update(Detection *detection, uint64_t timestamp);
73 
77  void initiate(Detection *detection);
78 };
79 
80 #endif
A class to store detection data.
Definition: Detection.h:14
A class to store track data.
Definition: Track.h:26
A class to implement a bistatic tracker.
Definition: Tracker.h:18
uint32_t m
Track initiation constant for M of N detections.
Definition: Tracker.h:21
~Tracker()
Destructor.
Definition: Tracker.cpp:25
uint32_t nDelete
Number of missed predictions to delete a tentative track.
Definition: Tracker.h:27
void initiate(Detection *detection)
Initiate new tentative tracks from detections.
Definition: Tracker.cpp:126
double cpi
True CPI time for acceleration resolution(s).
Definition: Tracker.h:30
Track track
Track data.
Definition: Tracker.h:48
void update(Detection *detection, uint64_t timestamp)
Update tracks by associating detections.
Definition: Tracker.cpp:50
uint64_t timestamp
POSIX timestamp of last update (ms).
Definition: Tracker.h:45
std::vector< bool > doNotInitiate
Index of detections already updated.
Definition: Tracker.h:42
uint32_t n
Track initiation constant for M of N detections.
Definition: Tracker.h:24
double maxAccInit
Maximum acceleration to initiate track (Hz/s).
Definition: Tracker.h:33
std::vector< double > accInit
Acceleration values to initiate track (Hz/s).
Definition: Tracker.h:39
double rangeRes
Range resolution for kinematics equations (m).
Definition: Tracker.h:36
Track * process(Detection *detection, uint64_t timestamp)
Run through key functions of tracker.
Definition: Tracker.cpp:29
Tracker(uint32_t m, uint32_t n, uint32_t nDelete, double cpi, double maxAccInit, double rangeRes)
Constructor.
Definition: Tracker.cpp:5