libqi-api
2.8.7.4
|
#include <ptruid.hpp>
Public Member Functions | |
PtrUid (const Uuid &machineUuid, const Uuid &processUuid, const void *ptr) | |
PtrUid () | |
const uint8_t & | operator[] (size_t n) const BOOST_NOEXCEPT |
Return a const ref to allow the address of the element to be taken. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &o, const PtrUid &uid) |
uint8_t * | begin (PtrUid &a) BOOST_NOEXCEPT |
uint8_t * | end (PtrUid &a) BOOST_NOEXCEPT |
const uint8_t * | begin (const PtrUid &a) BOOST_NOEXCEPT |
const uint8_t * | end (const PtrUid &a) BOOST_NOEXCEPT |
BOOST_CONSTEXPR size_t | size (const PtrUid &) BOOST_NOEXCEPT |
BOOST_CONSTEXPR bool | empty (const PtrUid &a) BOOST_NOEXCEPT |
U32Iterator | beginUInt32 (PtrUid &a) BOOST_NOEXCEPT |
U32Iterator | endUInt32 (PtrUid &a) BOOST_NOEXCEPT |
U32ConstIterator | beginUInt32 (const PtrUid &a) BOOST_NOEXCEPT |
U32ConstIterator | endUInt32 (const PtrUid &a) BOOST_NOEXCEPT |
Allows to uniquely identify a pointer in the universe.
It is in fact a sha1 hash on the concatenation of:
The process part is an uuid instead of the process id, to avoid that on a single machine two different processes with the same process id (after a loop in the process ids) cause different pointers to have the same PtrUid
.
A PtrUid
models the concepts Sequence and Hashable (i.e. std::hash<PtrUid> is defined).
If QI_PTRUID_DEBUG is defined, to ease debugging the first number of the digest is deterministic inside a process (static counter starting at 0).
Definition at line 33 of file ptruid.hpp.
|
explicit |
|
inline |
Definition at line 57 of file ptruid.hpp.
|
inline |
Return a const ref to allow the address of the element to be taken.
Definition at line 98 of file ptruid.hpp.
Definition at line 67 of file ptruid.hpp.
Definition at line 77 of file ptruid.hpp.
|
friend |
Definition at line 105 of file ptruid.hpp.
|
friend |
Definition at line 115 of file ptruid.hpp.
|
friend |
Definition at line 92 of file ptruid.hpp.
Definition at line 72 of file ptruid.hpp.
Definition at line 82 of file ptruid.hpp.
|
friend |
Definition at line 110 of file ptruid.hpp.
|
friend |
Definition at line 120 of file ptruid.hpp.
|
friend |
|
friend |
Definition at line 87 of file ptruid.hpp.