Interface d'une donnée sérialisée. Plus de détails...
#include <arcane/core/ISerializedData.h>
Fonctions membres publiques | |
virtual | ~ISerializedData ()=default |
Libère les ressources. | |
virtual eDataType | baseDataType () const =0 |
Type de la donnée. | |
virtual Integer | nbDimension () const =0 |
Dimension. 0 pour un scalaire, 1 pour un tableau mono-dim, ... | |
virtual Int64 | nbElement () const =0 |
Nombre d'éléments. | |
virtual Int64 | nbBaseElement () const =0 |
Nombre d'éléments du type de base. | |
virtual bool | isMultiSize () const =0 |
Indique s'il s'agit d'un tableau multi-taille. (pertinent uniquement si nbDimension()>1) | |
virtual Int64 | memorySize () const =0 |
Indique le nombre d'octets qu'il faut allouer pour stocker ou lire les données. | |
virtual Int64ConstArrayView | extents () const =0 |
Tableau contenant le nombre d'éléments pour chaque dimension. | |
virtual ArrayShape | shape () const =0 |
Forme du tableau associé aux données. | |
virtual Span< const Byte > | constBytes () const =0 |
Valeurs sérialisées. | |
virtual Span< Byte > | writableBytes ()=0 |
Vue sur les valeurs sérialisées. | |
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 | allocateMemory (Int64 size)=0 |
Alloue un tableaux pour contenir les éléments sérialisés. | |
virtual void | serialize (ISerializer *buffer)=0 |
Serialize en lecture ou écriture la donnée. | |
virtual void | serialize (ISerializer *buffer) const =0 |
Serialize en lecture la donnée. | |
virtual void | computeHash (IHashAlgorithm *algo, ByteArray &output) const =0 |
Calcul une clé de hashage sur cette donnée. | |
ARCANE_DEPRECATED_2018_R ("Use method 'writableBytes()' or 'constBytes()' instead") virtual ByteConstArrayView buffer() const =0 | |
Valeurs sérialisées. | |
ARCANE_DEPRECATED_2018_R ("Use method 'writableBytes()' or 'constBytes()' instead") virtual ByteArrayView buffer()=0 | |
Valeurs sérialisées. | |
ARCCORE_DEPRECATED_2021 ("Use method 'writableBytes()' or 'constBytes()' instead") virtual Span< const Byte > bytes() const =0 | |
Valeurs sérialisées. | |
virtual void | setBuffer (ByteArrayView buffer)=0 |
Positionne les valeurs de sérialisation. | |
virtual void | setBuffer (ByteConstArrayView buffer)=0 |
Positionne les valeurs de sérialisation. | |
virtual void | setBytes (Span< Byte > bytes)=0 |
Positionne les valeurs de sérialisation. | |
virtual void | setBytes (Span< const Byte > bytes)=0 |
Positionne les valeurs de sérialisation. | |
ARCCORE_DEPRECATED_2021 ("Use method 'writableBytes()' or 'constBytes()' instead") virtual Span< Byte > bytes()=0 | |
Valeurs sérialisées. | |
Fonctions membres privées | |
ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS () | |
Interface d'une donnée sérialisée.
Une donnée (IData) est sérialisée en une instance de cette classe.
Quel que soit le type de la donnée, le type sérialisé est obligatoirement un type de base parmi les suivants: DT_Byte, DT_Int16, DT_Int32, DT_Int64, DT_Real.
Une instance de cette classe n'est valable que tant que la donnée de référence n'est pas modifiée.
Pour sérialiser une donnée data en écriture:
Pour sérialiser une donnée data en lecture:
Définition à la ligne 61 du fichier ISerializedData.h.
Alloue un tableaux pour contenir les éléments sérialisés.
Après appel à cette méthode, il est possible de récupérer une vue sur les valeurs sérialisées via writableBytes() ou constBytes().
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Valeurs sérialisées.
|
pure virtual |
Valeurs sérialisées.
|
pure virtual |
Valeurs sérialisées.
Type de la donnée.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Calcul une clé de hashage sur cette donnée.
La clé est ajoutée dans output. La longueur de la clé dépend de l'algorithme utilisé.
Implémenté dans Arcane::SerializedData.
Valeurs sérialisées.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Tableau contenant le nombre d'éléments pour chaque dimension.
Implémenté dans Arcane::SerializedData.
Indique s'il s'agit d'un tableau multi-taille. (pertinent uniquement si nbDimension()>1)
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Indique le nombre d'octets qu'il faut allouer pour stocker ou lire les données.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Nombre d'éléments du type de base.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Dimension. 0 pour un scalaire, 1 pour un tableau mono-dim, ...
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Nombre d'éléments.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Serialize en lecture la donnée.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Serialize en lecture ou écriture la donnée.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Positionne les valeurs de sérialisation.
Le tableau buffer ne doit pas être modifié tant que cette instance est utilisée.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Positionne les valeurs de sérialisation.
Le tableau buffer ne doit pas être modifié tant que cette instance est utilisée.
Implémenté dans Arcane::SerializedData.
Positionne les valeurs de sérialisation.
Le tableau bytes ne doit pas être modifié tant que cette instance est utilisée.
Implémenté dans Arcane::SerializedData, et Arcane::SerializedData.
Positionne les valeurs de sérialisation.
Le tableau bytes ne doit pas être modifié tant que cette instance est utilisée.
Implémenté dans Arcane::SerializedData, et Arcane::SerializedData.
Positionne les valeurs de sérialisation pour la lecture.
La vue bytes doit rester valide tant que cette instance est utilisée.
Implémenté dans Arcane::SerializedData.
Positionne les valeurs de sérialisation.
La vue bytes doit rester valide tant que cette instance est utilisée.
Implémenté dans Arcane::SerializedData.
|
pure virtual |
Forme du tableau associé aux données.
Implémenté dans Arcane::SerializedData.
Vue sur les valeurs sérialisées.
Implémenté dans Arcane::SerializedData.