Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance

Instances des services singletons. Plus de détails...

+ Graphe d'héritage de Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance:
+ Graphe de collaboration de Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance:

Fonctions membres publiques

 ServiceInstance (IServiceInfo *si)
 
void addReference () override
 Ajoute une référence.
 
void removeReference () override
 Supprime une référence.
 
ServiceInstanceCollection interfaceInstances () override
 Liste des instances des interfaces implémentées par le singleton.
 
void destroyInstance ()
 
IServiceInfoserviceInfo () const override
 
void setTrueInstance (ServiceInstanceRef si)
 
void addInstance (ServiceInstanceRef instance) override
 
- Fonctions membres publiques hérités de Arcane::IServiceInstance
virtual Internal::ExternalRef _internalDotNetHandle () const
 

Attributs privés

IServiceInfom_service_info
 
List< ServiceInstanceRefm_instances
 
ServiceInstanceRef m_true_instance
 
std::atomic< Int32 > m_nb_ref = 0
 

Description détaillée

Instances des services singletons.

Les services singletons peuvent implémenter plusieurs interfaces. Il y a donc une instance IServiceInstance par interface plus une instance pour le service lui-même. Comme toutes ces instances référencent le même service, il faut faire attention de ne détruire le service qu'une seule fois.

Définition à la ligne 77 du fichier ServiceFactory.cc.

Documentation des constructeurs et destructeur

◆ ServiceInstance()

Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::ServiceInstance ( IServiceInfo si)
inline

Définition à la ligne 82 du fichier ServiceFactory.cc.

◆ ~ServiceInstance()

Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::~ServiceInstance ( )
inline

Définition à la ligne 84 du fichier ServiceFactory.cc.

Documentation des fonctions membres

◆ addInstance()

void Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::addInstance ( ServiceInstanceRef  instance)
inlineoverridevirtual

Implémente Arcane::Internal::IServiceInstanceAdder.

Définition à la ligne 106 du fichier ServiceFactory.cc.

◆ addReference()

void Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::addReference ( )
inlineoverridevirtual

Ajoute une référence.

Implémente Arcane::IServiceInstance.

Définition à la ligne 89 du fichier ServiceFactory.cc.

◆ destroyInstance()

void Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::destroyInstance ( )
inline

Définition à la ligne 98 du fichier ServiceFactory.cc.

◆ interfaceInstances()

ServiceInstanceCollection Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::interfaceInstances ( )
inlineoverridevirtual

Liste des instances des interfaces implémentées par le singleton.

Implémente Arcane::ISingletonServiceInstance.

Définition à la ligne 97 du fichier ServiceFactory.cc.

◆ removeReference()

void Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::removeReference ( )
inlineoverridevirtual

Supprime une référence.

Implémente Arcane::IServiceInstance.

Définition à la ligne 90 du fichier ServiceFactory.cc.

◆ serviceInfo()

IServiceInfo * Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::serviceInfo ( ) const
inlineoverridevirtual

Implémente Arcane::IServiceInstance.

Définition à la ligne 103 du fichier ServiceFactory.cc.

◆ setTrueInstance()

void Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::setTrueInstance ( ServiceInstanceRef  si)
inline

Définition à la ligne 104 du fichier ServiceFactory.cc.

Documentation des données membres

◆ m_instances

List<ServiceInstanceRef> Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::m_instances
private

Définition à la ligne 112 du fichier ServiceFactory.cc.

◆ m_nb_ref

std::atomic<Int32> Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::m_nb_ref = 0
private

Définition à la ligne 114 du fichier ServiceFactory.cc.

◆ m_service_info

IServiceInfo* Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::m_service_info
private

Définition à la ligne 111 du fichier ServiceFactory.cc.

◆ m_true_instance

ServiceInstanceRef Arcane::Internal::SingletonServiceFactoryBase::ServiceInstance::m_true_instance
private

Définition à la ligne 113 du fichier ServiceFactory.cc.


La documentation de cette classe a été générée à partir du fichier suivant :