Arcane  v3.16.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ICaseOptionList.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ICaseOptionList.h (C) 2000-2025 */
9/* */
10/* Options du jeu de données. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_ICASEOPTIONLIST_H
13#define ARCANE_CORE_ICASEOPTIONLIST_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26class XmlNode;
27class ICaseMng;
28class XmlNodeList;
29class ICaseOptionListInternal;
30
31/*---------------------------------------------------------------------------*/
32/*---------------------------------------------------------------------------*/
33/*!
34 * \internal
35 * \brief Interface d'une liste d'options du jeu de données.
36 */
37class ARCANE_CORE_EXPORT ICaseOptionList
38{
40
41 protected:
42
43 virtual ~ICaseOptionList() = default;
44
45 public:
46
47 /*!
48 * \brief Retourne l'élément lié à cette liste d'option.
49 *
50 * S'il n'y en a pas, retourne un XmlNode nul. S'il y en a plusieurs, retourne le
51 * premier.
52 */
53 virtual XmlNode rootElement() const =0;
54 //! Retourne l'élément parent.
55 virtual XmlNode parentElement() const =0;
56 //! Ajoute la liste \a co à la liste des fils.
57 virtual void addChild(ICaseOptions* co) =0;
58 //! Supprime \a co de la liste des fils.
59 virtual void removeChild(ICaseOptions* co) =0;
60 //! Retourne le gestionnaire du cas
61 virtual ICaseMng* caseMng() const =0;
62
63 //! Lis les valeurs des options à partir des éléments du DOM.
64 virtual void readChildren(bool is_phase1) =0;
65 //! Affiche la liste des options filles dans le langage \a lang et leur valeur
66 virtual void printChildren(const String& lang,int indent) =0;
67 //! Retourne le nom de l'élément de cette liste
68 virtual String rootTagName() const =0;
69 //! Ajoute à la liste \a col tous les options filles.
71 //! Indique si l'option est présente dans le jeu de données.
72 virtual bool isPresent() const =0;
73 //! Indique si l'option est optionnelle
74 virtual bool isOptional() const =0;
75 //! Nombre minimum d'occurences
76 virtual Integer minOccurs() const = 0;
77 //! Nombre maximum d'occurences
78 virtual Integer maxOccurs() const = 0;
79 //! Applique le visiteur \a visitor
80 virtual void visit(ICaseDocumentVisitor* visitor) =0;
81 //! Nom complet au format XPath correspondant à rootElement()
82 virtual String xpathFullName() const =0;
83 //! Handle du maillage associé
84 virtual MeshHandle meshHandle() const =0;
85
86 //! Document associé.
88
89 /*!
90 * \brief Désactive l'option comme si elle était absente.
91 *
92 * Cela est utilisé par exemple si l'option est associée à un maillage
93 * qui n'est pas défini.
94 */
95 virtual void disable() = 0;
96
97 public:
98
99 //! Ajoute l'option \a o avec le parent \a parent
100 ARCANE_DEPRECATED_REASON("Y2023: This method is internal to Arcane")
101 virtual void addConfig(CaseOptionBase* o,XmlNode parent) =0;
102
103 //! Positionne l'élément racine de la liste, avec \a parent_element comme parent. Si déjà positionné, ne fait rien
104 ARCANE_DEPRECATED_REASON("Y2023: This method is internal to Arcane")
105 virtual void setRootElementWithParent(XmlNode parent_element) =0;
106
107 //! Positionne l'élément racine de la liste. Si déjà positionné, lance une exception
108 ARCANE_DEPRECATED_REASON("Y2023: This method is internal to Arcane")
109 virtual void setRootElement(XmlNode root_element) =0;
110
111 //! Ajoute les éléments fils ne correspondants par à de options dans \a nlist
112 ARCANE_DEPRECATED_REASON("Y2023: This method is internal to Arcane")
113 virtual void addInvalidChildren(XmlNodeList& nlist) =0;
114
115 public:
116
117 //! API interne à Arcane
118 virtual ICaseOptionListInternal* _internalApi() =0;
119};
120
121/*---------------------------------------------------------------------------*/
122/*---------------------------------------------------------------------------*/
123
124} // End namespace Arcane
125
126/*---------------------------------------------------------------------------*/
127/*---------------------------------------------------------------------------*/
128
129#endif
Déclarations des types généraux de Arcane.
Déclarations des types liés aux options du jeu de données.
#define ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS()
Macro pour déclarer les méthodes virtuelles gérant les compteurs de référence.
Classe de base des vecteurs 1D de données.
Classe de base d'une option du jeu de donnée.
Interface du visiteur pour une option du jeu de données.
Interface du gestionnaire de cas.
Definition ICaseMng.h:56
virtual Integer minOccurs() const =0
Nombre minimum d'occurences.
virtual void visit(ICaseDocumentVisitor *visitor)=0
Applique le visiteur visitor.
virtual XmlNode rootElement() const =0
Retourne l'élément lié à cette liste d'option.
virtual String xpathFullName() const =0
Nom complet au format XPath correspondant à rootElement()
virtual void addInvalidChildren(XmlNodeList &nlist)=0
Ajoute les éléments fils ne correspondants par à de options dans nlist.
virtual void setRootElement(XmlNode root_element)=0
Positionne l'élément racine de la liste. Si déjà positionné, lance une exception.
virtual void setRootElementWithParent(XmlNode parent_element)=0
Positionne l'élément racine de la liste, avec parent_element comme parent. Si déjà positionné,...
virtual String rootTagName() const =0
Retourne le nom de l'élément de cette liste.
virtual ICaseDocumentFragment * caseDocumentFragment() const =0
Document associé.
virtual void disable()=0
Désactive l'option comme si elle était absente.
virtual bool isOptional() const =0
Indique si l'option est optionnelle.
virtual void deepGetChildren(Array< CaseOptionBase * > &col)=0
Ajoute à la liste col tous les options filles.
virtual void readChildren(bool is_phase1)=0
Lis les valeurs des options à partir des éléments du DOM.
virtual void addChild(ICaseOptions *co)=0
Ajoute la liste co à la liste des fils.
virtual XmlNode parentElement() const =0
Retourne l'élément parent.
virtual Integer maxOccurs() const =0
Nombre maximum d'occurences.
virtual bool isPresent() const =0
Indique si l'option est présente dans le jeu de données.
virtual void printChildren(const String &lang, int indent)=0
Affiche la liste des options filles dans le langage lang et leur valeur.
virtual ICaseMng * caseMng() const =0
Retourne le gestionnaire du cas.
virtual MeshHandle meshHandle() const =0
Handle du maillage associé
virtual ICaseOptionListInternal * _internalApi()=0
API interne à Arcane.
virtual void removeChild(ICaseOptions *co)=0
Supprime co de la liste des fils.
virtual void addConfig(CaseOptionBase *o, XmlNode parent)=0
Ajoute l'option o avec le parent parent.
Handle sur un maillage.
Definition MeshHandle.h:47
Chaîne de caractères unicode.
Liste de noeuds d'un arbre DOM.
Definition XmlNodeList.h:33
Noeud d'un arbre DOM.
Definition XmlNode.h:51
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Int32 Integer
Type représentant un entier.