12#ifndef ARCANE_CORE_MESHVARIABLEARRAYREF_H
13#define ARCANE_CORE_MESHVARIABLEARRAYREF_H
17#include "arcane/core/PrivateVariableArray.h"
19#include "arcane/core/ItemGroupRangeIterator.h"
20#include "arcane/core/ItemPairEnumerator.h"
33template<
class DataTypeT>
35:
public PrivateVariableArrayT<DataTypeT>
39 typedef DataTypeT DataType;
46 typedef PrivateVariableArrayT<DataType> BaseClass;
47 typedef typename BaseClass::PrivatePartType PrivatePartType;
95 ARCANE_CORE_EXPORT
void fill(
const DataType& value);
97 ARCANE_CORE_EXPORT
void fill(
const DataType& value,
const ItemGroup& group);
99 ARCANE_CORE_EXPORT
void fill(
const DataType& value,
RunQueue* queue);
113template<
class ItemTypeT,
class DataTypeT>
119 typedef DataTypeT DataType;
120 typedef ItemTypeT ItemType;
137 typedef typename ItemTypeT::LocalIdType ItemLocalIdType;
152 ThatClass& operator=(
const ThatClass& rhs) =
delete;
157 ConstArrayType
operator[](ItemLocalIdType item)
const {
return this->m_view[item.localId()]; }
160 ArrayType
operator[](ItemLocalIdType item) {
return this->m_view[item.localId()]; }
163 const DataType
operator()(ItemLocalIdType item,
Int32 i)
const {
return this->m_view[item.localId()][i]; }
166 DataType&
operator()(ItemLocalIdType item,
Int32 i) {
return this->m_view[item.localId()][i]; }
File d'exécution pour un accélérateur.
Vue modifiable pour un tableau 2D.
Vue modifiable d'un tableau d'un type T.
Vue constante d'un tableau de type T.
Groupe d'entités de maillage.
Index d'un Item dans une variable.
Variable tableau sur un type d'entité du maillage.
void copy(const ItemVariableArrayRefT< DataType > &v)
Copie les valeurs de v dans cette variable.
ArrayType operator[](ItemLocalId item)
Valeur modifiable de l'entité item.
ItemVariableArrayRefT(const VariableBuildInfo &b, eItemKind ik)
Construit une référence à la variable spécifiée dans vb.
DataType & operator()(ItemLocalId item, Int32 i)
Valeur modifiable de la i-éme valeur de l'entité item.
ConstArrayType operator[](ItemLocalId item) const
Valeur non modifiable de l'entité item.
ItemVariableArrayRefT< DataType > & operator=(const ItemVariableArrayRefT< DataType > &rhs)
Positionne la référence de l'instance à la variable rhs.
const DataType operator()(ItemLocalId item, Int32 i) const
Valeur non modifiable de la i-éme valeur de l'entité item.
void fill(const DataType &value)
Remplit la variable avec la valeur value.
MeshVariableArrayRefT(const MeshVariableArrayRefT< ItemType, DataType > &rhs)
Construit une référence à partir de rhs.
GroupType itemGroup() const
Groupe associé à la grandeur.
const DataType operator()(ItemLocalIdType item, Int32 i) const
Valeur non modifiable de la i-éme valeur de l'entité item.
MeshVariableArrayRefT(IVariable *var)
Construit une référence à partir de var.
void swapValues(MeshVariableArrayRefT< ItemType, DataType > &rhs)
Échange les valeurs de la variable rhs avec celles de l'instance.
ArrayType operator[](ItemLocalIdType item)
Valeur modifiable de l'entité item.
DataType & operator()(ItemLocalIdType item, Int32 i)
Valeur modifiable de la i-éme valeur de l'entité item.
ConstArrayType operator[](ItemLocalIdType item) const
Valeur non modifiable de l'entité item.
void refersTo(const MeshVariableArrayRefT< ItemType, DataType > &rhs)
Positionne la référence de l'instance à la variable rhs.
MeshVariableArrayRefT(const VariableBuildInfo &b)
Construit une référence à la variable spécifiée dans vb.
Classe de base d'une variable sur des entités du maillage.
Vecteur de données 2D avec sémantique par valeur (style STL).
Paramètres nécessaires à la construction d'une variable.
Infos caractérisant une variable.
Référence à une variable.
Informations caractérisant le type d'une variable.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
eItemKind
Genre d'entité de maillage.
std::int32_t Int32
Type entier signé sur 32 bits.