12#ifndef ARCANE_ISERIALIZEDDATA_H
13#define ARCANE_ISERIALIZEDDATA_H
17#include "arcane/ArcaneTypes.h"
164 ARCANE_DEPRECATED_2018_R("Use method 'writableBytes()' or 'constBytes()' instead")
168 ARCCORE_DEPRECATED_2021("Use method 'writableBytes()' or 'constBytes()' instead")
178 ARCCORE_DEPRECATED_2021("Use method 'setWritableBytes()' instead")
188 ARCCORE_DEPRECATED_2021("Use method 'setConstBytes()' instead")
197 ARCCORE_DEPRECATED_2021("Use method 'setWritableBytes()' instead")
206 ARCCORE_DEPRECATED_2021("Use method 'setConstBytes()' instead")
215 ARCCORE_DEPRECATED_2021("Use method 'writableBytes()' or 'constBytes()' instead")
230extern "C++" ARCANE_CORE_EXPORT
232arcaneCreateSerializedDataRef(
eDataType data_type, Int64 memory_size,
233 Integer nb_dim, Int64 nb_element, Int64 nb_base_element,
247extern "C++" ARCANE_CORE_EXPORT
249arcaneCreateSerializedDataRef(
eDataType data_type, Int64 memory_size,
250 Integer nb_dim, Int64 nb_element, Int64 nb_base_element,
262extern "C++" ARCANE_CORE_EXPORT
264arcaneCreateEmptySerializedDataRef();
#define ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS()
Macro pour déclarer les méthodes virtuelles gérant les compteurs de référence.
Interface d'un algorithme de hashage.
virtual eDataType baseDataType() const =0
Type de la donnée.
virtual ArrayShape shape() const =0
Forme du tableau associé aux données.
virtual Integer nbDimension() const =0
Dimension. 0 pour un scalaire, 1 pour un tableau mono-dim, ...
virtual Int64 memorySize() const =0
Indique le nombre d'octets qu'il faut allouer pour stocker ou lire les données.
virtual void allocateMemory(Int64 size)=0
Alloue un tableaux pour contenir les éléments sérialisés.
virtual void setWritableBytes(Span< Byte > bytes)=0
Positionne les valeurs de sérialisation.
virtual void setConstBytes(Span< const Byte > bytes)=0
Positionne les valeurs de sérialisation pour la lecture.
virtual void serialize(ISerializer *buffer) const =0
Serialize en lecture la donnée.
virtual void serialize(ISerializer *buffer)=0
Serialize en lecture ou écriture la donnée.
ARCANE_DEPRECATED_2018_R("Use method 'writableBytes()' or 'constBytes()' instead") virtual ByteConstArrayView buffer() const =0
Valeurs sérialisées.
virtual void computeHash(IHashAlgorithm *algo, ByteArray &output) const =0
Calcul une clé de hashage sur cette donnée.
virtual Span< Byte > writableBytes()=0
Vue sur les valeurs sérialisées.
virtual ~ISerializedData()=default
Libère les ressources.
virtual Int64 nbBaseElement() const =0
Nombre d'éléments du type de base.
virtual Int64ConstArrayView extents() const =0
Tableau contenant le nombre d'éléments pour chaque dimension.
virtual Int64 nbElement() const =0
Nombre d'éléments.
virtual Span< const Byte > constBytes() const =0
Valeurs sérialisées.
virtual bool isMultiSize() const =0
Indique s'il s'agit d'un tableau multi-taille. (pertinent uniquement si nbDimension()>1)
Vue modifiable d'un tableau d'un type T.
Classe de base des vecteurs 1D de données.
Vue constante d'un tableau de type T.
Interface d'un sérialiseur.
Vue d'un tableau d'éléments de type T.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
unsigned char Byte
Type d'un octet.
eDataType
Type d'une donnée.