📄 timestamp.h
字号:
//***************************************************************************/
//*
//* Copyright (c) 1998-99 Intel Corporation.
//* All rights reserved.
//*
//***************************************************************************/
//
//////////////////////////////////////////////////////////////////////
//
// TimeStamp.h: interface for the CTimeStamp class.
//
//////////////////////////////////////////////////////////////////////
#ifndef __TIMESTAMP_H
#define __TIMESTAMP_H
#if _MSC_VER >= 1000 // compiler version check
#pragma once // include this code only once in a build
#endif
#ifndef DWORD
#define DWORD unsigned long
#endif
#ifndef BOOL
#define BOOL int
#define TRUE 1
#define FALSE 0
#endif
class CTimeStamp
{
public:
CTimeStamp( void )
{
startTime = stopTime = 0;
bStarted = FALSE;
}
void start( void )
{
ReadTimeStamp( &startTime );
bStarted = TRUE;
}
__int64 stop( void )
{
if ( ! bStarted )
return 0;
bStarted = FALSE;
ReadTimeStamp( &stopTime );
return( stopTime - startTime );
}
__int64 getRunTime( void )
{
if ( ! bStarted )
return 0;
ReadTimeStamp( &stopTime );
return( stopTime - startTime );
}
private:
__int64 startTime, stopTime;
BOOL bStarted;
void ReadTimeStamp( __int64 *pMem )
{
DWORD *pLow = (DWORD *) pMem;
DWORD *pHigh = pLow + 1;
__asm _emit 0x0f
__asm _emit 0x31
__asm mov ecx, pHigh
__asm mov [ecx], edx
__asm mov ecx, pLow
__asm mov [ecx], eax
}
};
#endif // __TIMESTAMP_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -