QUuid(3qt)

NAME
QUuid - Defines a Universally Unique Identifier (UUID)

SYNOPSIS
All the functions in this class are reentrant when Qt is built with thread support.</p>

#include <quuid.h>

  Public Members
<li class=fn>enum Variant { VarUnknown = -1, NCS = 0, DCE = 2, Microsoft = 6, Reserved = 7 } <li class=fn>enum Version { VerUnknown = -1, Time = 1, EmbeddedPOSIX = 2, Name = 3, Random = 4 } <li class=fn>QUuid () <li class=fn>QUuid ( uint l, ushort w1, ushort w2, uchar b1, uchar b2, uchar b3, uchar b4, uchar b5, uchar b6, uchar b7, uchar b8 ) <li class=fn>QUuid ( const QUuid & orig ) <li class=fn>QUuid ( const QString & text ) <li class=fn>QString toString () const <li class=fn>operator QString () const <li class=fn>bool isNull () const <li class=fn>QUuid & operator= ( const QUuid & uuid ) <li class=fn>bool operator== ( const QUuid & other ) const <li class=fn>bool operator!= ( const QUuid & other ) const <li class=fn>bool operator< ( const QUuid & other ) const <li class=fn>bool operator> ( const QUuid & other ) const <li class=fn>QUuid::Variant variant () const <li class=fn>QUuid::Version version () const

  Static Public Members
<li class=fn>QUuid createUuid ()

RELATED FUNCTION DOCUMENTATION
<li class=fn>QDataStream & operator<< ( QDataStream & s, const QUuid & id ) <li class=fn>QDataStream & operator>> ( QDataStream & s, QUuid & id )

DESCRIPTION
The QUuid class defines a Universally Unique Identifier (UUID).

For objects or declarations that must be uniquely identified, UUIDs (also known as GUIDs) are widely used in order to assign a fixed and easy to compare value to the object or declaration. The 128-bit value of a UUID is generated by an algorithm that guarantees that the value is unique.

In Qt, UUIDs are wrapped by the QUuid struct which provides convenience functions for handling UUIDs. Most platforms provide a tool to generate new UUIDs, for example, uuidgen and guidgen.

UUIDs generated by QUuid, are based on the Random version of the DCE (Distributed Computing Environment) standard.

UUIDs can be constructed from numeric values or from strings, or using the static createUuid() function. They can be converted to a string with toString(). UUIDs have a variant() and a version(), and null UUIDs return TRUE from isNull().

  Member Type Documentation

QUuid::Variant
This enum defines the variant of the UUID, which is the scheme which defines the layout of the 128-bits value.

QUuid::VarUnknown - Variant is unknown

QUuid::NCS - Reserved for NCS (Network Computing System) backward compatibility

QUuid::DCE - Distributed Computing Environment, the scheme used by QUuid

QUuid::Microsoft - Reserved for Microsoft backward compatibility (GUID)

QUuid::Reserved - Reserved for future definition

QUuid::Version
This enum defines the version of the UUID.

QUuid::VerUnknown - Version is unknown

QUuid::Time - Time-based, by using timestamp, clock sequence, and MAC network card address (if available) for the node sections

QUuid::EmbeddedPOSIX - DCE Security version, with embedded POSIX UUIDs

QUuid::Name - Name-based, by using values from a name for all sections

QUuid::Random - Random-based, by using random numbers for all sections

MEMBER FUNCTION DOCUMENTATION

QUuid::QUuid ()
Creates the null UUID {00000000-0000-0000-0000-000000000000}.

QUuid::QUuid ( uint l, ushort w1, ushort w2, uchar b1, uchar b2, uchar b3, uchar b4, uchar b5, uchar b6, uchar b7, uchar b8 )
Creates a UUID with the value specified by the parameters, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8.

Example:

    // {67C8770B-44F1-410A-AB9A-F9B5446F13EE}
    QUuid IID_MyInterface( 0x67c8770b, 0x44f1, 0x410a, 0xab, 0x9a, 0xf9, 0xb5, 0x44, 0x6f, 0x13, 0xee )

QUuid::QUuid ( const QUuid & orig )
Creates a copy of the QUuid orig.

QUuid::QUuid ( const QString & text )
Creates a QUuid object from the string text. The function can only convert a string in the format {HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH} (where 'H' stands for a hex digit). If the conversion fails a null UUID is created.

QUuid QUuid::createUuid () [static]
Returns a new UUID of DCE variant, and Random type. The UUIDs generated are based on the platform specific pseudo-random generator, which is usually not a cryptographic-quality random number generator. Therefore, a UUID is not guaranteed to be unique cross application instances.

On Windows, the new UUID is extremely likely to be unique on the same or any other system, networked or not.

See also variant() and version().

bool QUuid::isNull () const
Returns TRUE if this is the null UUID {00000000-0000-0000-0000-000000000000}; otherwise returns FALSE.

QUuid::operator QString () const
Returns the string representation of the uuid.

See also toString().

bool QUuid::operator!= ( const QUuid & other ) const
Returns TRUE if this QUuid and the other QUuid are different; otherwise returns FALSE.

bool QUuid::operator< ( const QUuid & other ) const
Returns TRUE if this QUuid is of the same variant, and lexicographically before the other QUuid; otherwise returns FALSE.

See also variant().

QUuid & QUuid::operator= ( const QUuid & uuid )
Assigns the value of uuid to this QUuid object.

bool QUuid::operator== ( const QUuid & other ) const
Returns TRUE if this QUuid and the other QUuid are identical; otherwise returns FALSE.

bool QUuid::operator> ( const QUuid & other ) const
Returns TRUE if this QUuid is of the same variant, and lexicographically after the other QUuid; otherwise returns FALSE.

See also variant().

QString QUuid::toString () const
QString QUuid::toString() const

Returns the string representation of the uuid.

QUuid::Variant QUuid::variant () const
Returns the variant of the UUID. The null UUID is considered to be of an unknown variant.

See also version().

QUuid::Version QUuid::version () const
Returns the version of the UUID, if the UUID is of the DCE variant; otherwise returns VerUnknown.

See also variant().

RELATED FUNCTION DOCUMENTATION

QDataStream & operator<< ( QDataStream & s, const QUuid & id )
Writes the uuid id to the datastream s.

QDataStream & operator>> ( QDataStream & s, QUuid & id )
Reads uuid from from the stream s into id.

SEE ALSO
http://doc.trolltech.com/quuid.html http://www.trolltech.com/faq/tech.html

COPYRIGHT
Copyright 1992-2001 Trolltech AS, http://www.trolltech.com. See the license file included in the distribution for a complete license statement.

AUTHOR
Generated automatically from the source code.

BUGS
If you find a bug in Qt, please report it as described in http://doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you.

The definitive Qt documentation is provided in HTML format; it is located at $QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is provided as a convenience for those users who prefer man pages, although this format is not officially supported by Trolltech.

If you find errors in this manual page, please report them to qt-bugs@trolltech.com. Please include the name of the manual page (quuid.3qt) and the Qt version (3.3.3).