EnTT 3.14.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
entt::basic_snapshot_loader< Registry > Class Template Reference

Utility class to restore a snapshot as a whole. More...

#include <snapshot.hpp>

Public Types

using registry_type = Registry
 
using entity_type = typename registry_type::entity_type
 Underlying entity identifier.
 

Public Member Functions

 basic_snapshot_loader (registry_type &source) noexcept
 Constructs an instance that is bound to a given registry.
 
 basic_snapshot_loader (const basic_snapshot_loader &)=delete
 Default copy constructor, deleted on purpose.
 
 basic_snapshot_loader (basic_snapshot_loader &&) noexcept=default
 Default move constructor.
 
 ~basic_snapshot_loader ()=default
 Default destructor.
 
basic_snapshot_loaderoperator= (const basic_snapshot_loader &)=delete
 Default copy assignment operator, deleted on purpose.
 
basic_snapshot_loaderoperator= (basic_snapshot_loader &&) noexcept=default
 Default move assignment operator.
 
template<typename Type , typename Archive >
basic_snapshot_loaderget (Archive &archive, const id_type id=type_hash< Type >::value())
 Restores all elements of a type with associated identifiers.
 
basic_snapshot_loaderorphans ()
 Destroys those entities that have no elements.
 

Detailed Description

template<typename Registry>
class entt::basic_snapshot_loader< Registry >

Utility class to restore a snapshot as a whole.

A snapshot loader requires that the destination registry be empty and loads all the data at once while keeping intact the identifiers that the entities originally had.
An example of use is the implementation of a save/restore utility.

Template Parameters
RegistryBasic registry type.

Definition at line 176 of file snapshot.hpp.

Member Typedef Documentation

◆ entity_type

template<typename Registry >
using entt::basic_snapshot_loader< Registry >::entity_type = typename registry_type::entity_type

Underlying entity identifier.

Definition at line 184 of file snapshot.hpp.

◆ registry_type

Basic registry type.

Definition at line 182 of file snapshot.hpp.

Constructor & Destructor Documentation

◆ basic_snapshot_loader()

template<typename Registry >
entt::basic_snapshot_loader< Registry >::basic_snapshot_loader ( registry_type & source)
inlinenoexcept

Constructs an instance that is bound to a given registry.

Parameters
sourceA valid reference to a registry.

Definition at line 190 of file snapshot.hpp.

Member Function Documentation

◆ get()

template<typename Registry >
template<typename Type , typename Archive >
basic_snapshot_loader & entt::basic_snapshot_loader< Registry >::get ( Archive & archive,
const id_type id = type_hash<Type>::value() )
inline

Restores all elements of a type with associated identifiers.

Template Parameters
TypeType of elements to restore.
ArchiveType of input archive.
Parameters
archiveA valid reference to an input archive.
idOptional name used to map the storage within the registry.
Returns
A valid loader to continue restoring data.

Definition at line 226 of file snapshot.hpp.

◆ operator=() [1/2]

Default move assignment operator.

Returns
This loader.

◆ operator=() [2/2]

Default copy assignment operator, deleted on purpose.

Returns
This loader.

◆ orphans()

Destroys those entities that have no elements.

In case all the entities were serialized but only part of the elements was saved, it could happen that some of the entities have no elements once restored.
This function helps to identify and destroy those entities.

Returns
A valid loader to continue restoring data.

Definition at line 277 of file snapshot.hpp.


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