Arcane  v4.1.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
IMemoryCopier.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 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/* IMemoryCopier.h (C) 2000-2025 */
9/* */
10/* Interface pour les copies mémoire. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCCORE_COMMON_INTERNAL_IMEMORYCOPIER_H
13#define ARCCORE_COMMON_INTERNAL_IMEMORYCOPIER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arccore/common/IMemoryResourceMng.h"
18#include "arccore/base/MemoryView.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
31class ARCCORE_COMMON_EXPORT IMemoryCopier
32{
33 public:
34
35 virtual ~IMemoryCopier() = default;
36
37 public:
38
44 virtual void copy(ConstMemoryView from, eMemoryResource from_mem,
46 const RunQueue* queue) = 0;
47};
48
49/*---------------------------------------------------------------------------*/
50/*---------------------------------------------------------------------------*/
51
52} // End namespace Arcane
53
54/*---------------------------------------------------------------------------*/
55/*---------------------------------------------------------------------------*/
56
57#endif
File d'exécution pour un accélérateur.
Vue constante sur une zone mémoire contigue contenant des éléments de taille fixe.
Interface pour les copies mémoire avec support des accélérateurs.
virtual void copy(ConstMemoryView from, eMemoryResource from_mem, MutableMemoryView to, eMemoryResource to_mem, const RunQueue *queue)=0
Copie les données de from vers to avec la queue queue.
Vue modifiable sur une zone mémoire contigue contenant des éléments de taille fixe.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
eMemoryResource
Liste des ressources mémoire disponibles.