23 template <
typename T >
26 BaseHandle( std::shared_ptr< MemLayout > mem, std::shared_ptr< T > obj )
27 :
_mem{std::move( mem )},
_obj{std::move( obj )} {}
40 const T &
merged() {
return *
_mem->template merged< T >(); }
44 std::shared_ptr< MemLayout >
_mem ;
46 std::shared_ptr< T >
_obj ;
53 template <
typename T >
57 Handle(
const std::shared_ptr< T > &obj,
58 const std::shared_ptr< MemLayout > &mem )
std::shared_ptr< MemLayout > _mem
pointer to memory from instances.
BaseHandle(std::shared_ptr< MemLayout > mem, std::shared_ptr< T > obj)
Handle(const std::shared_ptr< T > &obj, const std::shared_ptr< MemLayout > &mem)
constructor
std::shared_ptr< T > _obj
pointer to the one managed instance.
class which basic functionality for every handle.
const T & merged()
get final object.