Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
MaterialsCoreGlobal.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2024 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/* MaterialsCoreGlobal.h (C) 2000-2024 */
9/* */
10/* Déclarations générales des matériaux de Arcane. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_MATERIALS_MATERIALSCOREGLOBAL_H
13#define ARCANE_CORE_MATERIALS_MATERIALSCOREGLOBAL_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
19#include "arccore/collections/ArrayTraits.h"
20
21#include <iosfwd>
22
23/*---------------------------------------------------------------------------*/
24/*---------------------------------------------------------------------------*/
25
26#define MATERIALS_BEGIN_NAMESPACE \
27 namespace Materials \
28 {
29#define MATERIALS_END_NAMESPACE }
30
31/*---------------------------------------------------------------------------*/
32/*---------------------------------------------------------------------------*/
33
34namespace Arcane
35{
36class ItemBase;
37}
38namespace Arcane::Materials::matimpl
39{
40using ::Arcane::ItemBase;
41class ConstituentItemBase;
42}
43
44namespace Arcane::Materials
45{
46
47/*---------------------------------------------------------------------------*/
48/*---------------------------------------------------------------------------*/
49
50class AllEnvCellVectorView;
51class ComponentCell;
52class IMeshBlock;
53class IMeshComponent;
54class IMeshMaterial;
55class IMeshMaterialMng;
56class IMeshEnvironment;
57class MatVarIndex;
58class MeshMaterialVariableIndexer;
59class MeshMaterialInfo;
60class MatCell;
61class EnvCell;
62class MatItemVectorView;
63class EnvItemVectorView;
64class MatPurePartItemVectorView;
65class MatImpurePartItemVectorView;
66class MatPartItemVectorView;
67class EnvPurePartItemVectorView;
68class EnvImpurePartItemVectorView;
69class EnvPartItemVectorView;
70class ComponentItemInternal;
71class AllEnvCell;
72class ComponentItemVectorView;
73class ComponentPartItemVectorView;
74class ComponentPurePartItemVectorView;
75class ComponentImpurePartItemVectorView;
76class ConstituentItemLocalIdListView;
77class MeshComponentPartData;
78class MatCellEnumerator;
79class ComponentItemVector;
80class IMeshMaterialVariableFactoryMng;
81class IMeshMaterialVariableFactory;
82class IMeshMaterialVariable;
83class MaterialVariableBuildInfo;
84class MaterialVariableTypeInfo;
85class MeshMaterialVariableRef;
87{};
89{};
101
102/*---------------------------------------------------------------------------*/
103/*---------------------------------------------------------------------------*/
104
109
110/*---------------------------------------------------------------------------*/
111/*---------------------------------------------------------------------------*/
112
115
118
121
122/*---------------------------------------------------------------------------*/
123/*---------------------------------------------------------------------------*/
124
127
130
133
136
139
140template <typename DataType> class CellMaterialVariableScalarRef;
141
142template <typename ItemType, typename DataType>
144template <typename ItemType, typename DataType>
146
147/*---------------------------------------------------------------------------*/
148/*---------------------------------------------------------------------------*/
149
151template <typename ConstituentCellType> class CellComponentCellEnumeratorT;
152
155
158
159/*---------------------------------------------------------------------------*/
160/*---------------------------------------------------------------------------*/
161
162static const Int32 LEVEL_MATERIAL = 1;
163static const Int32 LEVEL_ENVIRONMENT = 2;
164static const Int32 LEVEL_ALLENVIRONMENT = 0;
165
166/*---------------------------------------------------------------------------*/
167/*---------------------------------------------------------------------------*/
171enum class MatVarSpace
172{
177};
178
179/*---------------------------------------------------------------------------*/
180/*---------------------------------------------------------------------------*/
181
183enum class eMatPart
184{
185 Pure = 0,
186 Impure = 1
187};
188
189/*---------------------------------------------------------------------------*/
190/*---------------------------------------------------------------------------*/
191
192} // namespace Arcane::Materials
193
194/*---------------------------------------------------------------------------*/
195/*---------------------------------------------------------------------------*/
196
197namespace Arccore
198{
199ARCCORE_DEFINE_ARRAY_PODTYPE(Arcane::Materials::MatVarIndex);
200ARCCORE_DEFINE_ARRAY_PODTYPE(Arcane::Materials::ConstituentItemIndex);
201} // namespace Arccore
202
203/*---------------------------------------------------------------------------*/
204/*---------------------------------------------------------------------------*/
205
207
208/*---------------------------------------------------------------------------*/
209/*---------------------------------------------------------------------------*/
210
211#endif
#define ARCCORE_DECLARE_REFERENCE_COUNTED_CLASS(class_name)
Macro pour déclarer qu'une classe utilise un compteur de référence.
Déclarations des types utilisés dans Arcane.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Table de connectivité des 'Cell' vers leur(s) 'AllEnvCell' destinée à une utilisation sur accélérateu...
Enumérateur typés sur les mailles composants d'une maille.
Enumérateur sur les constituants d'une maille.
Variable scalaire sur les mailles d'un matériau du maillage. Pour l'instant, cette classe n'est insta...
Informations partagées sur les 'ComponentItem'.
Vue sur un vecteur sur les entités d'un composant.
Index d'une entité constituant dans la liste des entités constituants.
Vue sur un vecteur sur les entités d'un milieu.
Interface d'accès pour CellMaterialVariableArrayRef.
Interface pour l'implémentation de ComponentItemVector.
Interface d'un composant (matériau ou milieu) d'un maillage.
API interne Arcane de 'IMeshMaterialMng'.
Interface du synchroniseur de variables matériaux.
Interface d'un matériau d'un maillage.
Interface d'accès pour CellMaterialVariableScalarRef.
Vue sur un vecteur sur les entités d'un matériau.
Représente un index sur les variables matériaux et milieux.
Informations pour la création d'un milieu.
Informations pour la création d'un bloc.
Vue constante d'un tableau de type T.
Active toujours les traces dans les parties Arcane concernant les matériaux.
MatVarSpace
Espace de définition d'une variable matériau.
@ Environment
Variable ayant des valeurs uniquement sur les milieux.
@ MaterialAndEnvironment
Variable ayant des valeurs sur les milieux et matériaux.
eMatPart
Partie d'un composant.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Espace de nom de Arccore.
Definition ArcaneTypes.h:24