00001 // ========================================================================================== 00010 // ========================================================================================== 00011 00012 #ifndef _VIDEOWRAPPERTIME_H 00013 #define _VIDEOWRAPPERTIME_H 00014 00015 #if defined(_WIN32) || defined(WIN32) || defined(__WIN32__) 00016 #include <windows.h> 00017 #else 00018 #ifndef UNIX 00019 #define UNIX 00020 #endif 00021 #endif 00022 00023 #ifdef WIN32 00024 #include <sys/timeb.h> 00025 #include <time.h> 00026 #endif 00027 00028 // ------------------------------------------------------------------------------------------ 00029 // struct timezone 00030 // ------------------------------------------------------------------------------------------ 00031 // TODO: doc 00032 // these are not defined for windows! 00033 // copied from from HP-UX 00034 00035 #ifndef UNIX 00036 #ifndef _STRUCT_TIMEZONE 00037 #define _STRUCT_TIMEZONE 00038 00039 struct timezone 00040 { 00041 int tz_minuteswest; // minutes west of Greenwich 00042 int tz_dsttime; // type of dst correction 00043 }; 00044 #endif 00045 #endif 00046 00047 00048 // ------------------------------------------------------------------------------------------ 00049 // vw_gettimeofday 00050 // ------------------------------------------------------------------------------------------ 00063 int vw_gettimeofday(timeval *tp, struct timezone *tzp); 00064 00065 00066 // ========================================================================================== 00067 // timeval operations copied from vrpn 00068 // ========================================================================================== 00069 00070 // ------------------------------------------------------------------------------------------ 00071 // TimevalSum 00072 // ------------------------------------------------------------------------------------------ 00084 // 00085 timeval TimevalSum( const timeval& tv1, const timeval& tv2 ); 00086 00087 // ------------------------------------------------------------------------------------------ 00088 // TimevalDiff 00089 // ------------------------------------------------------------------------------------------ 00100 timeval TimevalDiff( const timeval& tv1, const timeval& tv2 ); 00101 00102 // ------------------------------------------------------------------------------------------ 00103 // TimevalGreater 00104 // ------------------------------------------------------------------------------------------ 00113 int TimevalGreater (const timeval & tv1, const timeval & tv2); 00114 00115 // ------------------------------------------------------------------------------------------ 00116 // TimevalEqual 00117 // ------------------------------------------------------------------------------------------ 00126 // 00127 int TimevalEqual( const timeval& tv1, const timeval& tv2 ); 00128 00129 00130 // ------------------------------------------------------------------------------------------ 00131 // TimevalMsecs 00132 // ------------------------------------------------------------------------------------------ 00140 double TimevalMsecs( const timeval& tv ); 00141 00142 00143 // ------------------------------------------------------------------------------------------ 00144 // MsecsTimeval 00145 // ------------------------------------------------------------------------------------------ 00153 // 00154 timeval MsecsTimeval( const double dMsecs ); 00155 00156 00157 #endif // ifndef _VIDEOWRAPPERTIME_H 00158