]>
Commit | Line | Data |
---|---|---|
0ea34655 | 1 | |
10621efd MC |
2 | // Gathers unpredictable system data to be used for generating |
3 | // random bits | |
0ea34655 AP |
4 | |
5 | #include <MacTypes.h> | |
6 | ||
10621efd MC |
7 | class CRandomizer { |
8 | public: | |
9 | CRandomizer(void); | |
10 | void PeriodicAction(void); | |
11 | ||
12 | private: | |
13 | ||
14 | // Private calls | |
15 | ||
16 | void AddTimeSinceMachineStartup(void); | |
17 | void AddAbsoluteSystemStartupTime(void); | |
18 | void AddAppRunningTime(void); | |
19 | void AddStartupVolumeInfo(void); | |
20 | void AddFiller(void); | |
21 | ||
22 | void AddCurrentMouse(void); | |
23 | void AddNow(double millisecondUncertainty); | |
24 | void AddBytes(void *data, long size, double entropy); | |
25 | ||
26 | void GetTimeBaseResolution(void); | |
27 | unsigned long SysTimer(void); | |
28 | ||
29 | // System Info | |
30 | bool mSupportsLargeVolumes; | |
31 | bool mIsPowerPC; | |
32 | bool mIs601; | |
33 | ||
34 | // Time info | |
35 | double mTimebaseTicksPerMillisec; | |
36 | unsigned long mLastPeriodicTicks; | |
37 | ||
38 | // Mouse info | |
39 | long mSamplePeriod; | |
40 | Point mLastMouse; | |
41 | long mMouseStill; | |
0ea34655 | 42 | }; |