Arcane  v4.1.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
CollectionsGlobal.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/* CollectionsGlobal.h (C) 2000-2025 */
9/* */
10/* Définitions globales de la composante 'Collections' de 'Arccore'. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCCORE_COLLECTIONS_COLLECTIONSGLOBAL_H
13#define ARCCORE_COLLECTIONS_COLLECTIONSGLOBAL_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arccore/base/ArccoreGlobal.h"
18#include "arccore/common/CommonGlobal.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23#if defined(ARCCORE_COMPONENT_arccore_collections)
24#define ARCCORE_COLLECTIONS_EXPORT ARCCORE_EXPORT
25#define ARCCORE_COLLECTIONS_EXTERN_TPL
26#else
27#define ARCCORE_COLLECTIONS_EXPORT ARCCORE_IMPORT
28#define ARCCORE_COLLECTIONS_EXTERN_TPL extern
29#endif
30
31/*---------------------------------------------------------------------------*/
32/*---------------------------------------------------------------------------*/
33
34namespace Arcane
35{
36template <typename DataType> class Array2;
37template <typename DataType> class UniqueArray2;
38template <typename DataType> class SharedArray2;
39
40// Les trois types suivants sont conservés pour compatibilité avec l'existant.
41// Il faudra les rendre optionnels mi-2025 et les supprimer en 2026
42using IMemoryAllocator3 = IMemoryAllocator;
43using AlignedMemoryAllocator3 = AlignedMemoryAllocator;
44using DefaultMemoryAllocator3 = DefaultMemoryAllocator;
45} // namespace Arcane
46
47/*---------------------------------------------------------------------------*/
48/*---------------------------------------------------------------------------*/
49
50namespace Arcane
51{
52//! Typedef pour la version Arcane historique (avec 2's')
53// TODO: A rendre obsolète (juin 2025)
54using eMemoryRessource = Arcane::eMemoryResource;
55} // namespace Arcane
56
57/*---------------------------------------------------------------------------*/
58/*---------------------------------------------------------------------------*/
59
60namespace Arccore
61{
62
63/*---------------------------------------------------------------------------*/
64/*---------------------------------------------------------------------------*/
65
66using Arcane::AbstractArray;
67using Arcane::AlignedMemoryAllocator;
68using Arcane::AlignedMemoryAllocator3;
69using Arcane::AllocatedMemoryInfo;
70using Arcane::ARCCORE_NB_MEMORY_RESOURCE;
71using Arcane::Array;
72using Arcane::Array2;
73using Arcane::ArrayMetaData;
74using Arcane::DefaultMemoryAllocator;
75using Arcane::DefaultMemoryAllocator3;
76using Arcane::eHostDeviceMemoryLocation;
77using Arcane::eMemoryLocationHint;
78using Arcane::eMemoryResource;
79using Arcane::IMemoryAllocator;
80using Arcane::IMemoryAllocator3;
81using Arcane::MemoryAllocationArgs;
82using Arcane::MemoryAllocationOptions;
83using Arcane::PrintableMemoryAllocator;
84using Arcane::SharedArray;
86using Arcane::UniqueArray;
88
89//! Typedef pour la version Arcane historique (avec 2's')
90// TODO: A rendre obsolète (juin 2025)
91using eMemoryRessource = Arcane::eMemoryResource;
92
93/*---------------------------------------------------------------------------*/
94/*---------------------------------------------------------------------------*/
95
96} // namespace Arccore
97
98/*---------------------------------------------------------------------------*/
99/*---------------------------------------------------------------------------*/
100
101#endif
102
Classe représentant un tableau 2D classique.
Vecteur de données 2D partagées avec sémantique par référence.
Vecteur de données 2D avec sémantique par valeur (style STL).
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Arcane::eMemoryResource eMemoryRessource
Typedef pour la version Arcane historique (avec 2's')
Espace de nom de Arccore.
Arcane::eMemoryResource eMemoryRessource
Typedef pour la version Arcane historique (avec 2's')