Preparing to make mtp be a command line using an input file.
[mtp.git] / tracker.h
index aa1518e..b56ac61 100644 (file)
--- a/tracker.h
+++ b/tracker.h
@@ -34,14 +34,29 @@ class Tracker {
 
   MTPGraph *_graph;
   scalar_t *_edge_lengths;
+
+  int early_pair_node(int t, int l);
+  int late_pair_node(int t, int l);
+
 public:
-  scalar_t **detection_score;
+
+  // The spatial structure
   int **allowed_motion;
   int *entrances, *exits;
 
-  Tracker(int nb_time_steps, int nb_locations);
+  // The detection scores at each node
+  scalar_t **detection_scores;
+
+  Tracker();
   ~Tracker();
 
+  void allocate(int nb_time_steps, int nb_locations);
+  void free();
+
+  void write(ostream *os);
+  void read(istream *is);
+  void write_trajectories(ostream *os);
+
   // Build or print the graph needed for the tracking per se
 
   void build_graph();
@@ -57,7 +72,7 @@ public:
   scalar_t trajectory_score(int k);
   int trajectory_entrance_time(int k);
   int trajectory_duration(int k);
-  int trajectory_location(int k, int time);
+  int trajectory_location(int k, int time_from_entry);
 };
 
 #endif