#include <iostream>
#include <fstream>
+#include <sys/time.h>
using namespace std;
#include "mtp_tracker.h"
+scalar_t diff_in_second(struct timeval *start, struct timeval *end) {
+ return
+ scalar_t(end->tv_sec - start->tv_sec) +
+ scalar_t(end->tv_usec - start->tv_usec)/1000000;
+}
+
int main(int argc, char **argv) {
- time_t start_time, end_time;
+ timeval start_time, end_time;
if(argc < 2) {
cerr << argv[0] << " <tracker file>" << endl;
tracker->read(in_tracker);
cout << "Building the graph ... "; cout.flush();
- start_time = time(0);
+ gettimeofday(&start_time, 0);
tracker->build_graph();
- end_time = time(0);
- cout << "done (" << end_time - start_time << "s)." << endl;
+ gettimeofday(&end_time, 0);
+ cout << "done (" << diff_in_second(&start_time, &end_time) << "s)." << endl;
cout << "Tracking ... "; cout.flush();
- start_time = time(0);
+ gettimeofday(&start_time, 0);
tracker->track();
- end_time = time(0);
- cout << "done (" << end_time - start_time << "s)." << endl;
+ gettimeofday(&end_time, 0);
+ cout << "done (" << diff_in_second(&start_time, &end_time) << "s)." << endl;
ofstream out_traj("result.trj");
tracker->write_trajectories(&out_traj);