12#ifndef ARCANE_ISERVICEFACTORY_H
13#define ARCANE_ISERVICEFACTORY_H
17#include "arcane/utils/Ref.h"
18#include "arcane/ArcaneTypes.h"
110 void addReference()
override;
111 void removeReference()
override;
113 std::atomic<Int32> m_nb_ref;
122template<
typename InterfaceType>
149 virtual Ref<ISingletonServiceInstance>
Informations sur la fabrique d'un service.
virtual bool isAutoload() const =0
vrai si le service est un module et doit être chargé automatiquement
virtual ~IServiceFactoryInfo()
Libère les ressources.
virtual bool isSingleton() const =0
vrai si le service est un service singleton (une seule instance)
virtual IServiceInfo * serviceInfo() const =0
Informations sur le service pouvant être créé par cette fabrique.
Interface des informations d'un service ou d'un module.
virtual void addReference()=0
Ajoute une référence.
virtual IServiceInfo * serviceInfo() const =0
Retourne le IServiceInfo associé à cette fabrique.
virtual void removeReference()=0
Supprime une référence.
virtual ServiceInstanceRef createServiceInstance(const ServiceBuildInfoBase &sbi)=0
Créé une instance du service à partir des infos de sbi.
virtual Ref< ISingletonServiceInstance > createSingletonServiceInstance(const ServiceBuildInfoBase &sbi)=0
Créé une instance d'un service singleton.
virtual IServiceInfo * serviceInfo() const =0
Retourne le IServiceInfo associé à cette fabrique.
Informations pour créer un service.
Référence sur une instance de service.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-