#include "arccore/base/ArccoreGlobal.h"
#include <type_traits>
#include <memory>
Aller au code source de ce fichier.
Espaces de nommage | |
namespace | Arccore |
Espace de nom de Arccore. | |
Macros | |
#define | ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS() |
Macro pour déclarer les méthodes virtuelles gérant les compteurs de référence. | |
#define | ARCCORE_DECLARE_REFERENCE_COUNTED_CLASS(class_name) |
Macro pour déclarer qu'une classe utilise un compteur de référence. | |
Variables | |
constexpr int | Arccore::REF_TAG_SHARED_PTR = 0 |
constexpr int | Arccore::REF_TAG_REFERENCE_COUNTER = 1 |
Ce fichier contient les déclarations et macros pour gérer classes utilisant les compteurs de référence. Pour l'implémentation il faut utiliser le fichier 'ReferenceCounterImpl.h'
Définition dans le fichier RefDeclarations.h.
#define ARCCORE_DECLARE_REFERENCE_COUNTED_CLASS | ( | class_name | ) |
Macro pour déclarer qu'une classe utilise un compteur de référence.
La macro doit être utilisée en dehors de tout namespace. Par exemple:
Il faudra ensuite utiliser la macro ARCCORE_DEFINE_REFERENCE_COUNTED_CLASS() dans le fichier source pour définir les méthodes et types nécessaires
Définition à la ligne 237 du fichier RefDeclarations.h.
#define ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS | ( | ) |
Macro pour déclarer les méthodes virtuelles gérant les compteurs de référence.
Cette macro s'utilise de la même manière que les déclarations de méthodes d'une interface. Elle permet de définir des méthodes virtuelles pure pour accèder aux informations des compteurs de référence.
La classe implémentant l'interface doit utiliser la macro ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS() pour définir les méthodes virtuelles utilisées.
Définition à la ligne 205 du fichier RefDeclarations.h.