12#ifndef ARCANE_CORE_CASEOPTIONSERVICEIMPL_H
13#define ARCANE_CORE_CASEOPTIONSERVICEIMPL_H
17#include "arcane/utils/Functor.h"
19#include "arcane/core/CaseOptions.h"
20#include "arcane/core/CaseOptionsMulti.h"
62class ARCANE_CORE_EXPORT CaseOptionServiceImpl
72 String serviceName()
const {
return m_service_name; }
73 bool isOptional()
const {
return m_is_optional; }
79 void setDefaultValue(
const String& def_value);
80 void addDefaultValue(
const String& category,
const String& value);
90 void setMeshName(
const String& mesh_name) { m_mesh_name = mesh_name; }
91 String meshName()
const {
return m_mesh_name; }
95 virtual void print(
const String& lang,std::ostream& o)
const;
99 String _defaultValue()
const {
return m_default_value; }
110 bool m_is_override_default;
129class ARCANE_CORE_EXPORT CaseOptionMultiServiceImpl
130:
public CaseOptionsMulti
135 ~CaseOptionMultiServiceImpl();
157 void setMeshName(
const String& mesh_name) { m_mesh_name = mesh_name; }
158 String meshName()
const {
return m_mesh_name; }
162 void _setNotifyAllocateFunctor(IFunctor* f)
164 m_notify_functor = f;
169 String _defaultValue()
const {
return m_default_value; }
174 String m_default_value;
176 IFunctor* m_notify_functor;
177 ICaseOptionServiceContainer* m_container;
String serviceName(Integer index) const
Nom du n-ième service.
UniqueArray< String > m_services_name
Noms du service pour chaque occurence.
UniqueArray< ReferenceCounter< ICaseOptions > > m_allocated_options
Liste des options allouées qu'il faudra supprimer.
void getAvailableNames(StringArray &names) const
Retourne dans names les noms d'implémentations valides pour ce service.
void setContainer(ICaseOptionServiceContainer *container)
Positionne le conteneur d'instances.
void read(eCaseOptionReadPhase phase) override
Effectue la lecture de la phase read_phase des options.
void visit(ICaseDocumentVisitor *visitor) const override
Applique le visiteur sur cette option.
virtual void getAvailableNames(StringArray &names) const
Retourne dans names les noms d'implémentations valides pour ce service.
CaseOptions(ICaseMng *cm, const String &name)
Construit un jeu d'options.
Interface du visiteur pour une option du jeu de données.
Interface d'un conteneur d'instances de service.
virtual void allocate(Integer size)=0
Alloue un tableau pour size éléments.
virtual Integer nbElem() const =0
Retourne le nombre d'éléments du tableau.
Informations pour créer un service.
Chaîne de caractères unicode.
Liste de noeuds d'un arbre DOM.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Array< String > StringArray
Tableau dynamique à une dimension de chaînes de caractères.
eCaseOptionReadPhase
Phases de la lecture.
Int32 Integer
Type représentant un entier.