Arcane
v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ICodeService.h
1
// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2
//-----------------------------------------------------------------------------
3
// Copyright 2000-2022 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
/* ICodeService.h (C) 2000-2014 */
9
/* */
10
/* Interface du service du code. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_ICODESERVICE_H
13
#define ARCANE_ICODESERVICE_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/ArcaneTypes.h"
18
#include "arcane/IService.h"
19
20
/*---------------------------------------------------------------------------*/
21
/*---------------------------------------------------------------------------*/
22
23
ARCANE_BEGIN_NAMESPACE
24
25
/*---------------------------------------------------------------------------*/
26
/*---------------------------------------------------------------------------*/
27
28
class
SubDomainBuildInfo;
29
30
/*---------------------------------------------------------------------------*/
31
/*---------------------------------------------------------------------------*/
32
/*!
33
* \brief Interface d'un chargeur de cas.
34
* \ingroup StandardService
35
*/
36
class
ARCANE_CORE_EXPORT
ICodeService
37
:
public
IService
38
{
39
public
:
40
41
virtual
~ICodeService
(){}
//!< Libère les ressources
42
43
public
:
44
45
/*! \brief Crée une session.
46
*
47
* L'instance doit appeler IApplication::addSession().
48
*/
49
virtual
ISession
*
createSession
() =0;
50
51
/*!
52
* \brief Analyse les arguments de la ligne de commandes.
53
*
54
* Le tableau \a args ne contient que les arguments qui n'ont
55
* pas été interprétés par Arcane.
56
*
57
* Les arguments reconnus doivent être supprimés de la liste.
58
*
59
* \retval true si l'exéctution doit s'arrêter,
60
* \retval false si elle continue normalement
61
*/
62
virtual
bool
parseArgs
(
StringList
& args) =0;
63
64
/*!
65
* \brief Créé et charge le cas avec les infos \a sdbi
66
* pour la session \a session.
67
*/
68
virtual
ISubDomain
*
createAndLoadCase
(
ISession
* session,
const
SubDomainBuildInfo
& sdbi) =0;
69
70
/*!
71
* \brief Initialise la session \a session.
72
*
73
* \param is_continue indique si on est en reprise
74
* Le cas doit déjà avoir été chargé par loadCase()
75
*/
76
virtual
void
initCase
(
ISubDomain
* sub_domain,
bool
is_continue) =0;
77
78
//! Retourne si le code accepte l'exécution.
79
virtual
bool
allowExecution
()
const
=0;
80
81
/*! \brief Retourne la liste des extensions de fichier traitées par l'instance.
82
* L'extension ne comprend pas le '.'.
83
*/
84
virtual
StringCollection
validExtensions
()
const
=0;
85
86
/*!
87
* \brief Unité de longueur utilisé par le code.
88
*
89
* Cela doit valoir 1.0 si le code utilise le système international et donc
90
* le mêtre comme unité de longueur. Si l'unité est le centimètre par
91
* exemple, la valeur est 0.01.
92
*
93
* Cette valeur peut être utilisée par exemple lors de la lecture du
94
* maillage si le format de maillage supporte la notion d'unité de
95
* longueur.
96
*/
97
virtual
Real ARCANE_DEPRECATED
lengthUnit
()
const
=0;
98
};
99
100
/*---------------------------------------------------------------------------*/
101
/*---------------------------------------------------------------------------*/
102
103
ARCANE_END_NAMESPACE
104
105
/*---------------------------------------------------------------------------*/
106
/*---------------------------------------------------------------------------*/
107
108
#endif
109
Arcane::Collection< String >
Arcane::ICodeService
Interface d'un chargeur de cas.
Definition
ICodeService.h:38
Arcane::ICodeService::parseArgs
virtual bool parseArgs(StringList &args)=0
Analyse les arguments de la ligne de commandes.
Arcane::ICodeService::createAndLoadCase
virtual ISubDomain * createAndLoadCase(ISession *session, const SubDomainBuildInfo &sdbi)=0
Créé et charge le cas avec les infos sdbi pour la session session.
Arcane::ICodeService::lengthUnit
virtual Real ARCANE_DEPRECATED lengthUnit() const =0
Unité de longueur utilisé par le code.
Arcane::ICodeService::allowExecution
virtual bool allowExecution() const =0
Retourne si le code accepte l'exécution.
Arcane::ICodeService::createSession
virtual ISession * createSession()=0
Crée une session.
Arcane::ICodeService::~ICodeService
virtual ~ICodeService()
Libère les ressources.
Definition
ICodeService.h:41
Arcane::ICodeService::initCase
virtual void initCase(ISubDomain *sub_domain, bool is_continue)=0
Initialise la session session.
Arcane::ICodeService::validExtensions
virtual StringCollection validExtensions() const =0
Retourne la liste des extensions de fichier traitées par l'instance. L'extension ne comprend pas le '...
Arcane::IService
Interface d'un service.
Definition
IService.h:45
Arcane::ISession
Interface d'une session d'exécution d'un cas.
Definition
ISession.h:44
Arcane::ISubDomain
Interface du gestionnaire d'un sous-domaine.
Definition
ISubDomain.h:74
Arcane::List< String >
Arcane::SubDomainBuildInfo
Paramètres nécessaires à la construction d'un sous-domaine.
Definition
SubDomainBuildInfo.h:53
arcane
core
ICodeService.h
Généré le Lundi 18 Novembre 2024 02:56:48 pour Arcane par
1.9.8