Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
MeshBuildInfo.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2023 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/* MeshBuildInfo.h (C) 2000-2023 */
9/* */
10/* Informations pour construire un maillage. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_MESHBUILDINFO_H
13#define ARCANE_MESHBUILDINFO_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/String.h"
18
19#include "arcane/core/IParallelMng.h"
20#include "arcane/core/ItemGroup.h"
21#include "arcane/core/MeshKind.h"
22
23/*---------------------------------------------------------------------------*/
24/*---------------------------------------------------------------------------*/
25
26namespace Arcane
27{
28
29/*---------------------------------------------------------------------------*/
30/*---------------------------------------------------------------------------*/
47class ARCANE_CORE_EXPORT MeshBuildInfo
48{
49 public:
50
54 explicit MeshBuildInfo(const String& name);
55
56 public:
57
59 MeshBuildInfo& addFactoryName(const String& factory_name);
61 MeshBuildInfo& addParallelMng(Ref<IParallelMng> pm);
63 MeshBuildInfo& addParentGroup(const ItemGroup& parent_group);
70 MeshBuildInfo& addNeedPartitioning(bool v);
71
73 MeshBuildInfo& addMeshKind(const MeshKind& v);
74
76 const String& name() const { return m_name; }
78 const String& factoryName() const { return m_factory_name; }
80 Ref<IParallelMng> parallelMngRef() const { return m_parallel_mng; }
82 const ItemGroup& parentGroup() const { return m_parent_group; }
84 bool isNeedPartitioning() const { return m_is_need_partitioning; }
86 const MeshKind meshKind() const { return m_mesh_kind; }
87
88 private:
89
90 String m_name;
91 String m_factory_name;
92 Ref<IParallelMng> m_parallel_mng;
93 ItemGroup m_parent_group;
94 bool m_is_need_partitioning = false;
95 MeshKind m_mesh_kind;
96};
97
98/*---------------------------------------------------------------------------*/
99/*---------------------------------------------------------------------------*/
100
101} // End namespace Arcane
102
103/*---------------------------------------------------------------------------*/
104/*---------------------------------------------------------------------------*/
105
106#endif
Groupe d'entités de maillage.
Definition ItemGroup.h:49
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Paramètres nécessaires à la construction d'un maillage.
const String & name() const
Nom du nouveau maillage.
const ItemGroup & parentGroup() const
Groupe parent dans le cas d'un sous-maillage, null sinon.
const MeshKind meshKind() const
Caractéristiques du maillage.
bool isNeedPartitioning() const
Indique si le lecteur/générateur nécessite un partitionnement.
Ref< IParallelMng > parallelMngRef() const
Gestionnaire de parallélisme dans le cas d'un nouveau maillage.
const String & factoryName() const
Nom de la fabrique pour créer le maillage (via IMeshFactory)
Caractéristiques d'un maillage.
Definition MeshKind.h:59
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-