#include <UUID.h>
Collaboration diagram for ACE_Utils::UUID_Generator:
Public Types | |
typedef ACE_UINT64 | UUID_time |
enum | { ACE_UUID_CLOCK_SEQ_MASK = 0x3FFF } |
Public Methods | |
UUID_Generator () | |
~UUID_Generator () | |
void | init (void) |
void | generateUUID (UUID &, ACE_UINT16 version=0x0001, u_char variant=0x80) |
UUID * | generateUUID (ACE_UINT16 version=0x0001, u_char variant=0x80) |
ACE_SYNCH_MUTEX * | lock (void) |
ACE_SYNCH_MUTEX * | lock (ACE_SYNCH_MUTEX *lock, int release_lock) |
Set a new locking strategy and return the old one. | |
Private Methods | |
void | get_timestamp (UUID_time ×tamp) |
void | get_systemtime (UUID_time &timeNow) |
Private Attributes | |
UUID_time | timeLast_ |
The system time when that last uuid was generated. | |
UUID_State | uuid_state_ |
The UUID generator persistent state. | |
ACE_SYNCH_MUTEX * | lock_ |
int | destroy_lock_ |
|
Type to represent UTC as a count of 100 nanosecond intervals since 00:00:00.00, 15 October 1582. |
|
|
|
|
|
|
|
Format timestamp, clockseq, and nodeID into a VI UUID. For generating UUID's with thread and process ids use variant=0xc0 |
|
Format timestamp, clockseq, and nodeID into an UUID of the specified version and variant. For generating UUID's with thread and process ids use variant=0xc0 |
|
Obtain the system time in UTC as a count of 100 nanosecond intervals since 00:00:00.00, 15 October 1582 (the date of Gregorian reform to the Christian calendar). |
|
Obtain a UUID timestamp. Compensate for the fact that the time obtained from getSystem time has a resolution less than 100ns. |
|
|
|
Set a new locking strategy and return the old one.
|
|
The locking strategy prevents multiple generators from accessing the UUID_state at the same time. Get the locking strategy. |
|
|
|
|
|
The system time when that last uuid was generated.
|
|
The UUID generator persistent state.
|