Resource ID
/** * @brief Create an association between a memory_resource* and a unique std::size_t * @param res memory_resource* a resource to identify with the additional numeric id * @param id std::size_t a numeric id by which to identify the specified memory_resource*, must not be the special value of 0. */
void identify_resource_with(memory_resource* res, std::size_t id);
/** * @brief Query the associated identifier of a given memory_resource. * @param res memory_resource* which had an identifier previously set by a call to @see identify_resource_with * @return the identifier that was previously assigned to this resource or the special value of 0 if no such identifier. */
std::size_t get_resource_identifier(memory_resource* res);
>
Serialization
/** * @brief Serialize *everything* into a serialization_buffer, using a serial_context. * @param buf serialization_buffer object that will contain the serialization when the call returns. * @param ctx serial_context the context to use for vtable numbering of types. */
void serialize_buffer(serialization_buffer& buf, serial_context ctx = G_DEFAULT_SERIAL_CONTEXT);
/** * @brief Serialize offsets into a serialization_buffer, using a serial_context, and by cross-referring to a set of known ranges. * @param offsets memory_range_offsets object which should contain the ranges (e.g., by calls to @see memcontour). * @param ranges memory_range_offsets object returned by @see expand_ranges. * @param buf serialization_buffer object that will contain the serialization when the call returns. * @param ctx serial_context the context to use for vtable numbering of types. */
void serialize_buffer_ranges(memory_range_offsets& offsets, const memory_range_offsets& ranges, serialization_buffer& buf, serial_context ctx = G_DEFAULT_SERIAL_CONTEXT);
<