17#include "arcane/ArcaneTypes.h"
38 virtual ~IData() =
default;
52 ARCCORE_DEPRECATED_2020(
"Use cloneRef() instead")
56 ARCCORE_DEPRECATED_2020(
"Use cloneEmptyRef() instead")
217 virtual IDataInternal* _commonInternal() = 0;
240template <
class DataType>
252 virtual const DataType&
value()
const = 0;
255 ARCCORE_DEPRECATED_2020(
"Use cloneTrueRef() instead")
259 ARCCORE_DEPRECATED_2020(
"Use cloneTrueEmpty() instead")
289template <
class DataType>
300 ARCCORE_DEPRECATED_2021(
"Use view() instead.")
304 ARCCORE_DEPRECATED_2021(
"Use view() instead.")
316 ARCCORE_DEPRECATED_2020(
"Use cloneTrueRef() instead")
320 ARCCORE_DEPRECATED_2020(
"Use cloneTrueEmptyRef() instead")
360template <
class DataType>
369 ARCCORE_DEPRECATED_2021(
"Use view() instead.")
373 ARCCORE_DEPRECATED_2021(
"Use view() instead.")
385 ARCCORE_DEPRECATED_2020(
"Use cloneTrueRef() instead")
389 ARCCORE_DEPRECATED_2020(
"Use cloneTrueEmptyRef() instead")
409template <class DataType>
#define ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS()
Macro pour déclarer les méthodes virtuelles gérant les compteurs de référence.
Vue modifiable pour un tableau 2D.
Classe représentant un tableau 2D classique.
Vue modifiable d'un tableau d'un type T.
Classe de base des vecteurs 1D de données.
Vue pour un tableau 2D constant.
Vue constante d'un tableau de type T.
Informations sur l'allocation d'une donnée.
Informations de type pour un conteneur de données.
virtual Ref< ThatClass > cloneTrueRef()=0
virtual Array2< T > & value()=0
virtual ThatClass * cloneTrue()=0
virtual ConstArray2View< T > view() const=0
virtual Ref< ThatClass > cloneTrueEmptyRef()=0
virtual ThatClass * cloneTrueEmpty()=0
Interface du pattern visitor pour une donnée tableau 2D.
Interface d'une donnée tableau 2D.
virtual ThatClass * cloneTrueEmpty()=0
virtual ThatClass * cloneTrue()=0
virtual Ref< ThatClass > cloneTrueRef()=0
virtual Ref< ThatClass > cloneTrueEmptyRef()=0
virtual ConstArrayView< T > view() const=0
virtual Array< T > & value()=0
Interface du pattern visitor pour une donnée tableau.
Interface d'une donnée tableau 1D.
virtual void visit(IDataVisitor *visitor)=0
Applique le visiteur à la donnée.
virtual void visit(IArrayDataVisitor *visitor)=0
Applique le visiteur à la donnée.
Interface du pattern visitor pour une donnée.
virtual Ref< ISerializedData > createSerializedDataRef(bool use_basic_type) const =0
Sérialise la donnée.
virtual void allocateBufferForSerializedData(ISerializedData *sdata)=0
Alloue la mémoire pour lire les valeurs sérialisées sdata.
virtual void copy(const IData *data)=0
Copie la donnée data dans l'instance courante.
virtual DataAllocationInfo allocationInfo() const =0
Informations sur l'allocation.
virtual void serialize(ISerializer *sbuf, IDataOperation *operation)=0
Sérialise la donnée en appliquant l'opération operation.
virtual IData * clone()=0
Clone la donnée. L'instance créée doit être détruite par l'opérateur 'delete'.
virtual void swapValues(IData *data)=0
Échange les valeurs de data avec celles de l'instance.
virtual IData * cloneEmpty()=0
Clone la donnée mais sans éléments. L'instance créée doit être détruite par l'opérateur 'delete'.
virtual void computeHash(IHashAlgorithm *algo, ByteArray &output) const =0
Calcul une clé de hashage sur cette donnée.
virtual void visitArray2(IArray2DataVisitor *visitor)=0
Applique le visiteur à la donnée.
virtual void setName(const String &name)=0
Positionne le nom de la donnée (interne)
virtual void visit(IDataVisitor *visitor)=0
Applique le visiteur à la donnée.
virtual Integer dimension() const =0
Dimension. 0 pour un scalaire, 1 pour un tableau mono-dim, 2 pour un tableau bi-dim.
virtual void visitArray(IArrayDataVisitor *visitor)=0
Applique le visiteur à la donnée.
virtual Integer multiTag() const =0
Tag multiple. 0 si non multiple, 1 si multiple, 2 si multiple pour les variable MultiArray (obsolète)
virtual void fillDefault()=0
Remplit la donnée avec sa valeur par défaut.
virtual void setAllocationInfo(const DataAllocationInfo &v)=0
Positionne les informations sur l'allocation.
virtual void visitMultiArray2(IMultiArray2DataVisitor *visitor)
Applique le visiteur à la donnée.
virtual Ref< IData > cloneRef()=0
Clone la donnée.
virtual void visitScalar(IScalarDataVisitor *visitor)=0
Applique le visiteur à la donnée.
virtual eDataType dataType() const =0
Type de la donnée.
virtual Ref< IData > cloneEmptyRef()=0
Clone la donnée mais sans éléments.
virtual void resize(Integer new_size)=0
Redimensionne la donnée.
virtual void setShape(const ArrayShape &new_shape)=0
Positionne la forme du tableau.
virtual void assignSerializedData(const ISerializedData *sdata)=0
Assigne à la donnée les valeurs sérialisées sdata.
virtual DataStorageTypeInfo storageTypeInfo() const =0
Informations sur le type de conteneur de la donnée.
virtual ArrayShape shape() const =0
Forme du tableau pour une donnée 1D ou 2D.
Interface d'un algorithme de hashage.
virtual ThatClass * cloneTrue()=0
Clone la donnée.
virtual ThatClass * cloneTrueEmpty()=0
Clone la donnée mais sans éléments.
virtual const MultiArray2< DataType > & value() const =0
Valeur de la donnée.
virtual MultiArray2< DataType > & value()=0
Valeur de la donnée.
Interface du pattern visitor pour une donnée tableau 2D à taille variable.
Interface d'une donnée tableau multi 2D.
virtual ThatClass * cloneTrue()=0
virtual DataType & value()=0
Valeur de la donnée.
virtual Ref< ThatClass > cloneTrueRef()=0
virtual ThatClass * cloneTrueEmpty()=0
virtual const DataType & value() const =0
Valeur de la donnée.
virtual Ref< ThatClass > cloneTrueEmptyRef()=0
Interface du pattern visitor pour une donnée scalaire.
Interface d'une donnée scalaire.
virtual void visit(IDataVisitor *visitor)=0
Applique le visiteur à la donnée.
virtual void visit(IScalarDataVisitor *visitor)=0
Applique le visiteur à la donnée.
Interface d'un sérialiseur.
Classe de base des tableau 2D à taille multiple.
Référence à une instance.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Int32 Integer
Type représentant un entier.
Array< Byte > ByteArray
Tableau dynamique à une dimension de caractères.
ConstArrayView< Int32 > Int32ConstArrayView
Equivalent C d'un tableau à une dimension d'entiers 32 bits.
eDataType
Type d'une donnée.