#include <iostream>
#include <conio.h>
#include "DCTIMER.h"
DWORD CTIMER::TicksPerS=0;
int main()
{
CTIMER timer;
DWORD Time=0;
char bleh=''d'';
timer.InitTimers();
while (bleh!=''q'')
{
bleh=getch();
std::cout<<timer.GetPassed(0)<<''\n'';
}
return 0;
}
//GetPassed function (in DCTIMER.h)
DWORD CTIMER::GetPassedMS()
{
__int64 Temp=0;
DWORD Passed;
if (QueryPerformanceCounter((LARGE_INTEGER*)&Temp)) //if Query Successful
{
Temp/=(CTIMER::TicksPerS*1000); //convert to MS
Passed=Temp-CTIMER::LASTCALL; //Get time passed
CTIMER::LASTCALL=Temp; //store Temp in LASTCALL
return Passed;
}
return FALSE;
}
//Init Timers Function
void CTIMER::InitTimers()
{
LARGE_INTEGER Temp;
Temp.QuadPart=0;
if (QueryPerformanceFrequency(&Temp))//Get Ticks Per Second
CTIMER::TicksPerS=Temp.LowPart; //Store in Class
}
this one seems to work great save for the fact taht it seems a bit slow, and the first number it gives me is something around 4234546
secondly... this doesnt have any output at all
#include <iostream>
#include <conio.h>
#include "c:\\documents and settings\\dan\\my documents\\visual studio projects\\life as it should be\\DCTIMER.h"
DWORD CTIMER::TicksPerS=0;
int main()
{
CTIMER timer;
DWORD Time=0;
char bleh=''d'';
timer.InitTimers();
while (bleh!=''q'')
{
if (timer.HasPassedMS((DWORD)1000))
{
std::cout<<timer.GetPassed(0)<<''\n'';
}
}
return 0;
}
//HasPassedMS function (in DCTIMER.h)
bool CTIMER::HasPassedMS(DWORD time)
{
__int64 Temp=0;
if (QueryPerformanceCounter((LARGE_INTEGER*)&Temp)) //if successful
{
Temp/=(CTIMER::TicksPerS*1000); //convert to MS
if ((Temp-CTIMER::LASTCALL)>time)
{
CTIMER::LASTCALL=Temp;
return TRUE;
}
return FALSE;
}
return FALSE;
}
Thanx for lookin at it
-Dan
Yes I realize im a n00b...