ArDrone SDK 1.8 added
[mardrone] / mardrone / ARDrone_SDK_Version_1_8_20110726 / ARDroneLib / Soft / Lib / Maths / time.c
diff --git a/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/Soft/Lib/Maths/time.c b/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/Soft/Lib/Maths/time.c
new file mode 100644 (file)
index 0000000..90f4012
--- /dev/null
@@ -0,0 +1,34 @@
+#include <Maths/time.h>
+
+#ifndef _WIN32
+       #include <sys/time.h>
+#else
\r
+ #include <sys/timeb.h>\r
+ //#include <Winsock2.h>  // dont include; already included and double inclusion is buggy\r
+\r
+ int gettimeofday (struct timeval *tp, void *tz)\r
+ {\r
+        struct _timeb timebuffer;\r
+        _ftime (&timebuffer);\r
+        tp->tv_sec = (long)timebuffer.time;\r
+        tp->tv_usec = (long)timebuffer.millitm * 1000;\r
+        return 0;\r
+ }
+#endif
+
+float32_t time_in_ms_f(void)
+{
+  float32_t time_milli_sec, f_sec, f_usec;
+
+  struct timeval  tv;
+
+  gettimeofday(&tv, NULL);
+
+  f_sec   = (float32_t)tv.tv_sec;
+  f_usec  = (float32_t)tv.tv_usec;
+
+  time_milli_sec = (float32_t)(1000.0f*f_sec + f_usec/1000.0f);
+
+  return time_milli_sec;
+}