12#ifndef ARCANE_CORE_DATAVIEW_H
13#define ARCANE_CORE_DATAVIEW_H
17#include "arcane/core/datatype/DataTypeTraits.h"
30namespace Arcane::Accelerator::impl
42template <
typename DataType>
47 using ValueType =
const DataType;
48 using AccessorReturnType =
const DataType;
49 static ARCCORE_HOST_DEVICE AccessorReturnType build(
const DataType*
ptr)
60template <
typename DataType>
68 using ValueType = DataType;
80 operator=(
const DataType& v)
104 operator+=(
const DataType& v)
106 *m_ptr = (*m_ptr) + v;
112 *m_ptr = (*m_ptr) + *(v.m_ptr);
118 operator-=(
const DataType& v)
120 *m_ptr = (*m_ptr) - v;
126 *m_ptr = (*m_ptr) - *(v.m_ptr);
132 operator*=(
const DataType& v)
134 *m_ptr = (*m_ptr) * v;
140 *m_ptr = (*m_ptr) * *(v.m_ptr);
146 operator/=(
const DataType& v)
148 *m_ptr = (*m_ptr) / v;
154 *m_ptr = (*m_ptr) / *(v.m_ptr);
177 ARCCORE_HOST_DEVICE
void setXX(Real value)
182 ARCCORE_HOST_DEVICE
void setYX(Real value)
187 ARCCORE_HOST_DEVICE
void setZX(Real value)
193 ARCCORE_HOST_DEVICE
void setXY(Real value)
198 ARCCORE_HOST_DEVICE
void setYY(Real value)
203 ARCCORE_HOST_DEVICE
void setZY(Real value)
209 ARCCORE_HOST_DEVICE
void setXZ(Real value)
214 ARCCORE_HOST_DEVICE
void setYZ(Real value)
219 ARCCORE_HOST_DEVICE
void setZZ(Real value)
242template <
typename DataType>
247 using BaseType::m_ptr;
252 using ValueType = DataType;
263 ARCCORE_HOST_DEVICE
operator DataType()
const
270 BaseType::operator=(v);
274 operator=(
const DataType& v)
276 BaseType::operator=(v);
290 template <
typename X = DataType>
constexpr ARCCORE_HOST_DEVICE
auto
296 template <
typename X = DataType>
constexpr ARCCORE_HOST_DEVICE
auto
305 constexpr ARCCORE_HOST_DEVICE DataType*
_address()
const {
return m_ptr; }
Classe pour accéder à un élément d'une vue en lecture/écriture.
constexpr ARCCORE_HOST_DEVICE DataType * _address() const
Adresse de la donnée. Valide uniquement pour les types simples (i.e pas les Real3)
Classe pour accéder à un élément d'une vue en lecture.
Classe pour accéder à un élément d'une vue en écriture.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-