Arcane  v3.16.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IArrayMeshMaterialVariable.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/* IArrayMeshMaterialVariable.h (C) 2000-2022 */
9/* */
10/* Interface d'une variable matériau scalaire. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_MATERIALS_IARRAYMESHMATERIALVARIABLE_H
13#define ARCANE_MATERIALS_IARRAYMESHMATERIALVARIABLE_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/NotImplementedException.h"
18#include "arcane/utils/Array.h"
19
20#include "arcane/core/materials/MaterialsCoreGlobal.h"
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
25namespace Arcane::Materials
26{
27
28/*---------------------------------------------------------------------------*/
29/*---------------------------------------------------------------------------*/
30/*!
31 * \internal
32 * \brief Interface d'accès pour CellMaterialVariableArrayRef.
33 */
34template<typename ItemType,typename DataType>
36{
37 public:
38
40 using ItemTypeType = ItemType;
41 using DataTypeType = DataType;
43 using VariableRefType = MeshVariableArrayRefT<ItemType,DataType>;
44 static constexpr int dimension() { return 1; }
45
46 public:
47
48 virtual ~IArrayMeshMaterialVariable() = default;
49
50 public:
51
52 virtual ArrayView<Array2View<DataType>> _internalFullValuesView() = 0;
53 virtual VariableRefType* globalVariableReference() const =0;
54 virtual void incrementReference() =0;
55 virtual IMeshMaterialVariable* toMeshMaterialVariable() =0;
56
57 virtual void resize(Int32 dim2_size) =0;
58};
59
60/*---------------------------------------------------------------------------*/
61/*---------------------------------------------------------------------------*/
62
63} // End namespace Arcane::Materials
64
65/*---------------------------------------------------------------------------*/
66/*---------------------------------------------------------------------------*/
67
68#endif
Vue modifiable d'un tableau d'un type T.
Interface d'une variable matériau d'un maillage.
Classe pour gérer la création du type concret de la variable matériaux.
Variable tableau sur un type d'entité du maillage.
Active toujours les traces dans les parties Arcane concernant les matériaux.
std::int32_t Int32
Type entier signé sur 32 bits.