12#ifndef ARCANE_HDF5_HDF5UTILS_H
13#define ARCANE_HDF5_HDF5UTILS_H
18#include "arcane/utils/String.h"
19#include "arcane/utils/Array.h"
20#include "arcane/utils/Real2.h"
21#include "arcane/utils/Real3.h"
22#include "arcane/utils/Real2x2.h"
23#include "arcane/utils/Real3x3.h"
24#include "arcane/datatype/DataTypes.h"
26#include "arcane/hdf5/ArcaneHdf5Global.h"
37#if (H5_VERS_MAJOR<2) && (H5_VERS_MAJOR==1 && H5_VERS_MINOR<10)
38#error "This version of HDF5 is too old. Version 1.10+ is required"
42#define ARCANE_HDF5_1_6_AND_AFTER
43#define ARCANE_HDF5_1_8_AND_AFTER
65 ARCANE_HDF5_EXPORT herr_t _ArcaneHdf5UtilsGroupIterateMe(hid_t,
const char*,
void*);
84 static bool hasParallelHdf5();
94class ARCANE_HDF5_EXPORT
Hid
110 void _setId(
hid_t id) { m_id = id; }
111 void _setNullId() { m_id = -1; }
119 hid_t id()
const {
return m_id; }
120 bool isBad()
const {
return m_id < 0; }
200 void createDatasetTransfertCollectiveMPIIO();
230 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
301 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
362 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
402 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
471 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
536 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
575 ARCANE_DEPRECATED_REASON(
"Y2023: Copy constructor is deprecated. This class has unique ownership")
580 ARCANE_DEPRECATED_REASON(
"Y2023: Copy operator is deprecated. This class has unique ownership")
592 hid_t nativeType(
Real2)
const {
return m_real2_id.id(); }
593 hid_t nativeType(
Real3)
const {
return m_real3_id.id(); }
594 hid_t nativeType(
Real2x2)
const {
return m_real2x2_id.id(); }
595 hid_t nativeType(
Real3x3)
const {
return m_real3x3_id.id(); }
608#ifdef ARCANE_REAL_NOT_BUILTIN
609 hid_t nativeType(Real)
const;
615 hid_t saveType(
float)
const
617 return m_real_id.id();
619 hid_t saveType(
double)
const
621 return m_real_id.id();
625 return m_real2_id.id();
629 return m_real3_id.id();
633 return m_real2x2_id.id();
637 return m_real3x3_id.id();
639 hid_t saveType(
long double)
const
641 return m_real_id.id();
643 hid_t saveType(
short)
const
645 return m_short_id.id();
647 hid_t saveType(
unsigned short)
const
649 return m_ushort_id.id();
651 hid_t saveType(
unsigned int)
const
653 return m_uint_id.id();
655 hid_t saveType(
unsigned long)
const
657 return m_ulong_id.id();
659 hid_t saveType(
unsigned long long)
const
661 return m_ulong_id.id();
663 hid_t saveType(
int)
const
665 return m_int_id.id();
667 hid_t saveType(
long)
const
669 return m_long_id.id();
671 hid_t saveType(
long long)
const
673 return m_long_id.id();
675 hid_t saveType(
char)
const
677 return m_char_id.id();
679 hid_t saveType(
unsigned char)
const
681 return m_uchar_id.id();
683 hid_t saveType(
signed char)
const
685 return m_char_id.id();
687#ifdef ARCANE_REAL_NOT_BUILTIN
688 hid_t saveType(Real)
const
690 return m_real_id.id();
751 virtual bool exists()
const;
774template<
typename DataType>
787 return m_uid <
rhs.m_uid;
821template<
typename DataType>
Déclarations des types utilisés dans Arcane.
Tableau d'items de types quelconques.
Encapsule un hid_t pour un attribute.
Encapsule un hid_t pour un dataset.
Encapsule un hid_t pour un fichier.
Classe d'aide pour rechercher un groupe.
Encapsule un hid_t pour un groupe.
Classe servant d'initialiseur pour HDF.
Encapsule un hid_t pour une propriété (H5P*).
Encapsule un hid_t pour un dataspace.
Encapsule un hid_t pour un type.
Encapsule un dataset simple d'un fichier HDF5 qui représente un tableau.
Encapsule un dataset simple d'un fichier HDF5 qui représente un tableau.
Encapsule un dataset simple d'un fichier HDF5 qui représente un scalaire (éventuellement String).
StandardScalarT(hid_t hfile, const String &hpath)
Constructeur.
Définition des types standards Arcane pour hdf5.
HType m_real2x2_id
Identifiant HDF pour les Real2x2.
HType m_long_id
Identifiant HDF des entiers long signés.
HType m_int_id
Identifiant HDF des entiers signés.
HType m_short_id
Identifiant HDF des entiers signés.
HType m_real3x3_id
Identifiant HDF pour les Real3x3.
HType m_real_id
Identifiant HDF des réels.
HType m_ushort_id
Identifiant HDF des entiers long signés.
HType m_ulong_id
Identifiant HDF des entiers long non signés.
HType m_uchar_id
Identifiant HDF des caractères non-signés.
HType m_real2_id
Identifiant HDF pour les Real2.
HType m_char_id
Identifiant HDF des entiers signés.
HType m_uint_id
Identifiant HDF des entiers non signés.
HInit m_init
Classe initialisant HDF.
HType m_real3_id
Identifiant HDF pour les Real3.
Interface du gestionnaire de parallélisme pour un sous-domaine.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Classe gérant un vecteur de réel de dimension 2.
Classe gérant une matrice de réel de dimension 2x2.
Classe gérant un vecteur de réel de dimension 3.
Classe gérant une matrice de réel de dimension 3x3.
Vue constante d'un tableau de type T.
Interface du gestionnaire de traces.
Chaîne de caractères unicode.
Vecteur 1D de données avec sémantique par valeur (style STL).
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
eDataType
Type d'une donnée.