From ed54be8d439e39f7ac60723c376b414c3e616a74 Mon Sep 17 00:00:00 2001 From: Nabil Ghodbane Date: Wed, 23 Dec 2020 11:28:02 +0100 Subject: [PATCH] spns #20541 Passage du reader lata en int 64 --- applications/SALOME-9.5.0-windows.pyconf | 2 +- applications/SALOME-9.5.0.pyconf | 2 +- applications/SALOME-9.6.0-int32.pyconf | 2 +- applications/SALOME-9.6.0.pyconf | 12 +- applications/SALOME-master-int32.pyconf | 4 +- applications/SALOME-master.pyconf | 6 +- products/ParaView.pyconf | 58 + .../paraview-0012-LATA_64BITS_IDS.patch | 1939 +++++++++++++++++ 8 files changed, 2014 insertions(+), 11 deletions(-) create mode 100644 products/patches/paraview-0012-LATA_64BITS_IDS.patch diff --git a/applications/SALOME-9.5.0-windows.pyconf b/applications/SALOME-9.5.0-windows.pyconf index cfeb8f2..148d68d 100644 --- a/applications/SALOME-9.5.0-windows.pyconf +++ b/applications/SALOME-9.5.0-windows.pyconf @@ -81,7 +81,7 @@ APPLICATION : opencv : '3.2.0' ospray : '1.8.4' packaging : '19.0' - ParaView : '5.8.0' + ParaView : {tag : '5.8.0', section : 'version_5_8_0_int32'} perl : '5.28.1.1' Pillow : '7.1.1' planegcs : '0.18-3cb6890' diff --git a/applications/SALOME-9.5.0.pyconf b/applications/SALOME-9.5.0.pyconf index 973dfe9..f0bd3fc 100644 --- a/applications/SALOME-9.5.0.pyconf +++ b/applications/SALOME-9.5.0.pyconf @@ -71,7 +71,7 @@ APPLICATION : openssl : "native" ospray : '1.8.4' packaging : '17.1' - ParaView : '5.8.0' + ParaView : {tag : '5.8.0', section : 'version_5_8_0_int32'} Pillow : '7.1.1' planegcs : '0.18-3cb6890' pockets : '0.6.2' diff --git a/applications/SALOME-9.6.0-int32.pyconf b/applications/SALOME-9.6.0-int32.pyconf index 668a2e6..1bfb5da 100644 --- a/applications/SALOME-9.6.0-int32.pyconf +++ b/applications/SALOME-9.6.0-int32.pyconf @@ -74,7 +74,7 @@ APPLICATION : openssl : "native" ospray : '1.8.4' packaging : '17.1' - ParaView : '5.8.0' + ParaView : {tag : '5.8.0', section : 'version_5_8_0_int32'} petsc : '3.14.0' Pillow : '7.1.1' planegcs : '0.18-3cb6890' diff --git a/applications/SALOME-9.6.0.pyconf b/applications/SALOME-9.6.0.pyconf index e039980..189e64c 100644 --- a/applications/SALOME-9.6.0.pyconf +++ b/applications/SALOME-9.6.0.pyconf @@ -209,7 +209,8 @@ __overwrite__ : 'paraview.0006-ParaView_find_libxml2.patch', 'paraview.0007-ParaView_find_freetype.patch', 'paraview.0009-ParaView_volume_mapper.patch', - 'pv_coincident.patch' + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' ] } @@ -226,7 +227,8 @@ __overwrite__ : 'paraview.0006-ParaView_find_libxml2.patch', 'paraview.0007-ParaView_find_freetype.patch', 'paraview.0009-ParaView_volume_mapper.patch', - 'pv_coincident.patch' + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' ] } @@ -239,7 +241,8 @@ __overwrite__ : 'paraview.0007-ParaView_find_freetype.patch', 'paraview.0009-ParaView_volume_mapper.patch', 'paraview.0011-vtkSMPSelection.patch', - 'pv_coincident.patch' + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' ] } @@ -256,7 +259,8 @@ __overwrite__ : 'paraview.0006-ParaView_find_libxml2.patch', 'paraview.0007-ParaView_find_freetype.patch', 'paraview.0009-ParaView_volume_mapper.patch', - 'pv_coincident.patch' + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' ] } ] diff --git a/applications/SALOME-master-int32.pyconf b/applications/SALOME-master-int32.pyconf index ade612b..84da164 100644 --- a/applications/SALOME-master-int32.pyconf +++ b/applications/SALOME-master-int32.pyconf @@ -71,7 +71,7 @@ APPLICATION : openssl : "native" ospray : '1.8.4' packaging : '17.1' - ParaView : '5.8.0' + ParaView : {tag : '5.8.0', section : 'version_5_8_0_int32'} petsc : '3.14.0' Pillow : '7.1.1' planegcs : '0.18-3cb6890' @@ -211,7 +211,7 @@ __overwrite__ : { # Adapt Paraview CMake files to be compliant with recent distributions __condition__ : "VARS.dist in ['FD30', 'FD32', 'CO8']" - 'PRODUCTS.ParaView.version_5_8_0.patches' : ['paraview.0010-ParaViewClient.patch', + 'PRODUCTS.ParaView.version_5_8_0_int32.patches' : ['paraview.0010-ParaViewClient.patch', 'paraview.0004-ParaView_hdf5.patch', 'paraview.0005-ParaView_find_cgns.patch', 'paraview.0006-ParaView_find_libxml2.patch', diff --git a/applications/SALOME-master.pyconf b/applications/SALOME-master.pyconf index 6a9fb14..f0aa747 100644 --- a/applications/SALOME-master.pyconf +++ b/applications/SALOME-master.pyconf @@ -220,7 +220,8 @@ __overwrite__ : 'paraview.0007-ParaView_find_freetype.patch', 'paraview.0009-ParaView_volume_mapper.patch', 'paraview.0011-vtkSMPSelection.patch', - 'pv_coincident.patch' + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' ] } @@ -239,7 +240,8 @@ __overwrite__ : 'paraview.0009-ParaView_volume_mapper.patch', 'paraview.0010-ParaViewClient.patch', 'paraview.0010-ParaView_find_python.patch', - 'pv_coincident.patch' + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' ] } ] diff --git a/products/ParaView.pyconf b/products/ParaView.pyconf index 94e4368..1edd45d 100755 --- a/products/ParaView.pyconf +++ b/products/ParaView.pyconf @@ -31,6 +31,22 @@ default : } version_5_8_0 : +{ + archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} + # two other LATA patches already included in archive + patches : ['paraview.0003-ParaViewClient.patch', + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'paraview.0010-ParaView_find_python.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + +version_5_8_0_int32 : { archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} # two other LATA patches already included in archive @@ -46,6 +62,33 @@ version_5_8_0 : } version_5_8_0_win : +{ + depend : [ + 'Python', + 'hdf5', + 'qt', + 'boost', + 'libxml2', + 'freetype', + 'matplotlib', + 'cgns', + 'Pygments', + 'pthreads', + 'zlib' + ] + patches : ['paraview.0003-ParaViewClient.patch', + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0008-ParaView_find_zlib.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + +version_5_8_0_win_int32 : { depend : [ 'Python', @@ -72,6 +115,21 @@ version_5_8_0_win : } version_5_8_0_MPI : +{ + archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} + patches : ['paraview.0003-ParaViewClient.patch', + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'paraview.0012-VTKM_MPI.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + +version_5_8_0_MPI_int32 : { archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} patches : ['paraview.0003-ParaViewClient.patch', diff --git a/products/patches/paraview-0012-LATA_64BITS_IDS.patch b/products/patches/paraview-0012-LATA_64BITS_IDS.patch new file mode 100644 index 0000000..2ba6665 --- /dev/null +++ b/products/patches/paraview-0012-LATA_64BITS_IDS.patch @@ -0,0 +1,1939 @@ +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/arch.h ParaView/Utilities/VisItBridge/databases/readers/Lata/arch.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/arch.h 2020-12-22 12:04:51.219334522 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/arch.h 2020-12-22 12:06:26.188148423 +0100 +@@ -29,6 +29,10 @@ + + #ifndef arch_include_ + #define arch_include_ +-typedef int entier; ++typedef long entier; ++typedef long integer; ++typedef int True_int; ++#define INT_is_64_ ++ + #endif + +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.C ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.C 2020-12-22 12:06:26.189148420 +0100 +@@ -31,8 +31,8 @@ + #include + //Implemente_instanciable_sans_constructeur_ni_destructeur(ArrOfBit,"ArrOfBit",Objet_U); + +-const unsigned int ArrOfBit::SIZE_OF_INT_BITS = 5; +-const unsigned int ArrOfBit::DRAPEAUX_INT = 31; ++const unsigned long ArrOfBit::SIZE_OF_INT_BITS = 5; ++const unsigned long ArrOfBit::DRAPEAUX_INT = 31; + + // Description: Constructeur d'un tableau de taille n, non initialise + ArrOfBit::ArrOfBit(entier n) +@@ -59,7 +59,7 @@ + } + + // Description: +-// Taille en "int" du tableau requis pour stocker un tableau de bits ++// Taille en "long" du tableau requis pour stocker un tableau de bits + // de taille donnees. + entier ArrOfBit::calculer_int_size(entier taille) const + { +@@ -83,7 +83,7 @@ + { + entier oldsize = calculer_int_size(taille); + entier newsize = calculer_int_size(n); +- unsigned int * newdata = new unsigned int[newsize]; ++ unsigned long * newdata = new unsigned long[newsize]; + entier size_copy = (newsize > oldsize) ? oldsize : newsize; + if (size_copy) + { +@@ -114,11 +114,11 @@ + data = 0; + } + if (newsize > 0) +- data = new unsigned int[newsize]; ++ data = new unsigned long[newsize]; + } + taille = array.taille; + if (taille) +- memcpy(data, array.data, newsize * sizeof(unsigned int)); ++ memcpy(data, array.data, newsize * sizeof(unsigned long)); + return *this; + } + +@@ -127,7 +127,7 @@ + + ArrOfBit& ArrOfBit::operator=(entier val) + { +- unsigned int valeur = val ? (~((unsigned int) 0)) : 0; ++ unsigned long valeur = val ? (~((unsigned long) 0)) : 0; + entier size = calculer_int_size(taille); + entier i; + for (i = 0; i < size; i++) +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.h ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfBit.h 2020-12-22 12:06:26.189148420 +0100 +@@ -55,18 +55,18 @@ + entier calculer_int_size(entier taille) const; + protected: + entier taille; +- unsigned int *data; +- static const unsigned int SIZE_OF_INT_BITS; +- static const unsigned int DRAPEAUX_INT; ++ unsigned long *data; ++ static const unsigned long SIZE_OF_INT_BITS; ++ static const unsigned long DRAPEAUX_INT; + }; + + // Description: Renvoie 1 si le bit e est mis, 0 sinon. + inline entier ArrOfBit::operator[](entier e) const + { + assert(e >= 0 && e < taille); +- unsigned int i = (unsigned int) e; +- unsigned int x = data[i >> SIZE_OF_INT_BITS]; +- unsigned int flag = 1 << (i & DRAPEAUX_INT); ++ unsigned long i = (unsigned long) e; ++ unsigned long x = data[i >> SIZE_OF_INT_BITS]; ++ unsigned long flag = 1 << (i & DRAPEAUX_INT); + entier resultat = ((x & flag) != 0) ? 1 : 0; + return resultat; + } +@@ -75,8 +75,8 @@ + inline void ArrOfBit::setbit(entier e) const + { + assert(e >= 0 && e < taille); +- unsigned int i = (unsigned int) e; +- unsigned int flag = 1 << (i & DRAPEAUX_INT); ++ unsigned long i = (unsigned long) e; ++ unsigned long flag = 1 << (i & DRAPEAUX_INT); + data[i >> SIZE_OF_INT_BITS] |= flag; + } + +@@ -84,10 +84,10 @@ + inline entier ArrOfBit::testsetbit(entier e) const + { + assert(e >= 0 && e < taille); +- unsigned int i = (unsigned int) e; +- unsigned int flag = 1 << (i & DRAPEAUX_INT); ++ unsigned long i = (unsigned long) e; ++ unsigned long flag = 1 << (i & DRAPEAUX_INT); + entier index = i >> SIZE_OF_INT_BITS; +- unsigned int old = data[index]; ++ unsigned long old = data[index]; + data[index] = old | flag; + return ((old & flag) != 0) ? 1 : 0; + } +@@ -96,8 +96,8 @@ + inline void ArrOfBit::clearbit(entier e) const + { + assert(e >= 0 && e < taille); +- unsigned int i = (unsigned int) e; +- unsigned int flag = 1 << (i & DRAPEAUX_INT); ++ unsigned long i = (unsigned long) e; ++ unsigned long flag = 1 << (i & DRAPEAUX_INT); + data[i >> SIZE_OF_INT_BITS] &= ~flag; + } + +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfDouble.C ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfDouble.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfDouble.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfDouble.C 2020-12-22 12:06:26.189148420 +0100 +@@ -210,7 +210,7 @@ + // Description: + // Un nouveau tableau utilise cette zone memoire : + // incremente ref_count +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier VDoubledata::add_one_ref() + { +@@ -222,7 +222,7 @@ + // decremente ref_count + // Precondition: + // ref_count_ > 0 +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier VDoubledata::suppr_one_ref() + { +@@ -651,7 +651,7 @@ + // Precondition: + // Parametre: const ArrOfDouble& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du min + entier imin_array(const ArrOfDouble& dx) + { +@@ -679,7 +679,7 @@ + // Precondition: + // Parametre: const ArrOfDouble& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du max + entier imax_array(const ArrOfDouble& dx) + { +@@ -834,7 +834,7 @@ + // * annule p_, data_ et size_array_ + // Si le tableau est "ref_data" : + // * annule data_ et size_array_ +-// Retour: int ++// Retour: long + // Signification: 1 si les donnees du tableau ont ete supprimees + // Precondition: + // Postcondition: +@@ -965,7 +965,7 @@ + // Description: + // Retourne le nombre de references des donnees du tableau + // si le tableau est "normal", -1 s'il est "detache" ou "ref_data" +-// Retour: int ++// Retour: long + // Signification: ref_count_ + entier ArrOfDouble::ref_count() const + { +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfFloat.C ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfFloat.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfFloat.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfFloat.C 2020-12-22 12:06:26.190148418 +0100 +@@ -210,7 +210,7 @@ + // Description: + // Un nouveau tableau utilise cette zone memoire : + // incremente ref_count +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier VFloatdata::add_one_ref() + { +@@ -222,7 +222,7 @@ + // decremente ref_count + // Precondition: + // ref_count_ > 0 +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier VFloatdata::suppr_one_ref() + { +@@ -651,7 +651,7 @@ + // Precondition: + // Parametre: const ArrOfFloat& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du min + entier imin_array(const ArrOfFloat& dx) + { +@@ -679,7 +679,7 @@ + // Precondition: + // Parametre: const ArrOfFloat& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du max + entier imax_array(const ArrOfFloat& dx) + { +@@ -834,7 +834,7 @@ + // * annule p_, data_ et size_array_ + // Si le tableau est "ref_data" : + // * annule data_ et size_array_ +-// Retour: int ++// Retour: long + // Signification: 1 si les donnees du tableau ont ete supprimees + // Precondition: + // Postcondition: +@@ -965,7 +965,7 @@ + // Description: + // Retourne le nombre de references des donnees du tableau + // si le tableau est "normal", -1 s'il est "detache" ou "ref_data" +-// Retour: int ++// Retour: long + // Signification: ref_count_ + entier ArrOfFloat::ref_count() const + { +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfInt.C ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfInt.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOfInt.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOfInt.C 2020-12-22 12:06:26.190148418 +0100 +@@ -211,7 +211,7 @@ + // Description: + // Un nouveau tableau utilise cette zone memoire : + // incremente ref_count +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier VIntdata::add_one_ref() + { +@@ -223,7 +223,7 @@ + // decremente ref_count + // Precondition: + // ref_count_ > 0 +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier VIntdata::suppr_one_ref() + { +@@ -646,7 +646,7 @@ + // Precondition: + // Parametre: const ArrOfInt& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du min + entier imin_array(const ArrOfInt& dx) + { +@@ -674,7 +674,7 @@ + // Precondition: + // Parametre: const ArrOfInt& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du max + entier imax_array(const ArrOfInt& dx) + { +@@ -824,7 +824,7 @@ + // * annule p_, data_ et size_array_ + // Si le tableau est "ref_data" : + // * annule data_ et size_array_ +-// Retour: int ++// Retour: long + // Signification: 1 si les donnees du tableau ont ete supprimees + // Precondition: + // Postcondition: +@@ -955,7 +955,7 @@ + // Description: + // Retourne le nombre de references des donnees du tableau + // si le tableau est "normal", -1 s'il est "detache" ou "ref_data" +-// Retour: int ++// Retour: long + // Signification: ref_count_ + entier ArrOfInt::ref_count() const + { +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOf_Scalar_Prototype.cpp.h ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOf_Scalar_Prototype.cpp.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/ArrOf_Scalar_Prototype.cpp.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/ArrOf_Scalar_Prototype.cpp.h 2020-12-22 12:06:26.191148416 +0100 +@@ -182,7 +182,7 @@ + // Description: + // Un nouveau tableau utilise cette zone memoire : + // incremente ref_count +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier V__Scalar__data::add_one_ref() + { +@@ -194,7 +194,7 @@ + // decremente ref_count + // Precondition: + // ref_count_ > 0 +-// Retour: int ++// Retour: long + // Signification: ref_count + inline entier V__Scalar__data::suppr_one_ref() + { +@@ -628,7 +628,7 @@ + // Precondition: + // Parametre: const ArrOf__Scalar__& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du min + entier imin_array(const ArrOf__Scalar__& dx) + { +@@ -656,7 +656,7 @@ + // Precondition: + // Parametre: const ArrOf__Scalar__& dx + // Signification: tableau a utiliser +-// Retour: int ++// Retour: long + // Signification: indice du max + entier imax_array(const ArrOf__Scalar__& dx) + { +@@ -726,7 +726,7 @@ + // Description: + // Fonction de comparaison utilisee pour trier le tableau + // dans ArrOf__Scalar__::trier(). Voir man qsort +-static int fonction_compare_arrof__scalar___ordonner(const void * data1, const void * data2) ++static long fonction_compare_arrof__scalar___ordonner(const void * data1, const void * data2) + { + const __scalar__ x = *(const __scalar__*)data1; + const __scalar__ y = *(const __scalar__*)data2; +@@ -816,7 +816,7 @@ + // * annule p_, data_ et size_array_ + // Si le tableau est "ref_data" : + // * annule data_ et size_array_ +-// Retour: int ++// Retour: long + // Signification: 1 si les donnees du tableau ont ete supprimees + // Precondition: + // Postcondition: +@@ -947,7 +947,7 @@ + // Description: + // Retourne le nombre de references des donnees du tableau + // si le tableau est "normal", -1 s'il est "detache" ou "ref_data" +-// Retour: int ++// Retour: long + // Signification: ref_count_ + entier ArrOf__Scalar__::ref_count() const + { +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/EFichier.h ParaView/Utilities/VisItBridge/databases/readers/Lata/EFichier.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/EFichier.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/EFichier.h 2020-12-22 12:06:26.191148416 +0100 +@@ -33,7 +33,7 @@ + class EFichier : public Entree + { + public: +- int ouvrir(const char *name) ++ long ouvrir(const char *name) + { + is_.open(name); + return is_.good(); +@@ -42,11 +42,11 @@ + { + return is_; + } +- int eof() ++ long eof() + { + return is_.eof(); + } +- int good() ++ long good() + { + return is_.good(); + } +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Entree.h ParaView/Utilities/VisItBridge/databases/readers/Lata/Entree.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Entree.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/Entree.h 2020-12-22 12:06:26.191148416 +0100 +@@ -37,8 +37,8 @@ + { + public: + virtual operator std::istream& () = 0; +- virtual int eof() = 0; +- virtual int good() = 0; ++ virtual long eof() = 0; ++ virtual long good() = 0; + virtual ~Entree() {}; + virtual std::istream& get_istream() = 0; + }; +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataDB.C ParaView/Utilities/VisItBridge/databases/readers/Lata/LataDB.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataDB.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataDB.C 2020-12-22 12:06:26.192148414 +0100 +@@ -49,8 +49,8 @@ + // Dump detailed subbloc interpretation at level+1 + #define verb_level_data_bloc 5 + +-typedef int LataDBInt32; +-typedef long long int LataDBInt64; ++typedef long LataDBInt32; ++typedef long long LataDBInt64; + + void arch_check() + { +@@ -106,7 +106,7 @@ + field_name_ = n; + } + +-int Field_UName::operator==(const Field_UName & f) const ++long Field_UName::operator==(const Field_UName & f) const + { + return (geometry_ == f.geometry_) && (field_name_ == f.field_name_) && (loc_ == f.loc_); + } +@@ -291,7 +291,7 @@ + else + { + if (msb_ != LataDBDataType::machine_msb_) { +- Journal() << "LataDB LataDataFile::write(int) not coded for reverse binary msb" << endl; ++ Journal() << "LataDB LataDataFile::write(long) not coded for reverse binary msb" << endl; + throw; + } + switch(mode) { +@@ -306,7 +306,7 @@ + } + } + } +- void set_exception(int i) { exception_ = i; } ++ void set_exception(long i) { exception_ = i; } + FileOffset position() { return (*stream_).tellp(); }; + enum SeekType { ABSOLUTE, RELATIVE }; + void seek(FileOffset pos, SeekType seekt) { +@@ -369,7 +369,7 @@ + std::iostream *stream_; // Points to fstream_ or mem_buffer passed to constructor + LataDBDataType::MSB msb_; + LataDBDataType::Type type_; +- int exception_; ++ long exception_; + }; + + void LataDataFile::read(LataDBInt32 *ptr, BigEntier n) +@@ -381,9 +381,9 @@ + if (msb_ == LataDBDataType::ASCII) { + BigEntier i; + if (ptr) +- Journal(verb_level_data_bloc+1) << "Reading ascii int data bloc size=" << n << endl; ++ Journal(verb_level_data_bloc+1) << "Reading ascii long data bloc size=" << n << endl; + else +- Journal(verb_level_data_bloc+1) << "Skipping ascii int data bloc size=" << n << endl; ++ Journal(verb_level_data_bloc+1) << "Skipping ascii long data bloc size=" << n << endl; + LataDBInt32 toto; + for (i = 0; i < n; i++) { + if (ptr) +@@ -397,15 +397,15 @@ + } + } + } else { +- if (type_ != LataDBDataType::INT32) { ++ if ((type_ != LataDBDataType::INT64) && (type_ != LataDBDataType::INT32)) { + Journal() << "Internal error in LataDB.cpp LataDataFile::read(LataDBInt32) : size conversion not coded" << endl; + throw; + } + if (ptr) { +- Journal(verb_level_data_bloc+1) << "Reading binary int data bloc size=" << n << endl; ++ Journal(verb_level_data_bloc+1) << "Reading binary long data bloc size=" << n << endl; + (*stream_).read((char*)ptr, n * sizeof(LataDBInt32)); + } else { +- Journal(verb_level_data_bloc+1) << "Skipping binary int data bloc size=" << n << endl; ++ Journal(verb_level_data_bloc+1) << "Skipping binary long data bloc size=" << n << endl; + seek(n * sizeof(LataDBInt32), RELATIVE); + } + if (exception_ && !(*stream_).good()) { +@@ -468,7 +468,7 @@ + + void LataDataFile::write(const LataDBInt32 *ptr, BigEntier n, BigEntier columns) + { +- Journal(verb_level_data_bloc+1) << "Writing int data bloc size=" << n << endl; ++ Journal(verb_level_data_bloc+1) << "Writing long data bloc size=" << n << endl; + if (type_ != LataDBDataType::INT32) { + Journal() << "Error in lataDB bloc write: trying to write integer data to non integer file block" << endl; + throw LataDBError(LataDBError::DATA_ERROR); +@@ -482,7 +482,7 @@ + } + } else { + if (msb_ != LataDBDataType::machine_msb_) { +- Journal() << "LataDB LataDataFile::write(int) not coded for reverse binary msb" << endl; ++ Journal() << "LataDB LataDataFile::write(long) not coded for reverse binary msb" << endl; + throw; + // Put code here (and test !) to reverse bytes in the binary bloc: + } +@@ -490,7 +490,7 @@ + } + (*stream_).seekg(0, std::ios::end); + if (exception_ && !(*stream_).good()) { +- Journal() << "Error writing file " << fname_ << " int[" << n << "]" ++ Journal() << "Error writing file " << fname_ << " long[" << n << "]" + << endl << message_ << endl; + throw LataDBError(LataDBError::DATA_ERROR); + } +@@ -533,7 +533,7 @@ + return; + f.set_err_message("Error reading fortran blocsize"); + f.set_encoding(type.msb_, type.bloc_marker_type_); +- int i; ++ long i; + f >> i; + Journal(verb_level_data_bloc+1) << "Skipping blocsize marker value=" << i << endl; + } +@@ -567,7 +567,8 @@ + { + f.set_encoding(msb, type); + switch(type) { +- case LataDBDataType::INT32: f.read((LataDBInt32*) 0, size); break; ++ case LataDBDataType::INT32: ++ case LataDBDataType::INT64: f.read((LataDBInt32*) 0, size); break; + case LataDBDataType::REAL32: f.read((float*) 0, size); break; + default: + Journal() << "Internal error: bloc read skip not code for this type" << endl; +@@ -592,14 +593,14 @@ + } + + void bloc_write(LataDataFile & f, LataDBDataType::MSB msb, LataDBDataType::Type type, +- const ArrOfInt & tab, int columns) ++ const ArrOfInt & tab, long columns) + { + f.set_encoding(msb, type); + f.write(tab.addr(), tab.size_array(), columns); + } + + void bloc_write(LataDataFile & f, LataDBDataType::MSB msb, LataDBDataType::Type type, +- const ArrOfFloat & tab, int columns) ++ const ArrOfFloat & tab, long columns) + { + f.set_encoding(msb, type); + f.write(tab.addr(), tab.size_array(), columns); +@@ -812,7 +813,7 @@ + param = strtoll(s, &errorptr, 0 /* base 10 par defaut */); + if (errno || *errorptr != 0) { + Journal() << "LataDB::read_master_file error: " << err_msg << endl +- << "Error converting a string to type long int : string = " << s << endl; ++ << "Error converting a string to type long long : string = " << s << endl; + throw(LataDBError(LataDBError::READ_ERROR)); + } + } +@@ -852,10 +853,10 @@ + + a faire extraire pour de vrai les differents mots de motlu + Nom motlu2(tmp); +- int nb_comp=1; ++ long nb_comp=1; + { + const char *s = tmp; +- int p=0; ++ long p=0; + while ( ((*s) != 0)) + { + if ((*s) == (',')) +@@ -872,10 +873,10 @@ + param=Noms(nb_comp); + { + const char *s=motlu2; +- for (int i=0;i data stored in the LataDB memory buffer. + Nom filename_; +@@ -239,7 +239,7 @@ + // Third line in the .lata file + Nom software_id_; + +- LataDBDataType default_type_float() const; // Everything same as int, but type_=default_float_type_ ++ LataDBDataType default_type_float() const; // Everything same as long, but type_=default_float_type_ + LataDBDataType default_type_int_; + LataDBDataType::Type default_float_type_; + +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataDBmed.h ParaView/Utilities/VisItBridge/databases/readers/Lata/LataDBmed.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataDBmed.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataDBmed.h 2020-12-22 12:06:26.193148412 +0100 +@@ -81,7 +81,7 @@ + case MED_SEG2: + type_elem="Segment"; break; + default: +- Cerr<<"type_geo " << (int)type_geo <<" is not a supported element."<& NIJK) ++void latadb_get_info_mesh_med(const char* filename,const char* meshname,med_geometry_type& type_geo,long& ncells,long& nnodes,long& spacedim, long &nbcomp,long& is_structured, std::vector& NIJK) + { + is_structured=0; +- int meshDim, i; ++ long meshDim, i; + try { +- std::vector< std::vector< std::pair > > res = MEDCoupling::GetUMeshGlobalInfo(filename, meshname, meshDim, spacedim, nnodes); ++ std::vector< std::vector< std::pair > > res = MEDCoupling::GetUMeshGlobalInfo(filename, meshname, meshDim, spacedim, nnodes); + + + // on prend que la dimension la plus grande et on verifie que l'on a qu'un type elt +@@ -154,7 +154,7 @@ + //on est force de lire le maillage pour avoir le bon nombre de cellules + MEDCoupling::MEDCouplingUMesh * mesh= MEDCoupling::ReadUMeshFromFile(filename,meshname); + ncells = mesh->getNumberOfCells(); +- const int *idx = mesh->getNodalConnectivityIndex()->getConstPointer(); ++ const long *idx = mesh->getNodalConnectivityIndex()->getConstPointer(); + for (i = 0, nbcomp = 0; i < ncells; i++) if (nbcomp < idx[i + 1] - idx[i] - 1) nbcomp = idx[i + 1] - idx[i] - 1; + mesh->decrRef(); + } +@@ -166,7 +166,7 @@ + // No UMesh try CMesh + MEDCoupling::MEDCouplingMesh* mesh= MEDCoupling::ReadMeshFromFile(filename, meshname); + /* +- type_geo,int& ncells,int& nnodes,int& spacedim, int &nbcomp ++ type_geo,long& ncells,long& nnodes,long& spacedim, long &nbcomp + */ + MEDCoupling::MEDCouplingCMesh* cmesh = dynamic_cast(mesh); + spacedim=cmesh-> getSpaceDimension() ; +@@ -229,17 +229,17 @@ + + vector times; + LataDBTimestep table; +- int first=1; ++ long first=1; + +- for (int i=0;i NIJK; ++ long ncells,nnodes,spacedim, nbcomp; ++ long is_structured; ++ std::vector NIJK; + latadb_get_info_mesh_med(filename,geoms[i].c_str(),type_geo,ncells,nnodes,spacedim,nbcomp,is_structured,NIJK); + + dom.elem_type_=latadb_name_from_type_geo(type_geo); +@@ -261,7 +261,7 @@ + elem.size_=ncells; + elem.datatype_ = default_type_float(); // ?? + +- int dim,ff,ef; ++ long dim,ff,ef; + get_element_data(dom.elem_type_, dim, elem.nb_comp_, ff, ef); + if (elem.nb_comp_ == -1) elem.nb_comp_ = nbcomp; + +@@ -310,7 +310,7 @@ + fields= MEDCoupling::GetAllFieldNamesOnMesh(filename,dom.name_.getString()); + + +- for (int i=0;i ltypes=MEDCoupling::GetTypesOfField(filename,meshname.getString(),fields[i].c_str()); + //if (ltypes.size()!=1) throw; +- for (int t=0;t1) + { +- vector > iters= MEDCoupling::GetFieldIterations(ltypes[t],filename,meshname.getString(),fields[i].c_str()); +- for (int iter=0;iter > iters= MEDCoupling::GetFieldIterations(ltypes[t],filename,meshname.getString(),fields[i].c_str()); ++ for (long iter=0;iter,double> > vtimes=MEDCoupling::GetAllFieldIterations(filename,/*meshname,*/fields[i].c_str()); +- for (int it=0;it,double> > vtimes=MEDCoupling::GetAllFieldIterations(filename,/*meshname,*/fields[i].c_str()); ++ for (long it=0;it0) +- for (int i=0;igetCoords(); + data->resize(fld.size_,fld.nb_comp_); +- for (int i=0;igetIJ(i,j); + } +@@ -468,15 +468,15 @@ + ArrOfInt filter=renum_conn(type); + MEDCoupling::MEDCouplingUMesh * mesh= MEDCoupling::ReadUMeshFromFile(fld.filename_.getString(),fld.geometry_.getString()); + const MEDCoupling::DataArrayInt *elems = mesh->getNodalConnectivity(), *idx = mesh->getNodalConnectivityIndex(); +- const int *ptr_elems=elems->getConstPointer(), *ptr_idx = idx->getConstPointer(); ++ const long *ptr_elems=elems->getConstPointer(), *ptr_idx = idx->getConstPointer(); + data->resize(fld.size_,fld.nb_comp_); +- int compt=0; +- for (int i=0;i0 ? filter[j] : j) = reel ? ptr_elems[compt] + 1 : 0; + compt += reel; + } +@@ -488,7 +488,7 @@ + MEDCoupling::MEDCouplingMesh * mesh= MEDCoupling::ReadMeshFromFile(fld.filename_.getString(),fld.geometry_.getString()); + data->resize(fld.size_,fld.nb_comp_); + MEDCoupling::MEDCouplingCMesh* cmesh = dynamic_cast(mesh); +- int dir; ++ long dir; + if (fld.name_=="SOMMETS_IJK_I") + dir=0; + else if (fld.name_=="SOMMETS_IJK_J") +@@ -498,8 +498,8 @@ + else + abort(); + const MEDCoupling::DataArrayDouble* coords=cmesh->getCoordsAt(dir); +- for (int i=0;igetIJ(i,j); + } +@@ -519,11 +519,11 @@ + fieldname+="_"; + fieldname+=fld.geometry_; + +- int ok=0; ++ long ok=0; + + vector fields= MEDCoupling::GetAllFieldNamesOnMesh(fld.filename_.getString(),fld.geometry_.getString()); + +- for (int f=0;f,double> > vtimes=MEDCoupling::GetAllFieldIterations(fld.filename_.getString(),fieldname.getString()); ++ vector,double> > vtimes=MEDCoupling::GetAllFieldIterations(fld.filename_.getString(),fieldname.getString()); + +- int it=fld.timestep_-1; +- pair iter(fld.timestep_-1,-1); ++ long it=fld.timestep_-1; ++ pair iter(fld.timestep_-1,-1); + if (fld.timestep_==1) it=0; + //Cerr<getNumberOfComponents()==fld.nb_comp_); + const double* ptr=values->getConstPointer(); +- for (int i=0;i0) + { + const Nom& name= data.displayed_name_; +@@ -990,17 +990,17 @@ + + void LataOptions::extract_path_basename(const char * s, Nom & path_prefix, Nom & basename) + { +- int i; +- for (i=(int)strlen(s)-1;i>=0;i--) ++ long i; ++ for (i=(long)strlen(s)-1;i>=0;i--) + if ((s[i]==PATH_SEPARATOR) ||(s[i]=='\\')) + break; + path_prefix = ""; +- int j; ++ long j; + for (j = 0; j <= i; j++) + path_prefix += Nom(s[j]); + + // Parse basename : if extension given, remove it +- int n = (int)strlen(s); ++ long n = (long)strlen(s); + if (n > 5 && strcmp(s+n-5,".lata") == 0) + n -= 5; + basename = ""; +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataFilter.h ParaView/Utilities/VisItBridge/databases/readers/Lata/LataFilter.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataFilter.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataFilter.h 2020-12-22 12:06:26.194148410 +0100 +@@ -62,19 +62,19 @@ + + bool reconnect; // Do we want to reconnect multiblock meshes + float reconnect_tolerance; +- int regularize_polyedre ; // if 1 Treate polyedre as poyledre extruder +- int regularize; // Do we want to force regularize the domain ie convert the mesh to a structured ijk (not necessary except for dual-mesh vdf) ++ long regularize_polyedre ; // if 1 Treate polyedre as poyledre extruder ++ long regularize; // Do we want to force regularize the domain ie convert the mesh to a structured ijk (not necessary except for dual-mesh vdf) + // special value 2 means "regularize if faces present and vdf" +- int extend_domain; // Extend the regularized domaine by n layers of cells ++ long extend_domain; // Extend the regularized domaine by n layers of cells + float regularize_tolerance; + bool invalidate; // invalidate unused positions and connections; + bool load_virtual_elements; // Do we want to extend the loaded mesh subblocks with a layer of virtual elements + bool export_fields_at_faces_; // Should we show these fields in exportable fields + + // When loading ijk regular meshes, virtually create this number of blocks in the K direction: +- int ijk_mesh_nb_parts_; ++ long ijk_mesh_nb_parts_; + // When loading ijk regular meshes, merge N layers of virtual elements (default=1) +- int ijk_virt_layer; ++ long ijk_virt_layer; + + bool user_fields_; //activate user fields ? + +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataStructures.C ParaView/Utilities/VisItBridge/databases/readers/Lata/LataStructures.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataStructures.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataStructures.C 2020-12-22 12:06:26.194148410 +0100 +@@ -41,7 +41,7 @@ + case LataField_base::ELEM: n = nb_elements(); break; + case LataField_base::FACES: n = nb_faces(); break; + default: +- Journal() << "Invalid localisation " << (int) loc << " in Domain::nb_items" << endl; ++ Journal() << "Invalid localisation " << (long) loc << " in Domain::nb_items" << endl; + throw; + } + return n; +@@ -58,11 +58,11 @@ + case LataField_base::ELEM: n = decal_elements_lata_; break; + case LataField_base::FACES: n = decal_faces_lata_; break; + default: +- Journal() << "Invalid localisation " << (int) loc << " in Domain::lata_block_offset" << endl; ++ Journal() << "Invalid localisation " << (long) loc << " in Domain::lata_block_offset" << endl; + throw; + } + if (n < 0) { +- Journal() << "Error: lata_block_offset not set for localisation " << (int) loc << endl; ++ Journal() << "Error: lata_block_offset not set for localisation " << (long) loc << endl; + throw; + } + return n; +@@ -76,7 +76,7 @@ + case LataField_base::ELEM: decal_elements_lata_ = n; break; + case LataField_base::FACES: decal_faces_lata_ = n; break; + default: +- Journal() << "Invalid localisation " << (int) loc << " in Domain::set_lata_block_offset" << endl; ++ Journal() << "Invalid localisation " << (long) loc << " in Domain::set_lata_block_offset" << endl; + throw; + } + } +@@ -89,11 +89,11 @@ + const entier nb_som_elem = elements_.dimension(1); + const double facteur = 1. / (double) nb_som_elem; + double tmp[3]; +- for (int i = 0; i < nb_elem; i++) { +- int j, k; ++ for (long i = 0; i < nb_elem; i++) { ++ long j, k; + tmp[0] = tmp[1] = tmp[2] = 0.; + for (j = 0; j < nb_som_elem; j++) { +- int som = elements_(i, j); ++ long som = elements_(i, j); + for (k = 0; k < loop_max(dim, 3); k++) { + tmp[k] += nodes_(som, k); + break_loop(k, dim); +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataStructures.h ParaView/Utilities/VisItBridge/databases/readers/Lata/LataStructures.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataStructures.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataStructures.h 2020-12-22 12:06:26.194148410 +0100 +@@ -43,14 +43,14 @@ + class Domain_Id + { + public: +- Domain_Id(const char * name = "??", int t = 0, int block = -1) : ++ Domain_Id(const char * name = "??", long t = 0, long block = -1) : + name_(name), timestep_(t), block_(block) {}; + // Domain name + Nom name_; + // At which timestep (needed for dynamic domains) +- int timestep_; ++ long timestep_; + // Which block of the parallel computation ? -1 => all blocks +- int block_; ++ long block_; + }; + + // Description: Field_Id is what you need to identify the content of a +@@ -60,11 +60,11 @@ + { + public: + Field_Id() : timestep_(0) {}; +- Field_Id(const Field_UName & uname, int timestep, int block) : ++ Field_Id(const Field_UName & uname, long timestep, long block) : + timestep_(timestep), block_(block), uname_(uname) {}; + +- int timestep_; +- int block_; ++ long timestep_; ++ long block_; + Field_UName uname_; + + operator Domain_Id() const { return Domain_Id(uname_.get_geometry(), timestep_, block_); } +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Lata_tools.C ParaView/Utilities/VisItBridge/databases/readers/Lata/Lata_tools.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Lata_tools.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/Lata_tools.C 2020-12-22 12:06:26.194148410 +0100 +@@ -36,7 +36,7 @@ + #include + #include + +-static int journal_level = 0; ++static long journal_level = 0; + + void set_Journal_level(entier level) + { +@@ -89,17 +89,17 @@ + + BigEntier memory_size(const ArrOfBit & tab) + { +- return ((BigEntier)sizeof(tab)) + ((BigEntier)tab.size_array()) * sizeof(int) / 32; ++ return ((BigEntier)sizeof(tab)) + ((BigEntier)tab.size_array()) * sizeof(long) / 32; + } + + void split_path_filename(const char *s, Nom & path, Nom & filename) + { +- int i; +- for (i=(int)strlen(s)-1;i>=0;i--) ++ long i; ++ for (i=(long)strlen(s)-1;i>=0;i--) + if ((s[i]==PATH_SEPARATOR) || (s[i]=='\\')) + break; + path = ""; +- int j; ++ long j; + for (j = 0; j <= i; j++) + path += Nom(s[j]); + +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.C ParaView/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.C 2020-12-22 12:06:26.195148408 +0100 +@@ -32,7 +32,7 @@ + + typedef struct { + const char * name; +- int shape; // Vector size (-1 => dimension of the problem) ++ long shape; // Vector size (-1 => dimension of the problem) + } StdComponents; + + // COMPOSANTES EN MAJUSCULES !!!!! +@@ -72,7 +72,7 @@ + // Empty label means end of the table + }; + +-int latav1_component_shape(const Motcle & compo) ++long latav1_component_shape(const Motcle & compo) + { + entier i = 0; + while (std_components[i].name[0] != 0) { +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.h ParaView/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataV1_field_definitions.h 2020-12-22 12:06:26.195148408 +0100 +@@ -32,4 +32,4 @@ + // (separated from LataDB.cpp so that changes in this file are + // easily identified) + class Motcle; +-int latav1_component_shape(const Motcle & compo); ++long latav1_component_shape(const Motcle & compo); +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataVector.h ParaView/Utilities/VisItBridge/databases/readers/Lata/LataVector.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/LataVector.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/LataVector.h 2020-12-22 12:06:26.195148408 +0100 +@@ -41,19 +41,19 @@ + LataVector(const LataVector & x) : n_(0), data_(0) { operator=(x); } + LataVector(entier n) : n_(0), data_(0) { for (entier i=0; i=0 && i=0 && i & operator=(const LataVector & x) { reset(); for (int i=0; i & operator=(const LataVector & x) { reset(); for (long i=0; i> sommets.nb_comp_; + { +- int tmp; ++ long tmp; + is >> tmp; + sommets.size_ = tmp; // size_ est long long... + } +@@ -160,12 +160,12 @@ + throw; + } + { +- int tmp; ++ long tmp; + is >> tmp; // size_ est long long... + elements.size_ = tmp; + } + is >> motlu; +- int borne_index_min=0; ++ long borne_index_min=0; + if (motlu == "TETRA4") { + lata_db.set_elemtype(tstep, elements.geometry_, "TETRAEDRE"); + elements.nb_comp_ = 4; +@@ -229,7 +229,7 @@ + if (data_filename) + lata_db.write_data(tstep, elements.uname_, elems); + } else if (motlu == "FACE") { +- int n; ++ long n; + is >> n; + if (!is.good()) + throw LataDBError(LataDBError::READ_ERROR); +@@ -291,7 +291,7 @@ + if (!is.good()) + throw LataDBError(LataDBError::READ_ERROR); + { +- int tmp; ++ long tmp; + is >> tmp; + field.size_ = tmp; // long long convert + } +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Motcle.C ParaView/Utilities/VisItBridge/databases/readers/Lata/Motcle.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Motcle.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/Motcle.C 2020-12-22 12:06:26.196148405 +0100 +@@ -34,8 +34,8 @@ + #include + Nom& Nom::majuscule() + { +- const int n = longueur()-1; +- for (int i = 0; i < n; i++) ++ const long n = longueur()-1; ++ for (long i = 0; i < n; i++) + { + char c = s_[i]; + if (c >= 'a' && c <= 'z') +@@ -54,7 +54,7 @@ + + // opt=0 => comparaison des chaines completes + // opt=1 => le debut de n1 doit etre egal a n2 +-int Motcle::strcmp_uppercase(const char *n1, const char *n2, int opt) ++long Motcle::strcmp_uppercase(const char *n1, const char *n2, long opt) + { + entier i = 0; + unsigned char c1, c2; +@@ -76,17 +76,17 @@ + return delta; + } + +-int Nom::debute_par(const char * s) const ++long Nom::debute_par(const char * s) const + { +- const int l1 = longueur()-1; +- const int l2 = (int)strlen(s); ++ const long l1 = longueur()-1; ++ const long l2 = (long)strlen(s); + return (l1>=l2) ? (strncmp(s_.c_str(), s, l2) == 0) : 0; + } + +-int Nom::finit_par(const char * s) const ++long Nom::finit_par(const char * s) const + { +- const int l1 = longueur()-1; +- const int l2 = (int)strlen(s); ++ const long l1 = longueur()-1; ++ const long l2 = (long)strlen(s); + return (l1>=l2) ? (strncmp(s_.c_str()+(l1-l2), s, l2) == 0) : 0; + } + +@@ -107,15 +107,15 @@ + return *this; + } + +-int Motcle::debute_par(const char * s) const ++long Motcle::debute_par(const char * s) const + { + return (strcmp_uppercase(s_.c_str(), s, 1) == 0); + } + +-int Motcle::finit_par(const char * s) const ++long Motcle::finit_par(const char * s) const + { +- const int l1 = longueur()-1; +- const int l2 = (int)strlen(s); ++ const long l1 = longueur()-1; ++ const long l2 = (long)strlen(s); + return (l1>=l2) ? (strcmp_uppercase(s_.c_str()+(l1-l2), s) == 0) : 0; + } + +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Motcle.h ParaView/Utilities/VisItBridge/databases/readers/Lata/Motcle.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/Motcle.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/Motcle.h 2020-12-22 12:06:26.196148405 +0100 +@@ -61,7 +61,7 @@ + { + s_ = c; + }; +- Nom(int i) ++ Nom(long i) + { + char s[30]; + sprintf(s, "%d", i); +@@ -88,11 +88,11 @@ + { + os << s_; + } +- virtual int operator==(const char * s) const ++ virtual long operator==(const char * s) const + { + return (s_ == s); + } +- virtual int operator!=(const char * s) const ++ virtual long operator!=(const char * s) const + { + return !operator==(s); + } +@@ -102,8 +102,8 @@ + return *this; + } + virtual entier find(const char * n) const; +- virtual int debute_par(const char * s) const; +- virtual int finit_par(const char * s) const; ++ virtual long debute_par(const char * s) const; ++ virtual long finit_par(const char * s) const; + virtual Nom& prefix(const char * s); + Nom& majuscule(); + protected: +@@ -118,11 +118,11 @@ + Motcle(const char * s) : Nom(s) {}; + Motcle(const Nom& n) : Nom(n) {}; + ~Motcle() {}; +- int operator==(const char * s) const ++ long operator==(const char * s) const + { + return (strcmp_uppercase(s_.c_str(), s) == 0); + } +- int operator!=(const char * s) const ++ long operator!=(const char * s) const + { + return !operator==(s); + } +@@ -131,10 +131,10 @@ + s_ += n; + return *this; + } +- int debute_par(const char * s) const; +- int finit_par(const char * s) const; ++ long debute_par(const char * s) const; ++ long finit_par(const char * s) const; + +- static int strcmp_uppercase(const char * s1, const char * s2, int opt = 0); ++ static long strcmp_uppercase(const char * s1, const char * s2, long opt = 0); + virtual entier find(const char * n) const + { + return Nom(*this).majuscule().find(Nom(n).majuscule()); +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.C ParaView/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.C 2020-12-22 12:06:26.196148405 +0100 +@@ -39,14 +39,14 @@ + { + public: + DX_stream() : os_to_cout_(0), os_(0) {}; +- void init_cout(int is_ascii) ++ void init_cout(long is_ascii) + { + reset(); + os_to_cout_ = 1; + ascii_ = is_ascii; + os_ = &std::cout; + } +- void init_file(const char *fname, int is_ascii) ++ void init_file(const char *fname, long is_ascii) + { + reset(); + os_to_cout_ = 0; +@@ -62,17 +62,17 @@ + os_to_cout_ = 0; + } + DX_stream & operator<<(const float f) { (*os_) << f; return *this; } +- DX_stream & operator<<(const int i) { (*os_) << i; return *this; } ++ DX_stream & operator<<(const long i) { (*os_) << i; return *this; } + DX_stream & operator<<(const char * s) { (*os_) << s; return *this; } + DX_stream & operator<<(DX_stream & f(DX_stream &)) { return f(*this); } + +- void write(char * ptr, int sz) { os_->write(ptr, sz); } ++ void write(char * ptr, long sz) { os_->write(ptr, sz); } + entier ok() { return os_ != 0; } + entier ascii() { return ascii_; } + std::ostream & stream() { return *os_; } + protected: +- int os_to_cout_; +- int ascii_; ++ long os_to_cout_; ++ long ascii_; + std::ostream *os_; + }; + +@@ -82,9 +82,9 @@ + return os; + } + +-void DX_write_vect(DX_stream & os, int dxobject, const ArrOfFloat & v) ++void DX_write_vect(DX_stream & os, long dxobject, const ArrOfFloat & v) + { +- const int places = v.size_array(); ++ const long places = v.size_array(); + os << "object " << dxobject << " class array" << endl; + os << "type float rank 1 shape 1 items " << places << " "; + +@@ -93,16 +93,16 @@ + os.write((char*)v.addr(), sizeof(float) * places); + } else { + os << "ascii data follows" << endl; +- for (int i=0;iinit_cout(ascii); +@@ -174,7 +174,7 @@ + DX_write_vect(*os_, dx_time_index_, t); + } + +-void OpenDXWriter::init_file(double time, Nom & filename_, int ascii) ++void OpenDXWriter::init_file(double time, Nom & filename_, long ascii) + { + reset(); + os_->init_file(filename_, ascii); +@@ -319,7 +319,7 @@ + components_names_.add(n); + } + +-entier OpenDXWriter::finish(int force_group) ++entier OpenDXWriter::finish(long force_group) + { + DX_stream & os = *os_; + finish_geometry(); +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.h ParaView/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.h +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.h 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/OpenDXWriter.h 2020-12-22 12:06:26.197148403 +0100 +@@ -48,32 +48,32 @@ + public: + OpenDXWriter(); + ~OpenDXWriter(); +- void init_cout(double time, int ascii = 0); +- void init_file(double time, Nom & filename_, int ascii = 0); ++ void init_cout(double time, long ascii = 0); ++ void init_file(double time, Nom & filename_, long ascii = 0); + + void write_geometry(const Domain & dom); + void write_component(const LataField_base & field); + +- entier finish(int force_group = 0); ++ entier finish(long force_group = 0); + enum DXErrors { DXInternalError }; + protected: + void reset(); + void finish_geometry(); + +- int dx_time_index_; +- int index_counter_; ++ long dx_time_index_; ++ long index_counter_; + // Indexes of all DXfield objects in the file (to build the final group) + ArrOfInt fields_indexes_; + // Names of the DXfields: + Noms fields_names_; + + // Index of the nodes array of the last geometry +- int nodes_index_; ++ long nodes_index_; + // Index of the elements array of the last geometry +- int elements_index_; ++ long elements_index_; + // Index of these arrays: +- int invalid_positions_; +- int invalid_connections_; ++ long invalid_positions_; ++ long invalid_connections_; + // Indexes of the components associated with the last geometry + ArrOfInt components_indexes_; + Noms components_names_; +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorBoundary.C ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorBoundary.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorBoundary.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorBoundary.C 2020-12-22 12:06:26.197148403 +0100 +@@ -50,7 +50,7 @@ + { 2, 3, 6, 7 }, + { 4, 5, 6, 7 } }; + +- int i, j; ++ long i, j; + switch(elt_type) { + case Domain::tetra: + ref_elem_face.resize(4,3); +@@ -95,8 +95,8 @@ + op.src_element_.set_smart_resize(1); + op.src_face_.set_smart_resize(1); + op.src_nodes_.set_smart_resize(1); +- const int nb_nodes_per_face = element_faces.dimension(1); +- const int nb_faces_per_element = element_faces.dimension(0); ++ const long nb_nodes_per_face = element_faces.dimension(1); ++ const long nb_faces_per_element = element_faces.dimension(0); + + ArrOfInt one_face(nb_nodes_per_face); + ArrOfInt adjacent_elements; +@@ -114,8 +114,8 @@ + for (element_index = 0; element_index < nelem; element_index++) { + for (local_face_index = 0; local_face_index < nb_faces_per_element; local_face_index++) { + for (i = 0; i < nb_nodes_per_face; i++) { +- int local_node = element_faces(local_face_index, i); +- int node = src.elements_(element_index, local_node); ++ long local_node = element_faces(local_face_index, i); ++ long node = src.elements_(element_index, local_node); + one_face[i] = node; + } + find_adjacent_elements(som_elem, one_face, adjacent_elements); +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorDualMesh.C ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorDualMesh.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorDualMesh.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorDualMesh.C 2020-12-22 12:06:26.197148403 +0100 +@@ -41,7 +41,7 @@ + Journal() << "Error in OperatorDualMesh::build_geometry: source domain has no faces data" << endl; + throw; + } +- const int max_nb_som_face = 3; // for tetrahedra ++ const long max_nb_som_face = 3; // for tetrahedra + if (src.elt_type_ != Domain::triangle && src.elt_type_ != Domain::tetra) { + Journal() << "Error in OperatorDualMesh::build_geometry: cannot operate on unstructured mesh with this element type" << endl; + throw; +@@ -63,13 +63,13 @@ + const entier nb_som_face = src.faces_.dimension(1); + const entier nb_som_elem = src.elements_.dimension(1); + dest.elements_.resize(nb_elem * nb_faces_elem, nb_som_elem); +- int index = 0; +- for (int i = 0; i < nb_elem; i++) { +- const int central_node = nb_som + i; +- for (int j = 0; j < nb_faces_elem; j++) { +- const int face = src.elem_faces_(i, j); ++ long index = 0; ++ for (long i = 0; i < nb_elem; i++) { ++ const long central_node = nb_som + i; ++ for (long j = 0; j < nb_faces_elem; j++) { ++ const long face = src.elem_faces_(i, j); + dest.elements_(index, 0) = central_node; +- for (int k = 0; k < loop_max(nb_som_face, max_nb_som_face); k++) { ++ for (long k = 0; k < loop_max(nb_som_face, max_nb_som_face); k++) { + dest.elements_(index, k+1) = src.faces_(face, k); + break_loop(k, nb_som_face); + } +@@ -99,11 +99,11 @@ + const entier nb_face_elem = src_domain.elem_faces_.dimension(1); + const entier nb_comp = src.data_.dimension(1); + dest.data_.resize(nb_elem * nb_face_elem, nb_comp); +- int index = 0; +- for (int i = 0; i < nb_elem; i++) { +- for (int j = 0; j < nb_face_elem; j++) { +- const int face = src_domain.elem_faces_(i, j); +- for (int k = 0; k < nb_comp; k++) ++ long index = 0; ++ for (long i = 0; i < nb_elem; i++) { ++ for (long j = 0; j < nb_face_elem; j++) { ++ const long face = src_domain.elem_faces_(i, j); ++ for (long k = 0; k < nb_comp; k++) + dest.data_(index, k) = src.data_(face, k); + index++; + } +@@ -125,9 +125,9 @@ + for (entier i_dim = 0; i_dim < dim; i_dim++) { + const ArrOfFloat & c1 = src.coord_[i_dim]; + ArrOfFloat & c2 = dest.coord_.add(ArrOfFloat()); +- const int n = c1.size_array() - 1; ++ const long n = c1.size_array() - 1; + c2.resize_array(n*2+1); +- for (int i = 0; i < n; i++) { ++ for (long i = 0; i < n; i++) { + c2[i*2] = c1[i]; + c2[i*2+1] = (c1[i] + c1[i+1]) * 0.5; + } +@@ -137,20 +137,20 @@ + if (src.invalid_connections_.size_array() > 0) { + dest.invalid_connections_.resize_array(dest.nb_elements()); + dest.invalid_connections_ = 0; +- int index = 0; ++ long index = 0; + + const entier ni = dest.coord_[0].size_array()-1; + const entier nj = dest.coord_[1].size_array()-1; + const entier nk = (dim==3) ? (dest.coord_[2].size_array()-1) : 1; + const entier ni_src = src.coord_[0].size_array() - 1; + const entier nj_src = src.coord_[1].size_array() - 1; +- for (int k = 0; k < nk; k++) { +- const int k_src = k / 2; +- for (int j = 0; j < nj; j++) { +- const int j_src = j / 2; +- const int idx_source = (k_src * nj_src + j_src) * ni_src; +- for (int i = 0; i < ni; i++) { +- const int idx = idx_source + i / 2; ++ for (long k = 0; k < nk; k++) { ++ const long k_src = k / 2; ++ for (long j = 0; j < nj; j++) { ++ const long j_src = j / 2; ++ const long idx_source = (k_src * nj_src + j_src) * ni_src; ++ for (long i = 0; i < ni; i++) { ++ const long idx = idx_source + i / 2; + if (src.invalid_connections_[idx]) + dest.invalid_connections_.setbit(index); + index++; +@@ -175,7 +175,7 @@ + dest.localisation_ = LataField_base::ELEM; + dest.nature_ = LataDBField::VECTOR; + const entier dim = src_domain.dimension(); +- int index = 0; ++ long index = 0; + + // Loop on destination elements + const entier ni = dest_domain.coord_[0].size_array()-1; +@@ -184,15 +184,15 @@ + dest.data_.resize(ni*nj*nk, dim); + const entier ni_src = src_domain.coord_[0].size_array(); + const entier nj_ni_src = src_domain.coord_[1].size_array() * ni_src; +- for (int k = 0; k < nk; k++) { +- const int k2 = k/2; +- const int k3 = (k+1)/2; +- for (int j = 0; j < nj; j++) { +- const int j2 = j/2; +- const int j3 = (j+1)/2; +- for (int i = 0; i < ni; i++) { +- const int i2 = i/2; +- const int i3 = (i+1)/2; ++ for (long k = 0; k < nk; k++) { ++ const long k2 = k/2; ++ const long k3 = (k+1)/2; ++ for (long j = 0; j < nj; j++) { ++ const long j2 = j/2; ++ const long j3 = (j+1)/2; ++ for (long i = 0; i < ni; i++) { ++ const long i2 = i/2; ++ const long i3 = (i+1)/2; + dest.data_(index, 0) = src.data_(IJK(i3,j2,k2), 0); + dest.data_(index, 1) = src.data_(IJK(i2,j3,k2), 1); + if (dim==3) +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorFacesMesh.C ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorFacesMesh.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorFacesMesh.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorFacesMesh.C 2020-12-22 12:06:26.197148403 +0100 +@@ -41,7 +41,7 @@ + Journal() << "Error in OperatorFacesMesh::build_geometry: source domain has no faces data" << endl; + throw; + } +- // const int max_nb_som_face = 3; // for tetrahedra ++ // const long max_nb_som_face = 3; // for tetrahedra + if (src.elt_type_ != Domain::triangle && src.elt_type_ != Domain::polygone && src.elt_type_ != Domain::tetra && src.elt_type_ != Domain::polyedre) { + Journal() << "Error in OperatorFacesMesh::build_geometry: cannot operate on unstructured mesh with this element type" << endl; + throw; +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorRegularize.C ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorRegularize.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/OperatorRegularize.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/OperatorRegularize.C 2020-12-22 12:06:26.198148401 +0100 +@@ -32,12 +32,12 @@ + + #define verb_level 4 + +-template int search_in_ordered_vect(T x, const Tab & v, const T epsilon) { ++template long search_in_ordered_vect(T x, const Tab & v, const T epsilon) { + if (!v.size_array()) + return -1; +- int i1=0; +- int i; +- int i2 = (int)v.size_array()-1; ++ long i1=0; ++ long i; ++ long i2 = (long)v.size_array()-1; + while (i1 != i2) { + i = (i1+i2)/2; + if (epsilon+ v[i] < x) +@@ -56,9 +56,9 @@ + template + static void retirer_doublons(Tab & tab, const T epsilon) + { +- int i = 0; +- int j; +- const int n = tab.size_array(); ++ long i = 0; ++ long j; ++ const long n = tab.size_array(); + T last_tab_i = -1e40; + for (j = 0; j < n; j++) { + const T x = tab[j]; +@@ -124,18 +124,18 @@ + throw; + } + } +- int i; ++ long i; + op.renum_nodes_.resize_array(nsom); +- int nb_som_ijk = 1; ++ long nb_som_ijk = 1; + for (i = 0; i < dim; i++) + nb_som_ijk *= nb_som_dir[i]; + IntTab ijk_indexes; + ijk_indexes.resize(nsom, dim); + for (i = 0; i < nsom; i++) { + entier ijk_index = 0; +- for (int j = dim-1; j >= 0; j--) { ++ for (long j = dim-1; j >= 0; j--) { + const double x = src.nodes_(i,j); +- int index = search_in_ordered_vect(x, dest.coord_[j],op.tolerance_); ++ long index = search_in_ordered_vect(x, dest.coord_[j],op.tolerance_); + if (index < 0) { + Journal() << "Error: coordinate (" << i << "," << j << ") = " << x << " not found in regularize" << endl + << "Try reducing regularize tolerance value (option regularize=epsilon)" << endl; +@@ -148,26 +148,26 @@ + } + op.renum_nodes_[i] = ijk_index; + } +- const int max_index = max_array(nb_som_dir); +- int nb_elems_ijk = 1; ++ const long max_index = max_array(nb_som_dir); ++ long nb_elems_ijk = 1; + for (i = 0; i < dim; i++) + nb_elems_ijk *= nb_som_dir[i] - 1; + dest.invalid_connections_.resize_array(nb_elems_ijk); + dest.invalid_connections_ = 1; // Everything invalid by default +- const int nelem = src.elements_.dimension(0); +- const int nb_som_elem = src.elements_.dimension(1); ++ const long nelem = src.elements_.dimension(0); ++ const long nb_som_elem = src.elements_.dimension(1); + op.renum_elements_.resize_array(nelem); + // Pour chaque element, indice dans le maillage ijk du plus sommet le plus proche de l'origine + // (pour les faces...) + ArrOfInt idx_elem_som; + idx_elem_som.resize_array(nelem); +- int min_index[3]; ++ long min_index[3]; + for (i = 0; i < nelem; i++) { + min_index[0] = min_index[1] = min_index[2] = max_index; +- for (int j = 0; j < nb_som_elem; j++) { +- int node = src.elements_(i,j); +- for (int k = 0; k < loop_max(dim, 3); k++) { +- int idx = ijk_indexes(node, k); ++ for (long j = 0; j < nb_som_elem; j++) { ++ long node = src.elements_(i,j); ++ for (long k = 0; k < loop_max(dim, 3); k++) { ++ long idx = ijk_indexes(node, k); + min_index[k] = (idx < min_index[k]) ? idx : min_index[k]; + break_loop(k,dim); + } +@@ -191,10 +191,10 @@ + } + + if (src.faces_ok()) { +- const int nfaces = src.faces_.dimension(0); ++ const long nfaces = src.faces_.dimension(0); + op.renum_faces_.resize_array(nfaces); + op.renum_faces_ = -1; +- const int nb_elem_face = src.elem_faces_.dimension(1); ++ const long nb_elem_face = src.elem_faces_.dimension(1); + ArrOfInt delta_dir(dim); + delta_dir[0] = 1; + for (i = 1; i < dim; i++) +diff -Nur ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/UserFields.C ParaView/Utilities/VisItBridge/databases/readers/Lata/UserFields.C +--- ParaView.orig/Utilities/VisItBridge/databases/readers/Lata/UserFields.C 2020-03-23 22:18:49.000000000 +0100 ++++ ParaView/Utilities/VisItBridge/databases/readers/Lata/UserFields.C 2020-12-22 12:06:26.198148401 +0100 +@@ -346,7 +346,7 @@ + const IntTab & les_elem = dom.elements_; + const entier n = les_elem.dimension(0); + const entier m = les_elem.dimension(1); +- int i, j, k; ++ long i, j, k; + for ( i = 0; i < n; i++) { + for (j = 0; j < m; j++) { + entier som = les_elem(i,j); +@@ -459,17 +459,17 @@ + Cerr<<" cas nn prevu"<= nx_) +@@ -924,10 +924,10 @@ + ArrOfBit invalid_connections_; + + entier demi_pas_; +- int pbDim_; // dimension +- int nx_; +- int ny_; +- int nz_; ++ long pbDim_; // dimension ++ long nx_; ++ long ny_; ++ long nz_; + float dx_; + float dy_; + float dz_; +@@ -967,19 +967,19 @@ + lata.release_geometry(dom); + } + +-FloatTab FiltreSpatial::calculer_somme_dir(const FloatTab & src, const int dir) const ++FloatTab FiltreSpatial::calculer_somme_dir(const FloatTab & src, const long dir) const + { +- const int n = src.dimension(0); +- const int nb_compo = src.dimension(1); ++ const long n = src.dimension(0); ++ const long nb_compo = src.dimension(1); + FloatTab tmp; + tmp.resize(n, nb_compo); + +- int index_resu = 0; +- for (int k = 0; k < nz_; k++) { +- for (int j = 0; j < ny_; j++) { +- for (int i = 0; i < nx_; i++) { +- for (int count = -demi_pas_; count <= demi_pas_; count++) { +- int index; ++ long index_resu = 0; ++ for (long k = 0; k < nz_; k++) { ++ for (long j = 0; j < ny_; j++) { ++ for (long i = 0; i < nx_; i++) { ++ for (long count = -demi_pas_; count <= demi_pas_; count++) { ++ long index; + switch(dir) { + case 0: index = ijk_index(i+count, j, k); break; + case 1: index = ijk_index(i, j+count, k); break; +@@ -992,7 +992,7 @@ + // element invalide ! + } else { + // element ok ! +- for (int compo = 0; compo < nb_compo; compo++) ++ for (long compo = 0; compo < nb_compo; compo++) + tmp(index_resu, compo) += src(index, compo); + } + } -- 2.39.2