You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
891 B
42 lines
891 B
|
|
// Gathers unpredictable system data to be used for generating |
|
// random bits |
|
|
|
#include <MacTypes.h> |
|
|
|
class CRandomizer { |
|
public: |
|
CRandomizer(void); |
|
void PeriodicAction(void); |
|
|
|
private: |
|
|
|
// Private calls |
|
|
|
void AddTimeSinceMachineStartup(void); |
|
void AddAbsoluteSystemStartupTime(void); |
|
void AddAppRunningTime(void); |
|
void AddStartupVolumeInfo(void); |
|
void AddFiller(void); |
|
|
|
void AddCurrentMouse(void); |
|
void AddNow(double millisecondUncertainty); |
|
void AddBytes(void *data, long size, double entropy); |
|
|
|
void GetTimeBaseResolution(void); |
|
unsigned long SysTimer(void); |
|
|
|
// System Info |
|
bool mSupportsLargeVolumes; |
|
bool mIsPowerPC; |
|
bool mIs601; |
|
|
|
// Time info |
|
double mTimebaseTicksPerMillisec; |
|
unsigned long mLastPeriodicTicks; |
|
|
|
// Mouse info |
|
long mSamplePeriod; |
|
Point mLastMouse; |
|
long mMouseStill; |
|
};
|
|
|