man uuid++ () - Universally Unique Identifier (C++ API)

NAME

OSSP uuid - Universally Unique Identifier (C++ API)

VERSION

OSSP uuid 1.3.2 (06-Dec-2005)

DESCRIPTION

uuid++ is the ISO- language binding of the OSSP uuid C API. It provides a thin ISO- class uuid wrapping the ISO-C API type uuid_t.

APPLICATION PROGRAMMING INTERFACE

The ISO- Application Programming Interface (API) of OSSP uuid consists of the following components:

CONSTANTS

The constants are the same to those provided by the ISO-C API. See uuid(3) for details.

CLASSES

The following classes are provided:

uuid
This is the class corresponding to the C API type uuid_t. It is the main object.
uuid_error_t
This is the class corresponding to the C API function uuid_error. It is the object thrown as an exception in case of any errors.

METHODS

The following methods are provided:

uuid();
The standard constructor.
uuid(const uuid &_obj);
The copy constructor for uuid class.
uuid(const uuid_t *_obj);
The import constructor for C API objects.
uuid(const void *_bin);
The import constructor for binary representation.
uuid(const char *_str);
The import constructor for string representation.
~uuid();
The standard destructor for uuid class.
uuid &uuid::operator=(const uuid &_obj);
The assignment operator corresponding to the copy constructor.
uuid &uuid::operator=(const uuid_t *_obj);
The assignment operator corresponding to the import constructor for C API objects.
uuid &uuid::operator=(const void *_bin);
The assignment operator corresponding to the import constructor for binary representation.
uuid &uuid::operator=(const char *_str);
The assignment operator corresponding to the import constructor for string representation.
uuid uuid::clone(void);
Regular method corresponding to the C API function uuid_clone.
void uuid::load(const char *_name);
Regular method corresponding to the C API function uuid_load.
void uuid::make(unsigned int _mode, ...);
Regular method corresponding to the C API function uuid_make.
int uuid::isnil(void);
Regular method corresponding to the C API function uuid_isnil.
int uuid::compare(const uuid &_obj);
Regular method corresponding to the C API function uuid_compare.
int uuid::operator==(const uuid &_obj);
The comparison operator corresponding to uuid_compare usage for equality.
int uuid::operator!=(const uuid &_obj);
The comparison operator corresponding to uuid_compare usage for inequality.
int uuid::operator<(const uuid &_obj);
The comparison operator corresponding to uuid_compare usage for less-than.
int uuid::operator<=(const uuid &_obj);
The comparison operator corresponding to uuid_compare usage for less-than-or-equal.
int uuid::operator>(const uuid &_obj);
The comparison operator corresponding to uuid_compare usage for greater-than.
int uuid::operator>=(const uuid &_obj);
The comparison operator corresponding to uuid_compare usage for greater-than-or-equal.
void uuid::import(const void *_bin);
Regular method corresponding to the C API function uuid_import for binary representation usage.
void uuid::import(const char *_str);
Regular method corresponding to the C API function uuid_import for string representation usage.
void *uuid::binary(void);
Regular method corresponding to the C API function uuid_export for binary representation usage.
char *uuid::string(void);
Regular method corresponding to the C API function uuid_export for string representation usage.
char *uuid::summary(void);
Regular method corresponding to the C API function uuid_export for textual summary representation usage.
unsigned long uuid::version(void);
Regular method corresponding to the C API function uuid_version.
uuid_error_t()
The standard constructor for uuid_error_t class.
uuid_error_t(uuid_rc_t _code)
The standard constructor for uuid_error_t class with return code initialization.
~uuid_error_t()
The standard destructor for uuid_error_t class.
void uuid_error_t::code(uuid_rc_t _code)
Regular method for setting the return code.
uuid_rc_t uuid_error_t::code(void)
Regular method for fetching the return code.
char *uuid_error_t::string(void)
Regular method for fetching the string corresponding to the current return code.

EXAMPLE

The following shows an example usage of the API. Exception handling is omitted for code simplification and has to be re-added for production code.

 /* generate a DCE 1.1 v1 UUID from system environment */
 char *uuid_v1(void)
 {
     uuid id;
     char *str;

     id.make(UUID_MAKE_V1);
     str = id.string();
     return str;
 }

 /* generate a DCE 1.1 v3 UUID from an URL */
 char *uuid_v3(const char *url)
 {
     uuid id;
     uuid id_ns;
     char *str;

     id_ns.load("ns:URL");
     id.make(UUID_MAKE_V3, &id_ns, url);
     str = id.string();
     return str;
 }

SEE ALSO

uuid(3).