⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timer.cpp

📁 The Spectral Toolkit is a C++ spectral transform library written by Rodney James and Chuck Panaccion
💻 CPP
字号:
//// spectral toolkit // copyright (c) 2005 university corporation for atmospheric research// licensed under the gnu general public license//#include "timer.h"#if defined(__hpux)#include <time.h>#include <stdio.h>double spectral::timer::clock(){  double t;  struct timeval buffer;  struct timezone dummy;  gettimeofday (&buffer, &dummy);  t = (double)(buffer.tv_sec*1000000 + buffer.tv_usec);  return (t);}#elif defined (__sun)#include <time.h>double spectral::timer::clock(){  struct timespec tp;  clock_gettime(CLOCK_HIGHRES,&tp);  double usec=1.0e-03*(double)tp.tv_nsec+1.0e+06*(double)tp.tv_sec;  return(usec);}#elif defined(linux) #include <sys/time.h>double spectral::timer::clock(){  double t;  struct timeval buffer;  struct timezone dummy;  gettimeofday (&buffer, &dummy);  t = (double)(buffer.tv_sec*1000000 + buffer.tv_usec);  return (t);}#elif defined(__alpha) #include <sys/time.h>double spectral::timer::clock(){  double t;  struct timeval buffer;  struct timezone dummy;  gettimeofday (&buffer, &dummy);  t = (double)(buffer.tv_sec*1000000+buffer.tv_usec);  return (t);}#elif defined(__sgi) #include <time.h>double spectral::timer::clock(){  struct timespec tp;  clock_gettime(CLOCK_REALTIME,&tp);  double usec=1.0e-03*(double)tp.tv_nsec+1.0e+06*(double)tp.tv_sec;  return(usec);}#elif defined(_AIX) #include <sys/time.h>#include <sys/systemcfg.h>double spectral::timer::clock(){  double t;  timebasestruct_t T;  read_real_time(&T,TIMEBASE_SZ);  time_base_to_time(&T,TIMEBASE_SZ);  t=(double)(T.tb_low)*1.0e-03+(double)(T.tb_high)*1.0e+6;  return (t);}#elif defined(__APPLE__) #include <sys/time.h>double spectral::timer::clock(){  double t;  struct timeval buffer;  struct timezone dummy;  gettimeofday (&buffer, &dummy);  t = (double)(buffer.tv_sec*1000000 + buffer.tv_usec);  return (t);}#else#include <time.h>double spectral::timer::clock(void){  clock_t t0;  double c=1.0e+06/(double)CLOCKS_PER_SEC;  double t;  t=c*(double)clock();  return(t);}#endifspectral::timer::timer(){  clear();}spectral::timer::~timer(){}void spectral::timer::start(){  T=clock();}void spectral::timer::stop(){  T=clock()-T;  Total+=T;}void spectral::timer::clear(){  Total=0.0;  T=0.0;}double spectral::timer::time(){  return(Total);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -