Updated PCI IDs to latest snapshot.
[tangerine.git] / workbench / libs / uuid / uuid_private.h
blob4668ffa9191f286b8d19f53f6aff2f112a99aec2
1 #ifndef UUID_PRIVATE_H_
2 #define UUID_PRIVATE_H_
4 /*
5 Copyright © 2007-2008, The AROS Development Team. All rights reserved.
6 $Id$
7 */
9 #include <inttypes.h>
10 #include <exec/libraries.h>
11 #include <exec/semaphores.h>
12 #include <devices/timer.h>
13 #include <dos/dos.h>
15 #include <libraries/uuid.h>
17 typedef struct {
18 uuid_time_t ts; /* saved timestamp */
19 uuid_node_t node; /* saved node ID */
20 uint16_t cs; /* saved clock sequence */
21 } uuid_state_t;
23 struct uuid_base {
24 struct Library uuid_LibNode;
25 struct SignalSemaphore uuid_GlobalLock;
26 struct DOSBase *uuid_DOSBase;
27 struct timerequest uuid_TR;
28 uuid_state_t uuid_State;
29 uuid_time_t uuid_NextUpdate;
30 uuid_time_t uuid_LastTime;
31 uint32_t uuid_RandomSeed;
32 uint16_t uuid_UUIDs_ThisTick;
33 uint8_t uuid_Initialized;
37 #ifdef DOSBase
38 #undef DOSBase
39 #endif
40 #define DOSBase (LIBBASE->uuid_DOSBase)
42 #ifdef TimerBase
43 #undef TimerBase
44 #endif
45 #define TimerBase (LIBBASE->uuid_TR.tr_node.io_Device)
47 #define UUIDS_PER_TICK 1024
49 #endif /*UUID_PRIVATE_H_*/