Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence du fichier ReferenceCounterImpl.h
#include "arccore/base/ReferenceCounter.h"
#include "arccore/base/RefBase.h"
#include <atomic>
+ Graphe des dépendances par inclusion de ReferenceCounterImpl.h:
+ Ce graphe montre quels fichiers incluent directement ou indirectement ce fichier :

Aller au code source de ce fichier.

Classes

class  Arccore::ReferenceCounterImpl
 Implémentation thread-safe d'un compteur de référence. Plus de détails...
 

Espaces de nommage

namespace  Arccore
 Espace de nom de Arccore.
 

Macros

#define ARCCORE_INTERNAL_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS(OPTIONAL_OVERRIDE)
 
#define ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS()    ARCCORE_INTERNAL_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS(override)
 Macro pour définir les méthodes gérant les compteurs de référence.
 
#define ARCCORE_DEFINE_REFERENCE_COUNTED_CLASS(class_name)    template class ExternalReferenceCounterAccessor<class_name>
 Macro pour définir les méthodes et types une classe qui utilise un compteur de référence.
 

Description détaillée

Ce fichier ne doit être inclus que par les classes implémentations utilisant un compte de référence. Pour les déclarations, il faut utiliser le fichier 'RefDeclarations.h'

Définition dans le fichier ReferenceCounterImpl.h.

Documentation des macros

◆ ARCCORE_DEFINE_REFERENCE_COUNTED_CLASS

#define ARCCORE_DEFINE_REFERENCE_COUNTED_CLASS (   class_name)     template class ExternalReferenceCounterAccessor<class_name>

Macro pour définir les méthodes et types une classe qui utilise un compteur de référence.

Cette macro doit être utilisée pour une classe pour laquelle on a utilisé la macro ARCCORE_DECLARE_REFERENCE_COUNTED_CLASS(). Elle doit se trouver dans une seule unité de translation (un fichier '.cc' par exemple) et être utilisée dans le namespace Arccore. Par exemple:

namespace Arccore
{
}
#define ARCCORE_DEFINE_REFERENCE_COUNTED_CLASS(class_name)
Macro pour définir les méthodes et types une classe qui utilise un compteur de référence.
Espace de nom de Arccore.
Definition ArcaneTypes.h:24

Définition à la ligne 233 du fichier ReferenceCounterImpl.h.

◆ ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS

#define ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS ( )     ARCCORE_INTERNAL_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS(override)

Macro pour définir les méthodes gérant les compteurs de référence.

Cette macro s'utilise dans une classe implémentant une interface pour laquelle la macro ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS() a été utilisée. La classe implémentation doit dériver de ReferenceCounterImpl. Par exemple:

class MyClass
: public ReferenceCounterImpl
, public IMyInterface
{
public:
void myMethod1() override;
};
#define ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS()
Macro pour définir les méthodes gérant les compteurs de référence.

Définition à la ligne 211 du fichier ReferenceCounterImpl.h.

◆ ARCCORE_INTERNAL_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS

#define ARCCORE_INTERNAL_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS (   OPTIONAL_OVERRIDE)
Valeur :
private: \
\
using BaseCounterType = ::Arccore::ReferenceCounterImpl; \
\
public: \
\
BaseCounterType* _internalReferenceCounter() OPTIONAL_OVERRIDE \
{ \
return this; \
} \
void _internalAddReference() OPTIONAL_OVERRIDE \
{ \
BaseCounterType::_internalAddReference(); \
} \
bool _internalRemoveReference() OPTIONAL_OVERRIDE \
{ \
return BaseCounterType::_internalRemoveReference(); \
}
Implémentation thread-safe d'un compteur de référence.

Définition à la ligne 169 du fichier ReferenceCounterImpl.h.