win32.c
上传用户:hjq518
上传日期:2021-12-09
资源大小:5084k
文件大小:1k
源码类别:

Audio

开发平台:

Visual C++

  1. /*!
  2.  *************************************************************************************
  3.  * file win32.c
  4.  *
  5.  * brief
  6.  *    Platform dependent code
  7.  *
  8.  * author
  9.  *    Main contributors (see contributors.h for copyright, address and affiliation details)
  10.  *      - Karsten Suehring                  <suehring@hhi.de>
  11.  *************************************************************************************
  12.  */
  13. #include "global.h"
  14. #ifdef _WIN32
  15. static LARGE_INTEGER freq;
  16. void gettime(TIME_T* time)
  17. {
  18.   QueryPerformanceCounter(time);
  19. }
  20. time_t timediff(TIME_T* start, TIME_T* end)
  21. {
  22.   static int first = 1;
  23.   if(first) 
  24.   {
  25.     QueryPerformanceFrequency(&freq);
  26.     first = 0;
  27.   }
  28.   return (time_t)((end->QuadPart - start->QuadPart)* 1000 /(freq.QuadPart));
  29. }
  30. #else
  31. static struct timezone tz;
  32. void gettime(TIME_T* time)
  33. {
  34.   gettimeofday(time, &tz);
  35. }
  36. time_t timediff(TIME_T* start, TIME_T* end)
  37. {
  38.   time_t t1, t2;
  39.   t1 =  start->tv_sec * 1000 + (start->tv_usec/1000);
  40.   t2 =  end->tv_sec  * 1000 + (end->tv_usec/1000);
  41.   return t2-t1;
  42. }
  43. #endif