12#ifndef ARCANE_CORE_MATERIALS_MATVARINDEX_H
13#define ARCANE_CORE_MATERIALS_MATVARINDEX_H
17#include "arcane/core/materials/MaterialsCoreGlobal.h"
42 constexpr ARCCORE_HOST_DEVICE
MatVarIndex(Int32 array_index,Int32 value_index)
43 : m_array_index(array_index), m_value_index(value_index)
51 constexpr ARCCORE_HOST_DEVICE Int32
arrayIndex()
const {
return m_array_index; }
54 constexpr ARCCORE_HOST_DEVICE Int32
valueIndex()
const {
return m_value_index; }
57 constexpr ARCCORE_HOST_DEVICE
void setIndex(Int32 array_index,Int32 value_index)
59 m_array_index = array_index;
60 m_value_index = value_index;
63 constexpr ARCCORE_HOST_DEVICE
void reset()
69 constexpr ARCCORE_HOST_DEVICE
bool null()
const
71 return m_value_index==(-1);
83ARCANE_CORE_EXPORT ARCCORE_HOST_DEVICE std::ostream&
84operator<<(std::ostream& o,
const MatVarIndex& mvi);
89inline ARCCORE_HOST_DEVICE
bool
90operator==(MatVarIndex mv1,MatVarIndex mv2)
92 if (mv1.arrayIndex() != mv2.arrayIndex())
94 return mv1.valueIndex() == mv2.valueIndex();
97inline bool ARCCORE_HOST_DEVICE operator!=(MatVarIndex mv1,MatVarIndex mv2)
99 return !(operator==(mv1,mv2));
114 MatVarIndex ARCCORE_HOST_DEVICE localId()
const {
return m_local_id; }
128 explicit ARCCORE_HOST_DEVICE
PureMatVarIndex(Int32 idx) : m_index(idx){}
130 Int32 ARCCORE_HOST_DEVICE valueIndex()
const {
return m_index; }
138ARCANE_CORE_EXPORT ARCCORE_HOST_DEVICE std::ostream&
Index d'un Item matériaux dans une variable.
Représente un index sur les variables matériaux et milieux.
constexpr __host__ __device__ Int32 arrayIndex() const
Retourne l'indice du tableau de valeur dans la liste des variables.
constexpr __host__ __device__ void setIndex(Int32 array_index, Int32 value_index)
Positionne l'index.
constexpr __host__ __device__ Int32 valueIndex() const
Retourne l'indice dans le tableau de valeur.
Index d'un Item matériaux pure dans une variable.
Active toujours les traces dans les parties Arcane concernant les matériaux.
std::ostream & operator<<(std::ostream &ostr, eItemKind item_kind)
Opérateur de sortie sur un flot.