Пример #1
0
double TimerBase::ConvertTo(word64 t, Unit unit)
{
	static unsigned long unitsPerSecondTable[] = {1, 1000, 1000*1000, 1000*1000*1000};

	assert(unit < sizeof(unitsPerSecondTable) / sizeof(unitsPerSecondTable[0]));
	return (double)t * unitsPerSecondTable[unit] / TicksPerSecond();
}
Пример #2
0
double TimerBase::ConvertTo(TimerWord t, Unit unit)
{
	static unsigned long unitsPerSecondTable[] = {1, 1000, 1000*1000, 1000*1000*1000};

	// When 'unit' is an enum 'Unit', a Clang warning is generated.
	CRYPTOPP_ASSERT(static_cast<unsigned int>(unit) < COUNTOF(unitsPerSecondTable));
	return static_cast<double>(t) * unitsPerSecondTable[unit] / TicksPerSecond();
}
Пример #3
0
void dumpprinttime(ProxyStream& os, __int64 x, __int64 q)
{       
	double xx = double(x)/(double(TicksPerSecond())*double(q)*3600.0);
	if(xx > 10.0)
	{
		dumpprint(os,int(xx),0,"h");
		return;
	};

	if(xx >= 1.0)
	{
		int h = int(xx);
		dumpprint(os,h);
		dumpprint(os,":");
		xx-=h;
		xx*=60;
		int m = int(xx);
		if(m<10) dumpprint(os,"0");
		dumpprint(os,m);
		return;
	};

	xx*=60;
	if(xx >= 1.0)
	{
		dumpprint(os,":");
		int m = int(xx);
		if(m<10) dumpprint(os,"0");
		dumpprint(os,m);
		dumpprint(os,":");
		xx-=m;
		xx*=60;
		int s = int(xx);
		if(s<10) dumpprint(os,"0");
		dumpprint(os,s);
		return;
	};

	xx*=600;

	char* Unit[6] = {"s","ms","µs","ns","ps","fs"};
	for(int i=1;i<18;i++)
	{
		if(xx >= 100.0)
		{
			dumpprint(os,int(xx),i%3,Unit[i/3]);
			return;
		};
		xx*=10;
	};
	dumpprint(os,"0");
};
Пример #4
0
double TimerBase::ConvertTo(TimerWord t, Unit unit)
{
	static unsigned long unitsPerSecondTable[] = {1, 1000, 1000*1000, 1000*1000*1000};

	assert(unit < sizeof(unitsPerSecondTable) / sizeof(unitsPerSecondTable[0]));
	return (double)CRYPTOPP_VC6_INT64 t * unitsPerSecondTable[unit] / CRYPTOPP_VC6_INT64 TicksPerSecond();
}
Пример #5
0
double TimerBase::ConvertTo(TimerWord t, Unit unit)
{
	static unsigned long unitsPerSecondTable[] = {1, 1000, 1000*1000, 1000*1000*1000};

	// When 'unit' is an enum 'Unit', a Clang warning is generated.
	assert(static_cast<unsigned int>(unit) < COUNTOF(unitsPerSecondTable));
	return (double)CRYPTOPP_VC6_INT64 t * unitsPerSecondTable[unit] / CRYPTOPP_VC6_INT64 TicksPerSecond();
}
Пример #6
0
double TimerBase::ConvertTo(TimerWord t, Unit unit)
{
	static unsigned long unitsPerSecondTable[] = {1, 1000, 1000*1000, 1000*1000*1000};

	CRYPTOPP_ASSERT(unit < COUNTOF(unitsPerSecondTable));
	return (double)CRYPTOPP_VC6_INT64 t * unitsPerSecondTable[unit] / CRYPTOPP_VC6_INT64 TicksPerSecond();
}
Пример #7
0
int64_t XWindow::TicksPerUpdate()
{ return TicksPerSecond() / UpdatesPerSecond(); }
Пример #8
0
int64_t XWindow::TicksPerFrame()
{ return TicksPerSecond() / FramesPerSecond(); }