Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
SerializeGlobal.cc
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2023 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/* SerializeGlobal.cc (C) 2000-2023 */
9/* */
10/* Définitions globales de la composante 'Serialize' de 'Arccore'. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arccore/serialize/BasicSerializer.h"
15
16#include "arccore/base/Ref.h"
17#include "arccore/base/Span.h"
18
19namespace Arccore
20{
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
27{
28 put(values);
29}
30
33{
34 put(values);
35}
36
39{
40 put(values);
41}
42
45{
46 put(values);
47}
48
51{
52 put(values);
53}
54
55/*---------------------------------------------------------------------------*/
56/*---------------------------------------------------------------------------*/
57
63
69
75
81
87
93
99
105
108{
110}
112/*---------------------------------------------------------------------------*/
113/*---------------------------------------------------------------------------*/
114
116getSpan(Span<Real> values)
118 get(values.smallView());
120
122getSpan(Span<Int16> values)
124 get(values.smallView());
125}
126
128getSpan(Span<Int32> values)
129{
130 get(values.smallView());
131}
132
134getSpan(Span<Int64> values)
135{
136 get(values.smallView());
137}
138
140getSpan(Span<Byte> values)
141{
142 get(values.smallView());
143}
144
145/*---------------------------------------------------------------------------*/
146/*---------------------------------------------------------------------------*/
147
150{
151 auto* x = new BasicSerializer();
152 return makeRef<ISerializer>(x);
153}
154
155/*---------------------------------------------------------------------------*/
156/*---------------------------------------------------------------------------*/
157
158} // End namespace Arccore
Gestion des références à une classe C++.
Implémentation basique de 'ISerializer'.
virtual void get(RealArrayView values)=0
Récupère le tableau values.
virtual void reserveSpan(eDataType dt, Int64 n)=0
Réserve de la mémoire pour n valeurs de dt.
virtual void putSpan(Span< const Real > values)
Ajoute le tableau values.
virtual void getSpan(Span< Real > values)
Récupère le tableau values.
virtual void put(Span< const Real > values)=0
Ajoute le tableau values.
Référence à une instance.
constexpr ARCCORE_HOST_DEVICE SizeType size() const noexcept
Retourne la taille du tableau.
Definition Span.h:209
constexpr view_type smallView()
Vue constante sur cette vue.
Definition Span.h:270
Vue d'un tableau d'éléments de type T.
Definition Span.h:510
Espace de nom de Arccore.
Definition ArcaneTypes.h:24
ARCCORE_SERIALIZE_EXPORT Ref< ISerializer > createSerializer()
Créé une instance de ISerializer.