12#ifndef ARCCORE_BASE_REFBASE_H
13#define ARCCORE_BASE_REFBASE_H
17#include "arccore/base/ExternalRef.h"
49 bool hasExternal()
const {
return m_handle.isValid(); }
50 void setNoDestroy(
bool x) { m_no_destroy = x; }
54 bool _destroyHandle(
const void* instance,
ExternalRef& handle);
55 bool _destroyHandle(
void* instance,
ExternalRef& handle);
59 bool _destroyHandleTrue(
const void* instance,
ExternalRef& handle);
65 : m_handle(std::move(h))
68 : m_handle(std::move(h))
69 , m_no_destroy(no_destroy)
80 bool m_no_destroy =
false;
Gestion des références sur un objet externe.
Internal::ExternalRef m_handle
Handle externe qui se charge de la destruction de l'instance.
Classe de base de gestion d'une référence.
Implémentation thread-safe d'un compteur de référence.
Wrapper autour d'une classe gérant son propre compteur de référence.
Espace de nom de Arccore.