Arcane  v3.16.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
MaterialsGlobal.h
Aller à la documentation de ce fichier.
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/* MaterialsGlobal.h (C) 2000-2024 */
9/* */
10/* Déclarations générales des matériaux de Arcane. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_MATERIALS_MATERIALSGLOBAL_H
13#define ARCANE_MATERIALS_MATERIALSGLOBAL_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/materials/MaterialsCoreGlobal.h"
18
19#include <iosfwd>
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24#ifdef ARCANE_COMPONENT_arcane_materials
25#define ARCANE_MATERIALS_EXPORT ARCANE_EXPORT
26#else
27#define ARCANE_MATERIALS_EXPORT ARCANE_IMPORT
28#endif
29
30/*---------------------------------------------------------------------------*/
31/*---------------------------------------------------------------------------*/
32
33namespace Arcane::Materials
34{
35
36/*---------------------------------------------------------------------------*/
37/*---------------------------------------------------------------------------*/
38
39class IMeshBlock;
40class IMeshComponent;
41class IMeshMaterial;
45class ComponentItemInternal;
46class ComponentItem;
63class MatVarIndex;
65class ConstituentConnectivityList;
66class MeshMaterialMng;
67class AllCellToAllEnvCellContainer;
68class AllEnvData;
69class MaterialModifierOperation;
70class MeshMaterial;
71class MeshEnvironment;
72class ConstituentModifierWorkInfo;
73class MeshMaterialExchangeMng;
74class MeshMaterialModifierImpl;
75
76template <typename DataType> class ItemMaterialVariableScalar;
77template <typename ItemType,typename DataType> class MeshMaterialVariableScalar;
78template <typename ItemType,typename DataType> class MeshMaterialVariableArray;
79
80using MeshMaterialVariableFactoryVariableRefCreateFunc = IMeshMaterialVariable* (*)(const MaterialVariableBuildInfo& vb);
81
82/*---------------------------------------------------------------------------*/
83/*---------------------------------------------------------------------------*/
84/*!
85 * \brief flags pour paramétrer le comportement lors d'une modification
86 * de matériaux ou milieux.
87 */
89{
90 //! Active les optimisations génériques
92 //! Active les optimisations pour les ajouts/supressions multiples
94 /*!
95 * \brief Active les optimisations lorsque plusieurs matériaux sont présents dans
96 * un milieu.
97 */
99 /*!
100 * \brief Indique qu'on utilise la version incrémentale de AllEnvData::forceRecompute().
101 *
102 * Ce mode n'est actif que si GenericOptimize, OptimizeMultiAddRemove et
103 * OptimizeMultiMaterialPerEnvironment sont actifs.
104 */
106};
107
108/*---------------------------------------------------------------------------*/
109/*---------------------------------------------------------------------------*/
110
111} // End namespace Arcane::Materials
112
113/*---------------------------------------------------------------------------*/
114/*---------------------------------------------------------------------------*/
115
116#endif
Vue sur un vecteur sur les entités d'un composant.
Vue sur une partie pure ou partielles des entités d'un composant.
Vue sur un vecteur sur les entités d'un milieu.
Vue sur une partie pure ou partielles des entités d'un milieu.
Interface d'un bloc d'un maillage.
Interface d'un composant (matériau ou milieu) d'un maillage.
Interface du gestionnaire des matériaux et des milieux d'un maillage.
Interface d'une variable matériau d'un maillage.
Interface d'un matériau d'un maillage.
Vue sur la partie impure des entités d'un matériau.
Vue sur un vecteur sur les entités d'un matériau.
Vue sur une partie pure ou partielles des entités d'un matériau.
Vue sur la partie pure des entités d'un matériau.
Représente un index sur les variables matériaux et milieux.
Active toujours les traces dans les parties Arcane concernant les matériaux.
eModificationFlags
flags pour paramétrer le comportement lors d'une modification de matériaux ou milieux.
@ OptimizeMultiMaterialPerEnvironment
Active les optimisations lorsque plusieurs matériaux sont présents dans un milieu.
@ GenericOptimize
Active les optimisations génériques.
@ IncrementalRecompute
Indique qu'on utilise la version incrémentale de AllEnvData::forceRecompute().
@ OptimizeMultiAddRemove
Active les optimisations pour les ajouts/supressions multiples.