# synfig::GUID Class Reference

`#include <guid.h>`

List of all members.

## Public Member Functions

| GUID ()
| GUID (const GUID &x)
| GUID (const int i __attribute__((unused)))
| GUID (const String &str)
| operator bool () const
uint64_t | get_hi () const
uint64_t | get_lo () const
uint64_t | get_hi_hi () const
uint64_t | get_hi_lo () const
uint64_t | get_lo_hi () const
uint64_t | get_lo_lo () const
void | make_unique ()
String | get_string () const
bool | operator== (const GUID &rhs) const
bool | operator!= (const GUID &rhs) const
bool | operator< (const GUID &rhs) const
bool | operator> (const GUID &rhs) const
bool | operator<= (const GUID &rhs) const
bool | operator>= (const GUID &rhs) const
GUID & | operator^= (const GUID &rhs)
| Operator '^' (xor).
GUID | operator^ (const GUID &rhs) const
GUID & | operator%= (const GUID &rhs)
| Operator '' (alt-xor).
GUID | operator% (const GUID &rhs) const

## Static Public Member Functions

static GUID | zero ()
static GUID | hasher (const String &str)
static GUID | hasher (int i)

## Constructor & Destructor Documentation

synfig::GUID::GUID | ( |  | ) | `[inline]`

References make_unique().

Referenced by operator%(), operator^(), and zero().

synfig::GUID::GUID | ( | const GUID & | x | ) | `[inline]`

synfig::GUID::GUID | ( | const int i | __attribute__(unused) | ) | `[inline]`

synfig::GUID::GUID | ( | const String & | str | ) |

## Member Function Documentation

static GUID synfig::GUID::zero | ( |  | ) | `[inline, static]`

References GUID().

synfig::GUID synfig::GUID::hasher | ( | const String & | str | ) | `[static]`

References data, GUID_RNG, and u_32.

Referenced by synfig::Waypoint::get_guid(), and synfig::Activepoint::get_guid().

synfig::GUID synfig::GUID::hasher | ( | int | i | ) | `[static]`

References data, GUID_RNG, and u_32.

synfig::GUID::operator bool | ( |  | ) | const`[inline]`

uint64_t synfig::GUID::get_hi | ( |  | ) | const`[inline]`

uint64_t synfig::GUID::get_lo | ( |  | ) | const`[inline]`

uint64_t synfig::GUID::get_hi_hi | ( |  | ) | const`[inline]`

Referenced by synfig::GUIDHash::operator()().

uint64_t synfig::GUID::get_hi_lo | ( |  | ) | const`[inline]`

Referenced by synfig::GUIDHash::operator()().

uint64_t synfig::GUID::get_lo_hi | ( |  | ) | const`[inline]`

Referenced by synfig::GUIDHash::operator()().

uint64_t synfig::GUID::get_lo_lo | ( |  | ) | const`[inline]`

Referenced by synfig::GUIDHash::operator()().

void synfig::GUID::make_unique | ( |  | ) |

References get_rand_long_long.

Referenced by GUID(), and synfig::Node::Node().

String synfig::GUID::get_string | ( | void |  | ) | const

bool synfig::GUID::operator== | ( | const GUID & | rhs | ) | const`[inline]`

References data, and u_64.

Referenced by operator<=(), and operator>=().

bool synfig::GUID::operator!= | ( | const GUID & | rhs | ) | const`[inline]`

References data, and u_64.

bool synfig::GUID::operator< | ( | const GUID & | rhs | ) | const`[inline]`

References data, and u_64.

Referenced by operator<=().

bool synfig::GUID::operator> | ( | const GUID & | rhs | ) | const`[inline]`

References data, and u_64.

Referenced by operator>=().

bool synfig::GUID::operator<= | ( | const GUID & | rhs | ) | const`[inline]`

References operator<(), and operator==().

bool synfig::GUID::operator>= | ( | const GUID & | rhs | ) | const`[inline]`

References operator==(), and operator>().

GUID& synfig::GUID::operator^= | ( | const GUID & | rhs | ) | `[inline]`

Operator '^' (xor).

If A ^ B == C, then C ^ B == A and B ^ A == C. Also keep in mind that A ^ A == 0 and A ^ B ^ B = A.

References data, and u_32.

GUID synfig::GUID::operator^ | ( | const GUID & | rhs | ) | const`[inline]`

References GUID().

GUID& synfig::GUID::operator%= | ( | const GUID & | rhs | ) | `[inline]`

Operator '' (alt-xor).

A % B != B % A.

References data, and u_32.

GUID synfig::GUID::operator% | ( | const GUID & | rhs | ) | const`[inline]`

References GUID().

## Member Data Documentation

unsigned int synfig::GUID::a

unsigned int synfig::GUID::b

unsigned int synfig::GUID::c

unsigned int synfig::GUID::d

struct { ... } synfig::GUID::u_32

Referenced by hasher(), operator%=(), and operator^=().

uint64_t synfig::GUID::a

uint64_t synfig::GUID::b

struct { ... } synfig::GUID::u_64

Referenced by operator!=(), operator<(), operator==(), and operator>().

The documentation for this class was generated from the following files:

- guid.h
- guid.cpp