Ce fichier contient les différentes fabriques de services et macro pour enregistrer les services. Plus de détails...
#include "arcane/utils/NotSupportedException.h"
#include "arcane/utils/TraceInfo.h"
#include "arcane/utils/ExternalRef.h"
#include "arcane/IApplication.h"
#include "arcane/ISession.h"
#include "arcane/ISubDomain.h"
#include "arcane/ServiceBuildInfo.h"
#include "arcane/IServiceFactory.h"
#include "arcane/ServiceRegisterer.h"
#include "arcane/ServiceInfo.h"
#include "arcane/IService.h"
#include "arcane/ServiceProperty.h"
#include "arcane/ServiceInstance.h"
Aller au code source de ce fichier.
Espaces de nommage | |
namespace | Arcane |
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*- | |
namespace | Arcane::Internal |
Types interne à Arcane. | |
Macros | |
#define | ARCANE_SERVICE_INTERFACE(ainterface) Arcane::Internal::ServiceInterfaceRegisterer< ainterface >(#ainterface) |
Macro pour déclarer une interface lors de l'enregistrement d'un service. | |
#define | ARCANE_SERVICE_INTERFACE_NS(ainterface_ns, ainterface) Arcane::Internal::ServiceInterfaceRegisterer<ainterface_ns :: ainterface>(#ainterface_ns,#ainterface) |
Enregistre une interface avec un nom de namespace. | |
#define | ARCANE_REGISTER_SERVICE(aclass, a_service_property, ...) |
Macro pour enregistrer un service. | |
#define | ARCANE_REGISTER_AXL_SERVICE(aclass, a_service_properties) |
#define | ARCANE_REGISTER_APPLICATION_FACTORY(aclass, ainterface, aname) |
Enregistre un service de fabrique pour la classe aclass. | |
#define | ARCANE_REGISTER_SUB_DOMAIN_FACTORY(aclass, ainterface, aname) |
Enregistre un service de fabrique pour la classe aclass. | |
#define | ARCANE_REGISTER_SUB_DOMAIN_FACTORY4(aclass, ainterface_ns, ainterface, aname) |
Enregistre un service de fabrique pour la classe aclass. | |
#define | ARCANE_REGISTER_CASE_OPTIONS_NOAXL_FACTORY(aclass, ainterface, aname) |
Enregistre un service de fabrique pour la classe aclass. | |
#define | ARCANE_REGISTER_CASE_OPTIONS_NOAXL_FACTORY4(aclass, ainterface_ns, ainterface, aname) |
Enregistre un service de fabrique pour la classe aclass. | |
Ce fichier contient les différentes fabriques de services et macro pour enregistrer les services.
La plupart des types de ce fichier sont internes à Arcane. Le seul élément utile pour un utilisateur est la macro ARCANE_REGISTER_SERVICE() qui permet d'enregistrer un service.
Définition dans le fichier ServiceFactory.h.
#define ARCANE_REGISTER_APPLICATION_FACTORY | ( | aclass, | |
ainterface, | |||
aname | |||
) |
Enregistre un service de fabrique pour la classe aclass.
Le service est enregistré sous le nom aname et implémente l'interface ainterface.
Définition à la ligne 572 du fichier ServiceFactory.h.
#define ARCANE_REGISTER_AXL_SERVICE | ( | aclass, | |
a_service_properties | |||
) |
Définition à la ligne 538 du fichier ServiceFactory.h.
#define ARCANE_REGISTER_CASE_OPTIONS_NOAXL_FACTORY | ( | aclass, | |
ainterface, | |||
aname | |||
) |
Enregistre un service de fabrique pour la classe aclass.
Le service est enregistré sous le nom aname et implémente l'interface ainterface.
Définition à la ligne 614 du fichier ServiceFactory.h.
#define ARCANE_REGISTER_CASE_OPTIONS_NOAXL_FACTORY4 | ( | aclass, | |
ainterface_ns, | |||
ainterface, | |||
aname | |||
) |
Enregistre un service de fabrique pour la classe aclass.
Le service est enregistré sous le nom aname et implémente l'interface ainterface.
Définition à la ligne 628 du fichier ServiceFactory.h.
#define ARCANE_REGISTER_SUB_DOMAIN_FACTORY | ( | aclass, | |
ainterface, | |||
aname | |||
) |
Enregistre un service de fabrique pour la classe aclass.
Le service est enregistré sous le nom aname et implémente l'interface ainterface.
Définition à la ligne 586 du fichier ServiceFactory.h.
#define ARCANE_REGISTER_SUB_DOMAIN_FACTORY4 | ( | aclass, | |
ainterface_ns, | |||
ainterface, | |||
aname | |||
) |
Enregistre un service de fabrique pour la classe aclass.
Le service est enregistré sous le nom aname et implémente l'interface ainterface du namespace ainterface_ns.
Définition à la ligne 600 du fichier ServiceFactory.h.
#define ARCANE_SERVICE_INTERFACE | ( | ainterface | ) | Arcane::Internal::ServiceInterfaceRegisterer< ainterface >(#ainterface) |
Macro pour déclarer une interface lors de l'enregistrement d'un service.
Cette macro s'utilise dans la macro ARCANE_REGISTER_SERVICE.
L'appel est comme suit:
ainterface est le nom de l'interface (sans les guillemets). Il peut contenir un namespace. Par exemple:
Définition à la ligne 475 du fichier ServiceFactory.h.
#define ARCANE_SERVICE_INTERFACE_NS | ( | ainterface_ns, | |
ainterface | |||
) | Arcane::Internal::ServiceInterfaceRegisterer<ainterface_ns :: ainterface>(#ainterface_ns,#ainterface) |
Enregistre une interface avec un nom de namespace.
Définition à la ligne 479 du fichier ServiceFactory.h.