12#ifndef ARCANE_ACCELERATOR_SPANVIEW_H
13#define ARCANE_ACCELERATOR_SPANVIEW_H
17#include "arcane/utils/NumArray.h"
38template <
typename DataType,
typename Extents,
typename LayoutPolicy>
64template <
typename Accessor>
70 using DataType =
typename Accessor::ValueType;
71 using AccessorReturnType =
typename Accessor::AccessorReturnType;
73 using size_type =
typename SpanType::size_type;
82 constexpr ARCCORE_HOST_DEVICE AccessorReturnType operator()(size_type i)
const
84 return Accessor::build(m_values.
ptrAt(i));
87 constexpr ARCCORE_HOST_DEVICE AccessorReturnType operator[](size_type i)
const
89 return Accessor::build(m_values.
ptrAt(i));
91 constexpr ARCCORE_HOST_DEVICE size_type size()
const {
return m_values.
size(); }
103template <
typename Accessor>
109 using DataType =
typename Accessor::ValueType;
110 using AccessorReturnType =
typename Accessor::AccessorReturnType;
112 using size_type =
typename SpanType::size_type;
121 constexpr ARCCORE_HOST_DEVICE AccessorReturnType operator()(size_type i)
const
123 return Accessor::build(m_values.
ptrAt(i));
126 constexpr ARCCORE_HOST_DEVICE AccessorReturnType operator[](size_type i)
const
128 return Accessor::build(m_values.
ptrAt(i));
130 constexpr ARCCORE_HOST_DEVICE size_type size()
const {
return m_values.
size(); }
142template <
typename DataType>
auto
154template <
typename DataType>
auto
165template <
typename DataType>
auto
176template <
typename DataType>
auto
187template <
typename DataType>
auto
199template <
typename DataType>
auto
210template <
typename DataType>
auto
222template <
typename DataType>
auto
233template <
typename DataType>
auto
245template <
typename DataType>
auto
256template <
typename DataType>
auto
267template <
typename DataType>
auto
Vue en lecture, écriture ou lecture/écriture sur un 'SmallSpan'.
Classe de base des vues sur les 'NumArray'.
Vue en lecture, écriture ou lecture/écriture sur un 'Span'.
Informations pour construire une vue pour les données sur accélérateur.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Vue d'un tableau d'éléments de type T.
constexpr ARCCORE_HOST_DEVICE pointer ptrAt(SizeType index) const
Addresse du index-ème élément.
constexpr ARCCORE_HOST_DEVICE SizeType size() const noexcept
Retourne la taille du tableau.
Vue d'un tableau d'éléments de type T.
Espace de nom pour l'utilisation des accélérateurs.
auto viewInOut(RunCommand &cmd, CellMaterialVariableScalarRef< DataType > &var)
Vue en lecture/écriture pour les variables materiaux scalaire.
auto viewIn(RunCommand &cmd, const CellMaterialVariableScalarRef< DataType > &var)
Vue en lecture pour les variables materiaux scalaire.
auto viewOut(RunCommand &cmd, CellMaterialVariableScalarRef< DataType > &var)
Vue en écriture pour les variables materiaux scalaire.