#include <OW_UUID.hpp>
Public Member Functions | |
UUID () | |
Create a new UUID. | |
UUID (const String &uuidStr) | |
Construct a UUID from string representation. | |
String | toString () const |
Get the string representation of this UUID. | |
Private Attributes | |
unsigned char | m_uuid [16] |
Friends | |
bool | operator== (const UUID &x, const UUID &y) |
bool | operator< (const UUID &x, const UUID &y) |
It is either guaranteed to be different from all other UUIDs/GUIDs generated until 3400 A.D. or extremely likely to be different. sizeof(UUID) == 16. The internal data is stored in network byte order, independent of host byte order.
This implementation based off of IETF internet draft: draft-leach-uuids-guids-01.txt That has expired, so if you want a real spec, see: DCE: Remote Procedure Call, Open Group CAE Specification C309 ISBN 1-85912-041-5 28cm. 674p. pbk. 1,655g. 8/94
Definition at line 58 of file OW_UUID.hpp.
|
Create a new UUID. Version 1, based on MAC address (or random if not available) and time+counter. Definition at line 202 of file OW_UUID.cpp. References OW_NAMESPACE::g_guard, OW_NAMESPACE::g_state, OW_NAMESPACE::getCurrentTime(), OW_NAMESPACE::getNodeIdentifier(), m_uuid, OW_NAMESPACE::NonRecursiveMutexLock::release(), and timestamp. |
|
Construct a UUID from string representation. The formal definition of the UUID string representation is provided by the following extended BNF: UUID = <time_low> "-" <time_mid> "-" <time_high_and_version> "-" <clock_seq_and_reserved> <clock_seq_low> "-" <node> time_low = 4*<hexOctet> time_mid = 2*<hexOctet> time_high_and_version = 2*<hexOctet> clock_seq_and_reserved = <hexOctet> clock_seq_low = <hexOctet> node = 6*<hexOctet> hexOctet = <hexDigit> <hexDigit> hexDigit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "a" | "b" | "c" | "d" | "e" | "f" | "A" | "B" | "C" | "D" | "E" | "F" The following is an example of the string representation of a UUID: f81d4fae-7dec-11d0-a765-00a0c91e6bf6
Definition at line 251 of file OW_UUID.cpp. References OW_NAMESPACE::String::c_str(), OW_NAMESPACE::String::length(), OW_THROW, and s. |
|
Get the string representation of this UUID. The following is an example of the string representation of a UUID: f81d4fae-7dec-11d0-a765-00a0c91e6bf6 Definition at line 277 of file OW_UUID.cpp. References OW_NAMESPACE::String::E_TAKE_OWNERSHIP, m_uuid, OW_NAMESPACE::toHexHi(), and OW_NAMESPACE::toHexLow(). Referenced by OW_NAMESPACE::generateNewNonce(). |
|
Definition at line 313 of file OW_UUID.cpp. |
|
Definition at line 308 of file OW_UUID.cpp. |
|
Definition at line 99 of file OW_UUID.hpp. Referenced by OW_NAMESPACE::operator<(), OW_NAMESPACE::operator==(), toString(), and UUID(). |