Plasma Engine  2.0
Loading...
Searching...
No Matches
plUuid Class Reference

This data type is the abstraction for 128-bit Uuid (also known as GUID) instances. More...

#include <Uuid.h>

Public Member Functions

 PL_DECLARE_POD_TYPE ()
 
PL_ALWAYS_INLINE plUuid ()=default
 Default constructor. Constructed Uuid will be invalid.
 
PL_ALWAYS_INLINE constexpr plUuid (plUInt64 uiLow, plUInt64 uiHigh)
 Constructs the Uuid from existing values.
 
PL_ALWAYS_INLINE bool operator== (const plUuid &other) const
 Comparison operator. [tested].
 
PL_ALWAYS_INLINE bool operator!= (const plUuid &other) const
 Comparison operator. [tested].
 
PL_ALWAYS_INLINE bool operator< (const plUuid &other) const
 Comparison operator.
 
PL_ALWAYS_INLINE bool IsValid () const
 Returns true if this is a valid Uuid.
 
void GetValues (plUInt64 &ref_uiLow, plUInt64 &ref_uiHigh) const
 Returns the internal 128 Bit of data.
 
PL_ALWAYS_INLINE void CombineWithSeed (const plUuid &seed)
 Adds the given seed value to this guid, creating a new guid. The process is reversible.
 
PL_ALWAYS_INLINE void RevertCombinationWithSeed (const plUuid &seed)
 Subtracts the given seed from this guid, restoring the original guid.
 
PL_ALWAYS_INLINE void HashCombine (const plUuid &hash)
 Combines two guids using hashing, irreversible and order dependent.
 

Static Public Member Functions

static PL_ALWAYS_INLINE plUuid MakeInvalid ()
 Returns an invalid UUID.
 
static plUuid MakeUuid ()
 Returns a new Uuid.
 
static plUuid MakeStableUuidFromString (plStringView sString)
 Creates a uuid from a string. The result is always the same for the same string.
 
static plUuid MakeStableUuidFromInt (plInt64 iInt)
 Creates a uuid from an integer. The result is always the same for the same input.
 

Friends

PL_FOUNDATION_DLL_FRIEND void operator>> (plStreamReader &inout_stream, plUuid &ref_value)
 Operator to serialize plUuid objects. [tested].
 
PL_FOUNDATION_DLL_FRIEND void operator<< (plStreamWriter &inout_stream, const plUuid &value)
 Operator to serialize plUuid objects. [tested].
 

Detailed Description

This data type is the abstraction for 128-bit Uuid (also known as GUID) instances.


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