12#ifndef ARCANE_CASEOPTIONENUM_H
13#define ARCANE_CASEOPTIONENUM_H
17#include "arcane/core/CaseOptionSimple.h"
87 int value()
const {
return m_value; }
124 Integer nbEnumValue()
const;
169 virtual void print(
const String&
lang, std::ostream& o)
const;
177 m_enum_values->addEnumValue(value,
do_clone);
179 CaseOptionEnumValues* enumValues()
const {
return m_enum_values; }
181 virtual void visit(ICaseDocumentVisitor* visitor)
const;
183 int enumValueAsInt()
const {
return _optionValue(); }
188 virtual void _search(
bool is_phase1);
189 virtual bool _allowPhysicalUnit() {
return false; }
198 void _setEnumDefaultValue(
int def_value);
215template <
class EnumType>
231 ARCANE_CASEOPTION_CHECK_IS_INITIALIZED;
249 _setEnumDefaultValue(
static_cast<int>(
def_value));
255 ARCANE_CASEOPTION_CHECK_IS_INITIALIZED;
272 return static_cast<int>(
m_value);
293 virtual void print(
const String&
lang, std::ostream& o)
const;
299 m_enum_values->addEnumValue(value,
do_clone);
302 CaseOptionEnumValues* enumValues()
const {
return m_enum_values; }
304 virtual void visit(ICaseDocumentVisitor* visitor)
const;
308 virtual void _search(
bool is_phase1);
309 virtual bool _allowPhysicalUnit() {
return false; }
353 m_values.resize(
size);
355 *view = m_values.view();
363 (*this)[index] =
static_cast<T
>(v);
367 return static_cast<int>((*this)[index]);
Tableau d'items de types quelconques.
Classe de base d'une option du jeu de donnée.
Informations pour construire une option de jeu de données.
Option du jeu de données de type énuméré.
EnumType value() const
Valeur de l'option.
EnumType operator()() const
Valeur de l'option.
void setDefaultValue(EnumType def_value)
Positionne la valeur par défaut de l'option.
EnumType m_value
Valeur de l'option.
virtual void _setOptionValue(int i)
Positionne à v la valeur de l'option.
EnumType valueIfPresentOrArgument(EnumType arg_value)
Retourne la valeur de l'option si isPresent()==true ou sinon arg_value.
virtual int _optionValue() const
Retourne la valeur de l'option.
Nom et valeur d'une énumération du jeu de données.
Ensemble des valeurs d'une énumération.
UniqueArray< CaseOptionEnumValue * > EnumValueList
Type de la liste des valeurs.
EnumValueList * m_enum_values
Valeurs de l'énumération.
Option du jeu de donnée de type énumération.
virtual void _setOptionValue(int v)=0
Positionne à v la valeur de l'option.
virtual void updateFromFunction(Real current_time, Integer current_iteration)
Met à jour la valeur de l'option à partir d'une fonction.
virtual int _optionValue() const =0
Retourne la valeur de l'option.
String m_type_name
Nom de l'énumération.
Option du jeu de données de type liste de types énumérés.
virtual void _setOptionValue(Integer index, int v)
virtual Integer _nbElem() const
Retourne le nombre d'éléments du tableau.
virtual int _optionValue(Integer index) const
Retourne la valeur de l'énumération pour l'indice index.
virtual void _allocate(Integer size)
Alloue un tableau pour size éléments.
Option du jeu de données de type liste d'énumération.
virtual Integer _nbElem() const =0
Retourne le nombre d'éléments du tableau.
String m_type_name
Nom de l'énumération.
virtual void _allocate(Integer size)=0
Alloue un tableau pour size éléments.
virtual ICaseFunction * function() const
Retourne la fonction liée à cette option ou nullptr s'il n'y en a pas.
virtual void updateFromFunction(Real, Integer)
Met à jour la valeur de l'option à partir d'une fonction.
virtual int _optionValue(Integer index) const =0
Retourne la valeur de l'énumération pour l'indice index.
virtual void _setOptionValue(Integer index, int v)=0
Nom d'une option du jeu de données. Cette classe permet de stocker le nom d'une option dans plusieurs...
String trueName() const
Retourne le vrai nom (non traduit) de l'option.
StringDictionary * m_translations
Traductions.
String m_true_name
Nom de l'option.
Classe de base des options simples (uniquement une valeur).
bool isPresent() const
Retourne true si l'option est présente.
Interface d'une fonction du jeu de données.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Dictionnaire de chaînes unicode.
Vue modifiable d'un tableau d'un type T.
constexpr Integer size() const noexcept
Retourne la taille du tableau.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-