]> SALOME platform Git repositories - modules/paravis.git/commitdiff
Salome HOME
MEDReader is now a sub-module.
authorPascal Obry <pascal.obry@edf.fr>
Wed, 18 Sep 2024 07:11:14 +0000 (09:11 +0200)
committerPascal Obry <pascal.obry@edf.fr>
Wed, 18 Sep 2024 07:31:39 +0000 (09:31 +0200)
155 files changed:
.gitmodules [new file with mode: 0644]
src/Plugins/MEDReader [new submodule]
src/Plugins/MEDReader/CMakeLists.txt [deleted file]
src/Plugins/MEDReader/CTestConfig.cmake [deleted file]
src/Plugins/MEDReader/plugin/CMakeLists.txt [deleted file]
src/Plugins/MEDReader/plugin/Doc/ELNO.txt [deleted file]
src/Plugins/MEDReader/plugin/Doc/HowTo0.py [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/CMakeLists.txt [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/ExtractGroupHelper.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/ExtractGroupHelper.h [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDFileFieldRepresentationTree.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDFileFieldRepresentationTree.hxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDLoaderForPV.h [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDTimeReq.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDTimeReq.hxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDUtilities.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDUtilities.hxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/vtkGenerateVectors.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDLoaderForPV/vtkGenerateVectors.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/CMakeLists.txt [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/VTKMEDTraits.hxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtk.module [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOFilter.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOFilter.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOMeshFilter.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOMeshFilter.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOSurfaceFilter.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOSurfaceFilter.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractCellType.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractCellType.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractGroup.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractGroup.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkFileSeriesGroupReader.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkFileSeriesGroupReader.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupAsMultiBlock.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupAsMultiBlock.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupsNames.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupsNames.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkInformationGaussDoubleVectorKey.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDQuadraturePointsGenerator.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDQuadraturePointsGenerator.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDReader.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDReader.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkPVMetaDataInformation.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkPVMetaDataInformation.h [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkUgSelectCellIds.cxx [deleted file]
src/Plugins/MEDReader/plugin/MEDReaderIO/vtkUgSelectCellIds.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/CMakeLists.txt [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/MEDReaderTimeModeWidget.ui [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/MEDReaderVectorsWidget.ui [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellData16.png [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellDataForWholeMesh16.png [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqElnoData16.png [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqPointData16.png [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqQuadratureData16.png [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqReloadFile16.png [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/MEDReaderServer.xml [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/UI/MEDReaderTimeModeWidget.ui [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/UI/MEDReaderVectorsWidget.ui [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/pqMEDReader.qrc [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolSpreadSheet.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolSpreadSheet.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqAbstractFieldsWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqAbstractFieldsWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqExtractGroupFieldsWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqExtractGroupFieldsWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderFieldsWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderFieldsWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderGraphUtils.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderGraphUtils.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderReloadWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderReloadWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimeModeWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimeModeWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimesFlagsWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimesFlagsWidget.h [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderVectorsWidget.cxx [deleted file]
src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderVectorsWidget.h [deleted file]
src/Plugins/MEDReader/plugin/TODO.txt [deleted file]
src/Plugins/MEDReader/plugin/Test/CMakeLists.txt [deleted file]
src/Plugins/MEDReader/plugin/Test/CTestTestfileInstall.cmake [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Barreau_Elga_V11.rmed [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestDataAnalysis.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractCell.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractGroup.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGUIPerf.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGaussPoints.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestMultiMesh.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestPythonTrace.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestScalarBar.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWarpColorBar.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisation.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisationBiDir.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader0.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader10.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader13.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader14.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader15.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader19.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader2.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader20.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader21.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader3.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader4.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader5.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader6.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader7.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader8.png [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/L15_R2_Temp.med [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/MultiTS.med [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/barreau2.med [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/japonlight.med [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/rosette_am.med [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/testGUIPerf.med [deleted file]
src/Plugins/MEDReader/plugin/Test/Data/testWidgetSync.med [deleted file]
src/Plugins/MEDReader/plugin/Test/MEDReaderHelper.py [deleted file]
src/Plugins/MEDReader/plugin/Test/TestDataAnalysis.py [deleted file]
src/Plugins/MEDReader/plugin/Test/TestExtractCell.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestExtractGroup.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestGUIPerf.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestGaussPoints.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestMultiMesh.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestPythonTrace.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestScalarBar.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestWarpColorBar.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestWidgetsPropertySynchronisation.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/TestWidgetsPropertySynchronisationBiDir.xml [deleted file]
src/Plugins/MEDReader/plugin/Test/checkParaview.py [deleted file]
src/Plugins/MEDReader/plugin/Test/medreadertestlauncher.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader0.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader1.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader10.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader13.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader14.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader15.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader16.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader17.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader18.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader19.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader2.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader20.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader21.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader22.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader23.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader24.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader3.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader4.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader6.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader7.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader8.py [deleted file]
src/Plugins/MEDReader/plugin/Test/testMEDReader9.py [deleted file]
src/Plugins/MEDReader/plugin/Test/tests.set [deleted file]
src/Plugins/MEDReader/plugin/paraview.plugin [deleted file]

diff --git a/.gitmodules b/.gitmodules
new file mode 100644 (file)
index 0000000..c1b3beb
--- /dev/null
@@ -0,0 +1,3 @@
+[submodule "src/Plugins/MEDReader"]
+       path = src/Plugins/MEDReader
+       url = https://codev-tuleap.cea.fr/plugins/git/salome/medreader
diff --git a/src/Plugins/MEDReader b/src/Plugins/MEDReader
new file mode 160000 (submodule)
index 0000000..95997ba
--- /dev/null
@@ -0,0 +1 @@
+Subproject commit 95997baa99b0530db9fe940845dc2c1a96c40947
diff --git a/src/Plugins/MEDReader/CMakeLists.txt b/src/Plugins/MEDReader/CMakeLists.txt
deleted file mode 100644 (file)
index 4c26d64..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright (C) 2010-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-cmake_minimum_required(VERSION 3.8)
-project(MEDReader)
-
-option(BUILD_SHARED_LIBS "Build shared libraries" ON)
-option(MEDREADER_USE_MPI "Activate parallel reading for MEDREADER" OFF)
-
-find_package(ParaView REQUIRED)
-if(MEDREADER_USE_MPI)
-  add_definitions(-DMEDREADER_USE_MPI)
-endif(MEDREADER_USE_MPI)
-
-enable_testing()
-
-include(GNUInstallDirs)
-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}")
-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}")
-set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}")
-
-set("_paraview_plugin_default_${CMAKE_PROJECT_NAME}" ON)
-paraview_plugin_scan(
-  ENABLE_BY_DEFAULT YES
-  PLUGIN_FILES      "${CMAKE_CURRENT_SOURCE_DIR}/plugin/paraview.plugin"
-  PROVIDES_PLUGINS  plugins
-  REQUIRES_MODULES  required_modules)
-
-foreach (module IN LISTS required_modules)
-  if (NOT TARGET "${module}")
-    message("Missing required module: ${module}")
-    return ()
-  endif ()
-endforeach ()
-
-paraview_plugin_build(
-  RUNTIME_DESTINATION "${CMAKE_INSTALL_BINDIR}"
-  LIBRARY_DESTINATION "${CMAKE_INSTALL_LIBDIR}"
-  LIBRARY_SUBDIRECTORY "${PARAVIEW_PLUGIN_SUBDIR}"
-  PLUGINS ${plugins})
-
-if(TARGET VTK::Python)
-
-  vtk_module_python_default_destination(python_destination)
-
-  vtk_module_wrap_python(
-    MODULES         MEDReaderIO
-    WRAPPED_MODULES medr_wrapped_modules
-    TARGET          MEDREADER::Python
-    INSTALL_EXPORT  MEDReaderVTKPython
-    PYTHON_PACKAGE  "MEDReaderVTK"
-    MODULE_DESTINATION  "${python_destination}"
-    CMAKE_DESTINATION   "${CMAKE_INSTALL_LIBDIR}/cmake/MEDReaderVTKPython"
-    LIBRARY_DESTINATION "${CMAKE_INSTALL_LIBDIR}"
-    INSTALL_HEADERS ON
-    BUILD_STATIC    OFF)
-
-  # Generate __init__.py
-  set(python_modules)
-  foreach(module ${medr_wrapped_modules})
-    list(APPEND python_modules "'${module}'")
-  endforeach()
-
-  set(InitContent "__all__ = ['vtkMEDReader']")
-
-  file(GENERATE
-    OUTPUT  "${CMAKE_BINARY_DIR}/${python_destination}/MEDReaderVTK/__init__.py"
-    CONTENT "${InitContent}")
-  install(
-    FILES       "${CMAKE_BINARY_DIR}/${python_destination}/MEDReaderVTK/__init__.py"
-    DESTINATION "${python_destination}/MEDReaderVTK/")
-
-  # Install MEDReaderVTKPython
-  export(
-    EXPORT    MEDReaderVTKPython
-    NAMESPACE MEDREADER::
-    FILE "${CMAKE_BINARY_DIR}/${python_destination}/MEDReaderVTKPython/MEDReaderVTKPython-targets.cmake")
-  install(
-    EXPORT    MEDReaderVTKPython
-    NAMESPACE MEDREADER::
-    FILE      MEDReaderVTKPython-targets.cmake
-    DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/MEDReaderVTKPython")
-
-endif()
diff --git a/src/Plugins/MEDReader/CTestConfig.cmake b/src/Plugins/MEDReader/CTestConfig.cmake
deleted file mode 100644 (file)
index 848aafa..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-## This file should be placed in the root directory of your project.
-## Then modify the CMakeLists.txt file in the root directory of your
-## project to incorporate the testing dashboard.
-##
-## # The following are required to submit to the CDash dashboard:
-##   ENABLE_TESTING()
-##   INCLUDE(CTest)
-
-set(CTEST_PROJECT_NAME "MOVIDO")
-set(CTEST_NIGHTLY_START_TIME "00:00:00 EST")
-
-set(CTEST_DROP_METHOD "http")
-set(CTEST_DROP_SITE "open.cdash.org")
-set(CTEST_DROP_LOCATION "/submit.php?project=movido")
-set(CTEST_DROP_SITE_CDASH TRUE)
diff --git a/src/Plugins/MEDReader/plugin/CMakeLists.txt b/src/Plugins/MEDReader/plugin/CMakeLists.txt
deleted file mode 100644 (file)
index cb3aba8..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright (C) 2010-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-# Common CMake macros
-# ===================
-set(TMP_CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH})
-unset(CMAKE_MODULE_PATH)
-set(CONFIGURATION_ROOT_DIR $ENV{CONFIGURATION_ROOT_DIR} CACHE PATH "Path to the Salome CMake configuration files")
-if(EXISTS ${CONFIGURATION_ROOT_DIR})
-  list(APPEND CMAKE_MODULE_PATH "${CONFIGURATION_ROOT_DIR}/cmake")
-  include(SalomeMacros)
-else()
-  message(FATAL_ERROR "We absolutely need the Salome CMake configuration files, please define CONFIGURATION_ROOT_DIR !")
-endif()
-
-set(MEDCOUPLING_ROOT_DIR $ENV{MEDCOUPLING_ROOT_DIR} CACHE PATH "Path to the MEDCoupling tool")
-if(EXISTS ${MEDCOUPLING_ROOT_DIR})
-  list(APPEND CMAKE_MODULE_PATH "${MEDCOUPLING_ROOT_DIR}/cmake_files")
-endif()
-list(APPEND CMAKE_MODULE_PATH "${CMAKE_ROOT}/Modules")
-list(APPEND CMAKE_MODULE_PATH ${TMP_CMAKE_MODULE_PATH})
-
-include(SalomeSetupPlatform)
-set(BUILD_SHARED_LIBS TRUE)
-
-find_package(SalomeHDF5 REQUIRED)
-find_package(SalomeMEDCoupling REQUIRED)
-find_package(SalomeMEDFile REQUIRED)
-
-SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH NOCHECK ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_BINS}
-                                                 ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_PYTHON})
-SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS})
-SALOME_ACCUMULATE_ENVIRONMENT(PV_PLUGIN_PATH NOCHECK ${CMAKE_INSTALL_PREFIX}/lib/paraview)
-
-add_subdirectory(MEDLoaderForPV)
-add_subdirectory(ParaViewPlugin)
-
-if (CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
-  # option to build tests in a standalone mode
-  option(BUILD_TESTING "Build Plugin Testing" OFF)
-endif()
-if (SALOME_BUILD_TESTS OR BUILD_TESTING)
-  add_subdirectory(Test)
-endif()
diff --git a/src/Plugins/MEDReader/plugin/Doc/ELNO.txt b/src/Plugins/MEDReader/plugin/Doc/ELNO.txt
deleted file mode 100644 (file)
index 456a2ea..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-1-    ELNO Points: creates points on the vertices of the cells, with a shrink factor which allows you to make the distinction between the vertices of the adjacent cells
-2-    ELNO Surface: this filters starts by extracting the surface of the object, then project the ELNO field on it, slightly separating the cells one from the others (10-5 shrink factor compared to cell initial size)
-3-    ELNO Mesh: all the cells of the initial mesh are separated one from the others to be able to project the ELNO fields on them. Beware not to use this filter on big calculation cases as the memory used and the graphical performances are degraded. This filter allows to make operations such as Cut Planes keeping the ELNO fields correct. 
diff --git a/src/Plugins/MEDReader/plugin/Doc/HowTo0.py b/src/Plugins/MEDReader/plugin/Doc/HowTo0.py
deleted file mode 100644 (file)
index 81661b8..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-from paraview.simple import *
-
-myMedReader=MEDReader(FileNames="/home/H87074/WORK/TESTS_AMA/TESTS0/ssll117a/ssll117a.med")
-
-# list of all keys
-
-keys=myMedReader.GetProperty("FieldsTreeInfo")[::2]
-
-# list all the names of arrays that can be seen (including their spatial discretization)
-
-arr_name_with_dis=[elt.split("/")[-1] for elt in keys]
-
-# list all the names of arrays (Equal to those in the MED File)
-
-arr_name=[elt.split(myMedReader.GetProperty("Separator").GetData())[0] for elt in arr_name_with_dis]
-
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/CMakeLists.txt b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/CMakeLists.txt
deleted file mode 100644 (file)
index 78233f9..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright (C) 2010-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-add_library(MEDLoaderForPV SHARED MEDFileFieldRepresentationTree.cxx  MEDTimeReq.cxx  MEDUtilities.cxx  vtkGenerateVectors.cxx ExtractGroupHelper.cxx)
-target_include_directories(MEDLoaderForPV PRIVATE . ${MEDCOUPLING_INCLUDE_DIRS})
-
-target_link_libraries(MEDLoaderForPV VTK::CommonCore VTK::CommonDataModel VTK::IOXML ${MEDFILE_C_LIBRARIES})
-
-IF(MEDREADER_USE_MPI)#HDF5_IS_PARALLEL
-  target_link_libraries(MEDLoaderForPV ${MEDCoupling_paramedloader})
-ELSE(MEDREADER_USE_MPI)
-  TARGET_LINK_LIBRARIES(MEDLoaderForPV ${MEDCoupling_medloader})
-ENDIF(MEDREADER_USE_MPI)
-
-install(TARGETS MEDLoaderForPV 
-        DESTINATION lib/salome)#${CMAKE_INSTALL_LIBDIR}
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/ExtractGroupHelper.cxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/ExtractGroupHelper.cxx
deleted file mode 100644 (file)
index 5f05c50..0000000
+++ /dev/null
@@ -1,351 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#include "ExtractGroupHelper.h"
-#include "MEDFileFieldRepresentationTree.hxx"
-
-#include "vtkInformation.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-#include "vtkAdjacentVertexIterator.h"
-#include "vtkMutableDirectedGraph.h"
-#include "vtkDataSetAttributes.h"
-#include "vtkStringArray.h"
-
-#include <cstring>
-
-const char ExtractGroupGrp::START[]="GRP_";
-
-const char ExtractGroupFam::START[]="FAM_";
-
-ExtractGroupStatus::ExtractGroupStatus(const char *name):_status(false),_name(name)
-{
-}
-
-void ExtractGroupStatus::printMySelf(std::ostream& os) const
-{
-  os << "      -" << _ze_key_name << "(";
-  if(_status)
-    os << "X";
-  else
-    os << " ";
-  os << ")" << std::endl;
-}
-
-bool ExtractGroupStatus::isSameAs(const ExtractGroupStatus& other) const
-{
-  return _name==other._name && _ze_key_name==other._ze_key_name;
-}
-
-bool ExtractGroupGrp::isSameAs(const ExtractGroupGrp& other) const
-{
-  bool ret(ExtractGroupStatus::isSameAs(other));
-  if(ret)
-    return _fams==other._fams;
-  else
-    return false;
-}
-
-ExtractGroupFam::ExtractGroupFam(const char *name):ExtractGroupStatus(name),_id(0)
-{
-  std::size_t pos(_name.find(MEDFileFieldRepresentationLeavesArrays::ZE_SEP));
-  std::string name0(_name.substr(0,pos)),name1(_name.substr(pos+strlen(MEDFileFieldRepresentationLeavesArrays::ZE_SEP)));
-  std::istringstream iss(name1);
-  iss >> _id;
-  std::ostringstream oss; oss << START << name; _ze_key_name=oss.str(); _name=name0;
-}
-
-bool ExtractGroupFam::isSameAs(const ExtractGroupFam& other) const
-{
-  bool ret(ExtractGroupStatus::isSameAs(other));
-  if(ret)
-    return _id==other._id;
-  else
-    return false;
-}
-
-void ExtractGroupFam::printMySelf(std::ostream& os) const
-{
-  os << "      -" << _ze_key_name << " famName : \"" << _name << "\" id : " << _id << " (";
-  if(_status)
-    os << "X";
-  else
-    os << " ";
-  os << ")" << std::endl;
-}
-
-void ExtractGroupFam::fillIdsToKeep(std::set<int>& s) const
-{
-  s.insert(_id);
-}
-///////////////////
-
-bool ExtractGroupInternal::IndependantIsInformationOK(vtkInformationDataObjectMetaDataKey *medReaderMetaData, vtkInformation *info)
-{
-  // Check the information contain meta data key
-  if(!info->Has(medReaderMetaData))
-    return false;
-
-  // Recover Meta Data
-  vtkMutableDirectedGraph *sil(vtkMutableDirectedGraph::SafeDownCast(info->Get(medReaderMetaData)));
-  if(!sil)
-    return false;
-  int idNames(0);
-  vtkAbstractArray *verticesNames(sil->GetVertexData()->GetAbstractArray("Names",idNames));
-  vtkStringArray *verticesNames2(vtkStringArray::SafeDownCast(verticesNames));
-  if(!verticesNames2)
-    return false;
-  for(int i=0;i<verticesNames2->GetNumberOfValues();i++)
-    {
-      vtkStdString &st(verticesNames2->GetValue(i));
-      if(st=="MeshesFamsGrps")
-        return true;
-    }
-  return false;
-}
-
-const char *ExtractGroupInternal::getMeshName() const
-{
-  return this->_mesh_name.c_str();
-}
-
-void ExtractGroupInternal::loadFrom(vtkMutableDirectedGraph *sil)
-{
-  std::vector<ExtractGroupGrp> oldGrps(_groups); _groups.clear();
-  std::vector<ExtractGroupFam> oldFams(_fams); _fams.clear();
-  int idNames(0);
-  vtkAbstractArray *verticesNames(sil->GetVertexData()->GetAbstractArray("Names",idNames));
-  vtkStringArray *verticesNames2(vtkStringArray::SafeDownCast(verticesNames));
-  vtkIdType id0;
-  bool found(false);
-  for(int i=0;i<verticesNames2->GetNumberOfValues();i++)
-    {
-      vtkStdString &st(verticesNames2->GetValue(i));
-      if(st=="MeshesFamsGrps")
-        {
-          id0=i;
-          found=true;
-        }
-    }
-  if(!found)
-    throw INTERP_KERNEL::Exception("There is an internal error ! The tree on server side has not the expected look !");
-  vtkAdjacentVertexIterator *it0(vtkAdjacentVertexIterator::New());
-  sil->GetAdjacentVertices(id0,it0);
-  while(it0->HasNext())
-    {
-      vtkIdType id1(it0->Next());
-      std::string meshName((const char *)verticesNames2->GetValue(id1));
-      this->_mesh_name=meshName;
-      vtkAdjacentVertexIterator *it1(vtkAdjacentVertexIterator::New());
-      sil->GetAdjacentVertices(id1,it1);
-      vtkIdType idZeGrps(it1->Next());//zeGroups
-      vtkAdjacentVertexIterator *itGrps(vtkAdjacentVertexIterator::New());
-      sil->GetAdjacentVertices(idZeGrps,itGrps);
-      while(itGrps->HasNext())
-        {
-          vtkIdType idg(itGrps->Next());
-          ExtractGroupGrp grp((const char *)verticesNames2->GetValue(idg));
-          vtkAdjacentVertexIterator *itGrps2(vtkAdjacentVertexIterator::New());
-          sil->GetAdjacentVertices(idg,itGrps2);
-          std::vector<std::string> famsOnGroup;
-          while(itGrps2->HasNext())
-            {
-              vtkIdType idgf(itGrps2->Next());
-              famsOnGroup.push_back(std::string((const char *)verticesNames2->GetValue(idgf)));
-            }
-          grp.setFamilies(famsOnGroup);
-          itGrps2->Delete();
-          _groups.push_back(grp);
-        }
-      itGrps->Delete();
-      vtkIdType idZeFams(it1->Next());//zeFams
-      it1->Delete();
-      vtkAdjacentVertexIterator *itFams(vtkAdjacentVertexIterator::New());
-      sil->GetAdjacentVertices(idZeFams,itFams);
-      while(itFams->HasNext())
-        {
-          vtkIdType idf(itFams->Next());
-          ExtractGroupFam fam((const char *)verticesNames2->GetValue(idf));
-          _fams.push_back(fam);
-        }
-      itFams->Delete();
-    }
-  it0->Delete();
-  //
-  std::size_t szg(_groups.size()),szf(_fams.size());
-  if(szg==oldGrps.size() && szf==oldFams.size())
-    {
-      bool isSame(true);
-      for(std::size_t i=0;i<szg && isSame;i++)
-        isSame=_groups[i].isSameAs(oldGrps[i]);
-      for(std::size_t i=0;i<szf && isSame;i++)
-        isSame=_fams[i].isSameAs(oldFams[i]);
-      if(isSame)
-        {
-          for(std::size_t i=0;i<szg;i++)
-            _groups[i].cpyStatusFrom(oldGrps[i]);
-          for(std::size_t i=0;i<szf;i++)
-            _fams[i].cpyStatusFrom(oldFams[i]);
-        }
-    }
-}
-
-int ExtractGroupInternal::getNumberOfEntries() const
-{
-  std::size_t sz0(_groups.size()),sz1(_fams.size());
-  return (int)(sz0+sz1);
-}
-
-const char *ExtractGroupInternal::getKeyOfEntry(int i) const
-{
-  int sz0((int)_groups.size());
-  if(i>=0 && i<sz0)
-    return _groups[i].getKeyOfEntry();
-  else
-    return _fams[i-sz0].getKeyOfEntry();
-}
-
-bool ExtractGroupInternal::getStatusOfEntryStr(const char *entry) const
-{
-  const ExtractGroupStatus& elt(getEntry(entry));
-  return elt.getStatus();
-}
-
-void ExtractGroupInternal::setStatusOfEntryStr(const char *entry, bool status)
-{
-  _selection.emplace_back(entry,status);
-}
-
-const ExtractGroupStatus& ExtractGroupInternal::getEntry(const char *entry) const
-{
-  std::string entryCpp(entry);
-  for(std::vector<ExtractGroupGrp>::const_iterator it0=_groups.begin();it0!=_groups.end();it0++)
-    if(entryCpp==(*it0).getKeyOfEntry())
-      return *it0;
-  for(std::vector<ExtractGroupFam>::const_iterator it0=_fams.begin();it0!=_fams.end();it0++)
-    if(entryCpp==(*it0).getKeyOfEntry())
-      return *it0;
-  std::ostringstream oss; oss << "vtkExtractGroupInternal::getEntry : no such entry \"" << entry << "\"!";
-  throw INTERP_KERNEL::Exception(oss.str().c_str());
-}
-
-ExtractGroupStatus& ExtractGroupInternal::getEntry(const char *entry)
-{
-  std::string entryCpp(entry);
-  for(std::vector<ExtractGroupGrp>::iterator it0=_groups.begin();it0!=_groups.end();it0++)
-    if(entryCpp==(*it0).getKeyOfEntry())
-      return *it0;
-  for(std::vector<ExtractGroupFam>::iterator it0=_fams.begin();it0!=_fams.end();it0++)
-    if(entryCpp==(*it0).getKeyOfEntry())
-      return *it0;
-  std::ostringstream oss; oss << "vtkExtractGroupInternal::getEntry : no such entry \"" << entry << "\"!";
-  throw INTERP_KERNEL::Exception(oss.str().c_str());
-}
-
-void ExtractGroupInternal::printMySelf(std::ostream& os) const
-{
-  os << "Groups :" << std::endl;
-  for(std::vector<ExtractGroupGrp>::const_iterator it0=_groups.begin();it0!=_groups.end();it0++)
-    (*it0).printMySelf(os);
-  os << "Families :" << std::endl;
-  for(std::vector<ExtractGroupFam>::const_iterator it0=_fams.begin();it0!=_fams.end();it0++)
-    (*it0).printMySelf(os);
-}
-
-int ExtractGroupInternal::getIdOfFamily(const std::string& famName) const
-{
-  for(std::vector<ExtractGroupFam>::const_iterator it=_fams.begin();it!=_fams.end();it++)
-    {
-      if((*it).getName()==famName)
-        return (*it).getId();
-    }
-  return std::numeric_limits<int>::max();
-}
-
-std::set<int> ExtractGroupInternal::getIdsToKeep() const
-{
-  for(auto it: _selection)
-    {
-      const ExtractGroupStatus& elt(getEntry(it.first.c_str()));
-      elt.setStatus(it.second);
-    }
-  std::map<std::string,int> m(this->computeFamStrIdMap());
-  std::set<int> s;
-  for(std::vector<ExtractGroupGrp>::const_iterator it0=_groups.begin();it0!=_groups.end();it0++)
-    {
-      if((*it0).getStatus())
-        {
-          const std::vector<std::string>& fams((*it0).getFamiliesLyingOn());
-          for(std::vector<std::string>::const_iterator it1=fams.begin();it1!=fams.end();it1++)
-            {
-              std::map<std::string,int>::iterator it2(m.find((*it1)));
-              if(it2!=m.end())
-                s.insert((*it2).second);
-            }
-        }
-     }
-  for(std::vector<ExtractGroupFam>::const_iterator it0=_fams.begin();it0!=_fams.end();it0++)
-    if((*it0).getStatus())
-      (*it0).fillIdsToKeep(s);
-  return s;
-}
-
-// see reference : https://en.cppreference.com/w/cpp/iterator/iterator
-class FamilyIterator : public std::iterator< std::input_iterator_tag, long, long, int*, int >
-{
-  long _num = 0;
-  const ExtractGroupInternal *_egi = nullptr;
-  const std::vector<std::string> *_fams = nullptr;
-public:
-  explicit FamilyIterator(long num , const ExtractGroupInternal *egi, const std::vector<std::string>& fams) : _num(num),_egi(egi),_fams(&fams) {}
-  FamilyIterator& operator++() { ++_num; return *this;}
-  bool operator==(const FamilyIterator& other) const {return _num == other._num;}
-  bool operator!=(const FamilyIterator& other) const {return !(*this == other);}
-  reference operator*() const {return _egi->getIdOfFamily((*_fams)[_num]);}
-};
-
-std::vector< std::pair<std::string,std::vector<int> > > ExtractGroupInternal::getAllGroups() const
-{
-    std::vector< std::pair<std::string,std::vector<int> > > ret;
-    for(const auto&  grp : _groups)
-    {
-        const std::vector<std::string>& fams(grp.getFamiliesLyingOn());
-        std::vector<int> famIds(FamilyIterator(0,this,fams),FamilyIterator(fams.size(),this,fams));
-        std::pair<std::string,std::vector<int> > elt(grp.getName(),std::move(famIds));
-        ret.emplace_back(std::move(elt));
-    }
-    return ret;
-}
-
-void ExtractGroupInternal::clearSelection() const
-{
-  _selection.clear();
-  for(auto it : _groups)
-    it.resetStatus();
-  for(auto it : _fams)
-    it.resetStatus();
-}
-
-std::map<std::string,int> ExtractGroupInternal::computeFamStrIdMap() const
-{
-  std::map<std::string,int> ret;
-  for(std::vector<ExtractGroupFam>::const_iterator it0=_fams.begin();it0!=_fams.end();it0++)
-    ret[(*it0).getName()]=(*it0).getId();
-  return ret;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/ExtractGroupHelper.h b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/ExtractGroupHelper.h
deleted file mode 100644 (file)
index 4927ee8..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#pragma once
-
-#include <sstream>
-#include <vector>
-#include <set>
-#include <map>
-
-#include "MEDLoaderForPV.h"
-
-class MEDLOADERFORPV_EXPORT ExtractGroupStatus
-{
-public:
-  ExtractGroupStatus():_status(false) { }
-  ExtractGroupStatus(const char *name);
-  bool getStatus() const { return _status; }
-  void setStatus(bool status) const { _status=status; }
-  void cpyStatusFrom(const ExtractGroupStatus& other) { _status=other._status; }
-  std::string getName() const { return _name; }
-  void resetStatus() const { _status=false; }
-  const char *getKeyOfEntry() const { return _ze_key_name.c_str(); }
-  virtual void printMySelf(std::ostream& os) const;
-  virtual bool isSameAs(const ExtractGroupStatus& other) const;
-protected:
-mutable bool _status;
-std::string _name;
-std::string _ze_key_name;
-};
-
-class MEDLOADERFORPV_EXPORT ExtractGroupGrp : public ExtractGroupStatus
-{
-public:
-  ExtractGroupGrp(const char *name):ExtractGroupStatus(name) { std::ostringstream oss; oss << START << name; _ze_key_name=oss.str(); }
-  void setFamilies(const std::vector<std::string>& fams) { _fams=fams; }
-  const std::vector<std::string>& getFamiliesLyingOn() const { return _fams; }
-  bool isSameAs(const ExtractGroupGrp& other) const;
-public:
-  static const char START[];
-  std::vector<std::string> _fams;
-};
-
-class MEDLOADERFORPV_EXPORT ExtractGroupFam : public ExtractGroupStatus
-{
-public:
-  ExtractGroupFam(const char *name);
-  void printMySelf(std::ostream& os) const;
-  void fillIdsToKeep(std::set<int>& s) const;
-  int getId() const { return _id; }
-  bool isSameAs(const ExtractGroupFam& other) const;
-public:
-  static const char START[];
-private:
-  int _id;
-};
-
-class vtkInformationDataObjectMetaDataKey;
-class vtkMutableDirectedGraph;
-class vtkInformation;
-
-class MEDLOADERFORPV_EXPORT ExtractGroupInternal
-{
-public:
-  void loadFrom(vtkMutableDirectedGraph *sil);
-  int getNumberOfEntries() const;
-  const char *getMeshName() const;
-  const char *getKeyOfEntry(int i) const;
-  bool getStatusOfEntryStr(const char *entry) const;
-  void setStatusOfEntryStr(const char *entry, bool status);
-  void printMySelf(std::ostream& os) const;
-  std::set<int> getIdsToKeep() const;
-  std::vector< std::pair<std::string,std::vector<int> > > getAllGroups() const;
-  void clearSelection() const;
-  int getIdOfFamily(const std::string& famName) const;
-  static bool IndependantIsInformationOK(vtkInformationDataObjectMetaDataKey *medReaderMetaData, vtkInformation *info);
-private:
-  std::map<std::string,int> computeFamStrIdMap() const;
-  const ExtractGroupStatus& getEntry(const char *entry) const;
-  ExtractGroupStatus& getEntry(const char *entry);
-private:
-  std::vector<ExtractGroupGrp> _groups;
-  std::vector<ExtractGroupFam> _fams;
-  mutable std::vector< std::pair<std::string,bool> > _selection;
-  std::string _mesh_name;
-};
-
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDFileFieldRepresentationTree.cxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDFileFieldRepresentationTree.cxx
deleted file mode 100644 (file)
index bc46817..0000000
+++ /dev/null
@@ -1,1774 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "MEDTimeReq.hxx"
-#include "MEDUtilities.hxx"
-
-#include "MEDFileFieldRepresentationTree.hxx"
-#include "MEDCouplingFieldDiscretization.hxx"
-#include "MEDCouplingFieldDouble.hxx"
-#include "InterpKernelGaussCoords.hxx"
-#include "MEDFileData.hxx"
-#include "MEDCouplingMemArray.txx"
-
-#ifdef MEDREADER_USE_MPI
-  #include "ParaMEDFileMesh.hxx"
-#endif
-
-#include "vtkXMLUnstructuredGridWriter.h"//
-
-#include "vtkUnstructuredGrid.h"
-#include "vtkRectilinearGrid.h"
-#include "vtkStructuredGrid.h"
-#include "vtkUnsignedCharArray.h"
-#include "vtkQuadratureSchemeDefinition.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-#include "vtkInformationIntegerKey.h"
-#include "vtkInformation.h"
-#include "vtkAOSDataArrayTemplate.h"
-#include "vtkIdTypeArray.h"
-#include "vtkDoubleArray.h"
-#include "vtkIntArray.h"
-#include "vtkLongArray.h"
-#ifdef WIN32
-#include "vtkLongLongArray.h"
-#endif
-#include "vtkFloatArray.h"
-#include "vtkCellArray.h"
-#include "vtkPointData.h"
-#include "vtkFieldData.h"
-#include "vtkCellData.h"
-
-#include "vtkMutableDirectedGraph.h"
-
-using namespace MEDCoupling;
-
-const char MEDFileFieldRepresentationLeavesArrays::ZE_SEP[]="@@][@@";
-
-const char MEDFileFieldRepresentationLeavesArrays::TS_STR[]="TS";
-
-const char MEDFileFieldRepresentationLeavesArrays::COM_SUP_STR[]="ComSup";
-
-const char MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME[]="FamilyIdCell";
-
-const char MEDFileFieldRepresentationLeavesArrays::NUM_ID_CELL_NAME[]="NumIdCell";
-
-const char MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME[]="FamilyIdNode";
-
-const char MEDFileFieldRepresentationLeavesArrays::NUM_ID_NODE_NAME[]="NumIdNode";
-
-const char MEDFileFieldRepresentationLeavesArrays::GLOBAL_NODE_ID_NAME[]="GlobalNodeIds";// WARNING DO NOT CHANGE IT BEFORE HAVING CHECKED IN PV SOURCES !
-
-const char MEDFileFieldRepresentationTree::ROOT_OF_GRPS_IN_TREE[]="zeGrps";
-
-const char MEDFileFieldRepresentationTree::ROOT_OF_FAM_IDS_IN_TREE[]="zeFamIds";
-
-const char MEDFileFieldRepresentationTree::COMPO_STR_TO_LOCATE_MESH_DA[]="-@?|*_";
-
-template<class T>
-vtkIdTypeArray *ELGACmp::findOrCreate(const MEDCoupling::MEDFileFieldGlobsReal *globs, const std::vector<std::string>& locsReallyUsed, vtkDataArray *vtkd, vtkDataSet *ds, bool& isNew, ExportedTinyInfo *internalInfo) const
-{
-  vtkIdTypeArray *try0(isExisting(locsReallyUsed,vtkd));
-  if(try0)
-    {
-      isNew=false;
-      return try0;
-    }
-  else
-    {
-      isNew=true;
-      return createNew<T>(globs,locsReallyUsed,vtkd,ds,internalInfo);
-    }
-}
-
-vtkIdTypeArray *ELGACmp::isExisting(const std::vector<std::string>& locsReallyUsed, vtkDataArray *vtkd) const
-{
-  std::vector< std::vector<std::string> >::iterator it(std::find(_loc_names.begin(),_loc_names.end(),locsReallyUsed));
-  if(it==_loc_names.end())
-    return 0;
-  std::size_t pos(std::distance(_loc_names.begin(),it));
-  vtkIdTypeArray *ret(_elgas[pos]);
-  vtkInformationQuadratureSchemeDefinitionVectorKey *key(vtkQuadratureSchemeDefinition::DICTIONARY());
-  for(std::vector<std::pair< vtkQuadratureSchemeDefinition *, unsigned char > >::const_iterator it=_defs[pos].begin();it!=_defs[pos].end();it++)
-    {
-      key->Set(vtkd->GetInformation(),(*it).first,(*it).second);
-    }
-  vtkd->GetInformation()->Set(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME(),ret->GetName());
-  return ret;
-}
-
-template<class T>
-vtkIdTypeArray *ELGACmp::createNew(const MEDCoupling::MEDFileFieldGlobsReal *globs, const std::vector<std::string>& locsReallyUsed, vtkDataArray *vtkd, vtkDataSet *ds, ExportedTinyInfo *internalInfo) const
-{
-  const int VTK_DATA_ARRAY_DELETE=vtkAOSDataArrayTemplate<T>::VTK_DATA_ARRAY_DELETE;
-  std::vector< std::vector<std::string> > locNames(_loc_names);
-  std::vector<vtkIdTypeArray *> elgas(_elgas);
-  std::vector< std::pair< vtkQuadratureSchemeDefinition *, unsigned char > > defs;
-  //
-  std::vector< std::vector<std::string> >::const_iterator it(std::find(locNames.begin(),locNames.end(),locsReallyUsed));
-  if(it!=locNames.end())
-    throw INTERP_KERNEL::Exception("ELGACmp::createNew : Method is expected to be called after isExisting call ! Entry already exists !");
-  locNames.push_back(locsReallyUsed);
-  vtkIdTypeArray *elga(vtkIdTypeArray::New());
-  elga->SetNumberOfComponents(1);
-  vtkInformationQuadratureSchemeDefinitionVectorKey *key(vtkQuadratureSchemeDefinition::DICTIONARY());
-  std::map<unsigned char,int> m;
-  for(std::vector<std::string>::const_iterator it=locsReallyUsed.begin();it!=locsReallyUsed.end();it++)
-    {
-      vtkQuadratureSchemeDefinition *def(vtkQuadratureSchemeDefinition::New());
-      const MEDFileFieldLoc& loc(globs->getLocalization((*it).c_str()));
-      INTERP_KERNEL::NormalizedCellType ct(loc.getGeoType());
-      unsigned char vtkType(MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE[ct]);
-      const INTERP_KERNEL::CellModel& cm(INTERP_KERNEL::CellModel::GetCellModel(ct));
-      int nbGaussPt(loc.getNbOfGaussPtPerCell()),nbPtsPerCell((int)cm.getNumberOfNodes()),dimLoc(loc.getDimension());
-      // WARNING : these 2 lines are a workaround, due to users that write a ref element with dimension not equal to dimension of the geometric element.
-      std::vector<double> gsCoods2(INTERP_KERNEL::GaussInfo::NormalizeCoordinatesIfNecessary(ct,dimLoc,loc.getGaussCoords()));
-      std::vector<double> refCoods2(INTERP_KERNEL::GaussInfo::NormalizeCoordinatesIfNecessary(ct,dimLoc,loc.getRefCoords()));
-      if(internalInfo)
-        internalInfo->pushGaussAdditionnalInfo(vtkType,dimLoc,refCoods2,gsCoods2);
-      double *shape(new double[nbPtsPerCell*nbGaussPt]);
-      INTERP_KERNEL::GaussInfo calculator(ct,gsCoods2,nbGaussPt,refCoods2,nbPtsPerCell);
-      calculator.initLocalInfo();
-      const std::vector<double>& wgths(loc.getGaussWeights());
-      for(int i=0;i<nbGaussPt;i++)
-        {
-          const double *pt0(calculator.getFunctionValues(i));
-          if(ct!=INTERP_KERNEL::NORM_HEXA27)
-            std::copy(pt0,pt0+nbPtsPerCell,shape+nbPtsPerCell*i);
-          else
-            {
-              for(int j=0;j<27;j++)
-                shape[nbPtsPerCell*i+j]=pt0[MEDMeshMultiLev::HEXA27_PERM_ARRAY[j]];
-            }
-        }
-      m[vtkType]=nbGaussPt;
-      def->Initialize(vtkType,nbPtsPerCell,nbGaussPt,shape,const_cast<double *>(&wgths[0]));
-      delete [] shape;
-      key->Set(elga->GetInformation(),def,vtkType);
-      key->Set(vtkd->GetInformation(),def,vtkType);
-      defs.push_back(std::pair< vtkQuadratureSchemeDefinition *, unsigned char >(def,vtkType));
-    }
-  //
-  vtkIdType ncell(ds->GetNumberOfCells());
-  vtkIdType *pt(new vtkIdType[ncell]),offset(0);
-  for(vtkIdType cellId=0;cellId<ncell;cellId++)
-    {
-      vtkCell *cell(ds->GetCell(cellId));
-      vtkIdType delta(m[(unsigned char)cell->GetCellType()]);
-      pt[cellId]=offset;
-      offset+=delta;
-    }
-  elga->GetInformation()->Set(MEDUtilities::ELGA(),1);
-  elga->SetVoidArray(pt,ncell,0,VTK_DATA_ARRAY_DELETE);
-  std::ostringstream oss; oss << "ELGA" << "@" << _loc_names.size();
-  std::string ossStr(oss.str());
-  elga->SetName(ossStr.c_str());
-  elga->GetInformation()->Set(vtkAbstractArray::GUI_HIDE(),1);
-  vtkd->GetInformation()->Set(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME(),elga->GetName());
-  elgas.push_back(elga);
-  //
-  _loc_names=locNames;
-  _elgas=elgas;
-  _defs.push_back(defs);
-  return elga;
-}
-
-void ELGACmp::appendELGAIfAny(vtkDataSet *ds) const
-{
-  for(std::vector<vtkIdTypeArray *>::const_iterator it=_elgas.begin();it!=_elgas.end();it++)
-    ds->GetCellData()->AddArray(*it);
-}
-
-ELGACmp::~ELGACmp()
-{
-  for(std::vector<vtkIdTypeArray *>::const_iterator it=_elgas.begin();it!=_elgas.end();it++)
-    (*it)->Delete();
-  for(std::vector< std::vector< std::pair< vtkQuadratureSchemeDefinition *, unsigned char > > >::const_iterator it0=_defs.begin();it0!=_defs.end();it0++)
-    for(std::vector< std::pair< vtkQuadratureSchemeDefinition *, unsigned char > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      (*it1).first->Delete();
-}
-
-//=
-
-template<class T>
-class MEDFileVTKTraits
-{
-public:
-  typedef void VtkType;
-  typedef void MCType;
-};
-
-template<>
-class MEDFileVTKTraits<int>
-{
-public:
-  typedef vtkIntArray VtkType;
-  typedef MEDCoupling::DataArrayInt MCType;
-};
-
-template<>
-#ifdef WIN32
-class MEDFileVTKTraits<long long>
-#else
-class MEDFileVTKTraits<long>
-#endif
-{
-public:
-#ifdef WIN32
-  typedef vtkLongLongArray VtkType;
-#else
-  typedef vtkLongArray VtkType;
-#endif
-  typedef MEDCoupling::DataArrayInt64 MCType;
-};
-
-template<>
-class MEDFileVTKTraits<float>
-{
-public:
-  typedef vtkFloatArray VtkType;
-  typedef MEDCoupling::DataArrayFloat MCType;
-};
-
-template<>
-class MEDFileVTKTraits<double>
-{
-public:
-  typedef vtkDoubleArray VtkType;
-  typedef MEDCoupling::DataArrayDouble MCType;
-};
-
-typedef typename MEDFileVTKTraits<mcIdType>::VtkType vtkMCIdTypeArray;
-
-
-template<class T>
-void AssignDataPointerToVTK(typename MEDFileVTKTraits<T>::VtkType *vtkTab, typename MEDFileVTKTraits<T>::MCType *mcTab, bool noCpyNumNodes)
-{
-  if(noCpyNumNodes)
-    vtkTab->SetArray(mcTab->getPointer(),mcTab->getNbOfElems(),1,vtkAOSDataArrayTemplate<T>::VTK_DATA_ARRAY_FREE);
- else
-   { vtkTab->SetArray(mcTab->getPointer(),mcTab->getNbOfElems(),0,vtkAOSDataArrayTemplate<T>::VTK_DATA_ARRAY_FREE); mcTab->accessToMemArray().setSpecificDeallocator(0); }
-}
-
-// here copy is always assumed.
-template<class VTKT, class MCT>
-void AssignDataPointerOther(VTKT *vtkTab, MCT *mcTab, vtkIdType nbElems)
-{
-  typedef typename VTKT::ValueType VTKType;
-  if ( sizeof( VTKType ) == sizeof( typename MCT::Type ))
-    {
-      vtkTab->SetVoidArray(reinterpret_cast<unsigned char *>(mcTab->getPointer()),nbElems,0,VTKT::VTK_DATA_ARRAY_FREE);
-      mcTab->accessToMemArray().setSpecificDeallocator(0);
-    }
-  else
-    {
-      VTKType* newArray = new VTKType[ nbElems ];
-      std::copy( mcTab->begin(), mcTab->begin() + nbElems, newArray );
-      vtkTab->SetVoidArray(reinterpret_cast<unsigned char *>(newArray),nbElems,0,VTKT::VTK_DATA_ARRAY_DELETE);
-    }
-}
-
-template<class T>
-void AssignToFieldData(DataArray *vPtr, const MEDTimeReq *tr, vtkFieldData *att, const std::string& crudeName, bool noCpyNumNodes,
-                       const std::vector<TypeOfField>& discs, const ELGACmp& elgaCmp, const MEDCoupling::MEDFileFieldGlobsReal *globs,
-                       MEDFileAnyTypeField1TS *f1ts, vtkDataSet *ds, ExportedTinyInfo *internalInfo)
-{
-  const int VTK_DATA_ARRAY_DELETE=vtkAOSDataArrayTemplate<T>::VTK_DATA_ARRAY_DELETE;
-  typename MEDFileVTKTraits<T>::MCType *vi(static_cast<typename MEDFileVTKTraits<T>::MCType *>(vPtr));
-  typename MEDFileVTKTraits<T>::VtkType *vtkd(MEDFileVTKTraits<T>::VtkType::New());
-  vtkd->SetNumberOfComponents((int)vi->getNumberOfComponents());
-  for(unsigned int i=0;i<vi->getNumberOfComponents();i++)
-    vtkd->SetComponentName(i,vi->getVarOnComponent(i).c_str());
-  AssignDataPointerToVTK<T>(vtkd,vi,noCpyNumNodes);
-  std::string name(tr->buildName(crudeName));
-  vtkd->SetName(name.c_str());
-  att->AddArray(vtkd);
-  vtkd->Delete();
-  if(discs[0]==ON_GAUSS_PT)
-    {
-      bool tmp;
-      elgaCmp.findOrCreate<T>(globs,f1ts->getLocsReallyUsed(),vtkd,ds,tmp,internalInfo);
-    }
-  if(discs[0]==ON_GAUSS_NE)
-    {
-      vtkIdTypeArray *elno(vtkIdTypeArray::New());
-      elno->SetNumberOfComponents(1);
-      vtkIdType ncell(ds->GetNumberOfCells());
-      vtkIdType *pt(new vtkIdType[ncell]),offset(0);
-      std::set<int> cellTypes;
-      for(vtkIdType cellId=0;cellId<ncell;cellId++)
-        {
-          vtkCell *cell(ds->GetCell(cellId));
-          vtkIdType delta(cell->GetNumberOfPoints());
-          cellTypes.insert(cell->GetCellType());
-          pt[cellId]=offset;
-          offset+=delta;
-        }
-      elno->GetInformation()->Set(MEDUtilities::ELNO(),1);
-      elno->SetVoidArray(pt,ncell,0,VTK_DATA_ARRAY_DELETE);
-      std::string nameElno("ELNO"); nameElno+="@"; nameElno+=name;
-      elno->SetName(nameElno.c_str());
-      ds->GetCellData()->AddArray(elno);
-      vtkd->GetInformation()->Set(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME(),elno->GetName());
-      elno->GetInformation()->Set(vtkAbstractArray::GUI_HIDE(),1);
-      //
-      vtkInformationQuadratureSchemeDefinitionVectorKey *key(vtkQuadratureSchemeDefinition::DICTIONARY());
-      for(std::set<int>::const_iterator it=cellTypes.begin();it!=cellTypes.end();it++)
-        {
-          const unsigned char *pos(std::find(MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE,MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE+MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE_LGTH,*it));
-          if(pos==MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE+MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE_LGTH)
-            continue;
-          INTERP_KERNEL::NormalizedCellType ct((INTERP_KERNEL::NormalizedCellType)std::distance(MEDMeshMultiLev::PARAMEDMEM_2_VTKTYPE,pos));
-          const INTERP_KERNEL::CellModel& cm(INTERP_KERNEL::CellModel::GetCellModel(ct));
-          int nbGaussPt(cm.getNumberOfNodes()),dim(cm.getDimension());
-          vtkQuadratureSchemeDefinition *def(vtkQuadratureSchemeDefinition::New());
-          double *shape(new double[nbGaussPt*nbGaussPt]);
-          std::size_t dummy;
-          const double *gsCoords(MEDCouplingFieldDiscretizationGaussNE::GetRefCoordsFromGeometricType(ct,dummy));//GetLocsFromGeometricType
-          const double *refCoords(MEDCouplingFieldDiscretizationGaussNE::GetRefCoordsFromGeometricType(ct,dummy));
-          const double *weights(MEDCouplingFieldDiscretizationGaussNE::GetWeightArrayFromGeometricType(ct,dummy));
-          std::vector<double> gsCoords2(gsCoords,gsCoords+nbGaussPt*dim),refCoords2(refCoords,refCoords+nbGaussPt*dim);
-          INTERP_KERNEL::GaussInfo calculator(ct,gsCoords2,nbGaussPt,refCoords2,nbGaussPt);
-          calculator.initLocalInfo();
-          for(int i=0;i<nbGaussPt;i++)
-            {
-              const double *pt0(calculator.getFunctionValues(i));
-              std::copy(pt0,pt0+nbGaussPt,shape+nbGaussPt*i);
-            }
-          def->Initialize(*it,nbGaussPt,nbGaussPt,shape,const_cast<double *>(weights));
-          delete [] shape;
-          key->Set(elno->GetInformation(),def,*it);
-          key->Set(vtkd->GetInformation(),def,*it);
-          def->Delete();
-        }
-      //
-      elno->Delete();
-    }
-}
-
-//=
-
-MEDFileFieldRepresentationLeavesArrays::MEDFileFieldRepresentationLeavesArrays():_id(-1)
-{
-}
-
-MEDFileFieldRepresentationLeavesArrays::MEDFileFieldRepresentationLeavesArrays(const MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS>& arr):MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS>(arr),_activated(false),_id(-1)
-{
-  std::vector< std::vector<MEDCoupling::TypeOfField> > typs((operator->())->getTypesOfFieldAvailable());
-  if(typs.size()<1)
-    throw INTERP_KERNEL::Exception("There is a big internal problem in MEDLoader ! The field time spitting has failed ! A CRASH will occur soon !");
-  if(typs[0].size()!=1)
-    throw INTERP_KERNEL::Exception("There is a big internal problem in MEDLoader ! The field spitting by spatial discretization has failed ! A CRASH will occur soon !");
-  MEDCoupling::MCAuto<MEDCoupling::MEDCouplingFieldDiscretization> fd(MEDCouplingFieldDiscretization::New(typs[0][0]));
-  std::ostringstream oss2; oss2 << (operator->())->getName() << ZE_SEP << fd->getRepr();
-  _ze_name=oss2.str();
-}
-
-MEDFileFieldRepresentationLeavesArrays& MEDFileFieldRepresentationLeavesArrays::operator=(const MEDFileFieldRepresentationLeavesArrays& other)
-{
-  MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS>::operator=(other);
-  _id=-1;
-  _activated=false;
-  _ze_name=other._ze_name;
-  _ze_full_name.clear();
-  return *this;
-}
-
-void MEDFileFieldRepresentationLeavesArrays::setId(int& id) const
-{
-  _id=id++;
-}
-
-int MEDFileFieldRepresentationLeavesArrays::getId() const
-{
-  return _id;
-}
-
-std::string MEDFileFieldRepresentationLeavesArrays::getZeName() const
-{
-  return _ze_full_name;
-}
-
-const char *MEDFileFieldRepresentationLeavesArrays::getZeNameC() const
-{
-  return _ze_full_name.c_str();
-}
-
-void MEDFileFieldRepresentationLeavesArrays::feedSIL(vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const
-{
-  vtkIdType refId(sil->AddChild(root,edge));
-  names.push_back(_ze_name);
-  //
-  if(MEDFileFieldRepresentationTree::IsFieldMeshRegardingInfo(((operator->())->getInfo())))
-    {
-      sil->AddChild(refId,edge);
-      names.push_back(std::string());
-    }
-}
-
-void MEDFileFieldRepresentationLeavesArrays::computeFullNameInLeaves(const std::string& tsName, const std::string& meshName, const std::string& comSupStr) const
-{
-  std::ostringstream oss3; oss3 << tsName << "/" << meshName << "/" << comSupStr << "/" << _ze_name;
-  _ze_full_name=oss3.str();
-}
-
-bool MEDFileFieldRepresentationLeavesArrays::getStatus() const
-{
-  return _activated;
-}
-
-bool MEDFileFieldRepresentationLeavesArrays::setStatus(bool status) const
-{
-  bool ret(_activated!=status);
-  _activated=status;
-  return ret;
-}
-
-void MEDFileFieldRepresentationLeavesArrays::appendFields(const MEDTimeReq *tr, const MEDCoupling::MEDFileFieldGlobsReal *globs, const MEDCoupling::MEDMeshMultiLev *mml, const MEDCoupling::MEDFileMeshStruct *mst, vtkDataSet *ds, ExportedTinyInfo *internalInfo) const
-{
-  //const int VTK_DATA_ARRAY_DELETE=vtkDataArrayTemplate<double>::VTK_DATA_ARRAY_DELETE; // todo: unused
-  tr->setNumberOfTS((operator->())->getNumberOfTS());
-  tr->initIterator();
-  for(int timeStepId=0;timeStepId<tr->size();timeStepId++,++(*tr))
-    {
-      MCAuto<MEDFileAnyTypeField1TS> f1ts((operator->())->getTimeStepAtPos(tr->getCurrent()));
-      MEDFileAnyTypeField1TS *f1tsPtr(f1ts);
-      MEDFileField1TS *f1tsPtrDbl(dynamic_cast<MEDFileField1TS *>(f1tsPtr));
-      MEDFileInt32Field1TS *f1tsPtrInt(dynamic_cast<MEDFileInt32Field1TS *>(f1tsPtr));
-      MEDFileInt64Field1TS *f1tsPtrInt64(dynamic_cast<MEDFileInt64Field1TS *>(f1tsPtr));
-      MEDFileFloatField1TS *f1tsPtrFloat(dynamic_cast<MEDFileFloatField1TS *>(f1tsPtr));
-      DataArray *crudeArr(0),*postProcessedArr(0);
-      if(f1tsPtrDbl)
-        crudeArr=f1tsPtrDbl->getUndergroundDataArray();
-      else if(f1tsPtrInt)
-        crudeArr=f1tsPtrInt->getUndergroundDataArray();
-      else if(f1tsPtrInt64)
-        crudeArr=f1tsPtrInt64->getUndergroundDataArray();
-      else if(f1tsPtrFloat)
-        crudeArr=f1tsPtrFloat->getUndergroundDataArray();
-      else
-        throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeavesArrays::appendFields : only FLOAT64, FLOAT32 and INT32 fields are dealt for the moment !");
-      MEDFileField1TSStructItem fsst(MEDFileField1TSStructItem::BuildItemFrom(f1ts,mst));
-      f1ts->loadArraysIfNecessary();
-      MCAuto<DataArray> v(mml->buildDataArray(fsst,globs,crudeArr));
-      postProcessedArr=v;
-      //
-      std::vector<TypeOfField> discs(f1ts->getTypesOfFieldAvailable());
-      if(discs.size()!=1)
-        throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeavesArrays::appendFields : internal error ! Number of spatial discretizations must be equal to one !");
-      vtkFieldData *att(0);
-      switch(discs[0])
-        {
-        case ON_CELLS:
-          {
-            att=ds->GetCellData();
-            break;
-          }
-        case ON_NODES:
-          {
-            att=ds->GetPointData();
-            break;
-          }
-        case ON_GAUSS_NE:
-          {
-            att=ds->GetFieldData();
-            break;
-          }
-        case ON_GAUSS_PT:
-          {
-            att=ds->GetFieldData();
-            break;
-          }
-        default:
-          throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeavesArrays::appendFields : only CELL and NODE, GAUSS_NE and GAUSS fields are available for the moment !");
-        }
-      if(f1tsPtrDbl)
-        {
-          AssignToFieldData<double>(v,tr,att,f1ts->getName(),postProcessedArr==crudeArr,discs,_elga_cmp,globs,f1ts,ds,internalInfo);
-        }
-      else if(f1tsPtrInt)
-        {
-          AssignToFieldData<int>(v,tr,att,f1ts->getName(),postProcessedArr==crudeArr,discs,_elga_cmp,globs,f1ts,ds,internalInfo);
-        }
-      else if(f1tsPtrFloat)
-        {
-          AssignToFieldData<float>(v,tr,att,f1ts->getName(),postProcessedArr==crudeArr,discs,_elga_cmp,globs,f1ts,ds,internalInfo);
-        }
-      else if(f1tsPtrInt64)
-        {
-          AssignToFieldData<Int64>(v,tr,att,f1ts->getName(),postProcessedArr==crudeArr,discs,_elga_cmp,globs,f1ts,ds,internalInfo);
-        }
-      else
-        throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeavesArrays::appendFields : only FLOAT64 and INT32 fields are dealt for the moment ! Internal Error !");
-    }
-}
-
-void MEDFileFieldRepresentationLeavesArrays::appendELGAIfAny(vtkDataSet *ds) const
-{
-  _elga_cmp.appendELGAIfAny(ds);
-}
-
-////////////////////
-
-MEDFileFieldRepresentationLeaves::MEDFileFieldRepresentationLeaves():_cached_ds(0)
-{
-}
-
-MEDFileFieldRepresentationLeaves::MEDFileFieldRepresentationLeaves(const std::vector< MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS> >& arr,
-                                                                   const MEDCoupling::MCAuto<MEDCoupling::MEDFileFastCellSupportComparator>& fsp):_arrays(arr.size()),_fsp(fsp),_cached_ds(0)
-{
-  for(std::size_t i=0;i<arr.size();i++)
-    _arrays[i]=MEDFileFieldRepresentationLeavesArrays(arr[i]);
-}
-
-MEDFileFieldRepresentationLeaves::~MEDFileFieldRepresentationLeaves()
-{
-  if(_cached_ds)
-    _cached_ds->Delete();
-}
-
-bool MEDFileFieldRepresentationLeaves::empty() const
-{
-  const MEDFileFastCellSupportComparator *fcscp(_fsp);
-  return fcscp==0 || _arrays.empty();
-}
-
-void MEDFileFieldRepresentationLeaves::setId(int& id) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    (*it).setId(id);
-}
-
-std::string MEDFileFieldRepresentationLeaves::getMeshName() const
-{
-  return _arrays[0]->getMeshName();
-}
-
-int MEDFileFieldRepresentationLeaves::getNumberOfArrays() const
-{
-  return (int)_arrays.size();
-}
-
-int MEDFileFieldRepresentationLeaves::getNumberOfTS() const
-{
-  return _arrays[0]->getNumberOfTS();
-}
-
-void MEDFileFieldRepresentationLeaves::computeFullNameInLeaves(const std::string& tsName, const std::string& meshName, const std::string& comSupStr) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    (*it).computeFullNameInLeaves(tsName,meshName,comSupStr);
-}
-
-/*!
- * \param [in] ms is the meshes pointer. It can be used only for information of geometric types. No special processing will be requested on ms.
- * \param [in] meshName
- * \param [in] sil
- * \param [in] root
- * \param [in] edge
- * \param [out] names
- */
-void MEDFileFieldRepresentationLeaves::feedSIL(const MEDCoupling::MEDFileMeshes *ms, const std::string& meshName, vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const
-{
-  vtkIdType root2(sil->AddChild(root,edge));
-  names.push_back(std::string("Arrs"));
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    (*it).feedSIL(sil,root2,edge,names);
-  //
-  vtkIdType root3(sil->AddChild(root,edge));
-  names.push_back(std::string("InfoOnGeoType"));
-  const MEDCoupling::MEDFileMesh *m(0);
-  if(ms)
-    m=ms->getMeshWithName(meshName);
-  const MEDCoupling::MEDFileFastCellSupportComparator *fsp(_fsp);
-  if(!fsp || fsp->getNumberOfTS()==0)
-    return ;
-  std::vector< INTERP_KERNEL::NormalizedCellType > gts(fsp->getGeoTypesAt(0,m));
-  for(std::vector< INTERP_KERNEL::NormalizedCellType >::const_iterator it2=gts.begin();it2!=gts.end();it2++)
-    {
-      const INTERP_KERNEL::CellModel& cm(INTERP_KERNEL::CellModel::GetCellModel(*it2));
-      std::string cmStr(cm.getRepr()); cmStr=cmStr.substr(5);//skip "NORM_"
-      sil->AddChild(root3,edge);
-      names.push_back(cmStr);
-    }
-}
-
-bool MEDFileFieldRepresentationLeaves::containId(int id) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    if((*it).getId()==id)
-      return true;
-  return false;
-}
-
-bool MEDFileFieldRepresentationLeaves::containZeName(const char *name, int& id) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    if((*it).getZeName()==name)
-      {
-        id=(*it).getId();
-        return true;
-      }
-  return false;
-}
-
-void MEDFileFieldRepresentationLeaves::dumpState(std::map<std::string,bool>& status) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    status[(*it).getZeName()]=(*it).getStatus();
-}
-
-bool MEDFileFieldRepresentationLeaves::isActivated() const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    if((*it).getStatus())
-      return true;
-  return false;
-}
-
-void MEDFileFieldRepresentationLeaves::printMySelf(std::ostream& os) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it0=_arrays.begin();it0!=_arrays.end();it0++)
-    {
-      os << "         - " << (*it0).getZeName() << " (";
-      if((*it0).getStatus())
-        os << "X";
-      else
-        os << " ";
-      os << ")" << std::endl;
-    }
-}
-
-void MEDFileFieldRepresentationLeaves::activateAllArrays() const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    (*it).setStatus(true);
-}
-
-const MEDFileFieldRepresentationLeavesArrays& MEDFileFieldRepresentationLeaves::getLeafArr(int id) const
-{
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    if((*it).getId()==id)
-      return *it;
-  throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeaves::getLeafArr ! No such id !");
-}
-
-std::vector<double> MEDFileFieldRepresentationLeaves::getTimeSteps(const TimeKeeper& tk) const
-{
-  if(_arrays.size()<1)
-    throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeaves::getTimeSteps : the array size must be at least of size one !");
-  std::vector<double> ret;
-  std::vector< std::pair<int,int> > dtits(_arrays[0]->getTimeSteps(ret));
-  return tk.getTimeStepsRegardingPolicy(dtits,ret);
-}
-
-std::vector< std::pair<int,int> > MEDFileFieldRepresentationLeaves::getTimeStepsInCoarseMEDFileFormat(std::vector<double>& ts) const
-{
-  if(!_arrays.empty())
-    return _arrays[0]->getTimeSteps(ts);
-  else
-    {
-      ts.clear();
-      return std::vector< std::pair<int,int> >();
-    }
-}
-
-std::string MEDFileFieldRepresentationLeaves::getHumanReadableOverviewOfTS() const
-{
-  std::ostringstream oss;
-  oss << _arrays[0]->getNumberOfTS() << " time steps [" << _arrays[0]->getDtUnit() << "]\n(";
-  std::vector<double> ret1;
-  std::vector< std::pair<int,int> > ret2(getTimeStepsInCoarseMEDFileFormat(ret1));
-  std::size_t sz(ret1.size());
-  for(std::size_t i=0;i<sz;i++)
-    {
-      oss << ret1[i] << " (" << ret2[i].first << "," << ret2[i].second << ")";
-      if(i!=sz-1)
-        oss << ", ";
-      std::string tmp(oss.str());
-      if(tmp.size()>200 && i!=sz-1)
-        {
-          oss << "...";
-          break;
-        }
-    }
-  oss << ")";
-  return oss.str();
-}
-
-void MEDFileFieldRepresentationLeaves::appendFields(const MEDTimeReq *tr, const MEDCoupling::MEDFileFieldGlobsReal *globs, const MEDCoupling::MEDMeshMultiLev *mml, const MEDCoupling::MEDFileMeshes *meshes, vtkDataSet *ds, ExportedTinyInfo *internalInfo) const
-{
-  if(_arrays.size()<1)
-    throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeaves::appendFields : internal error !");
-  MCAuto<MEDFileMeshStruct> mst(MEDFileMeshStruct::New(meshes->getMeshWithName(_arrays[0]->getMeshName().c_str())));
-  for(std::vector<MEDFileFieldRepresentationLeavesArrays>::const_iterator it=_arrays.begin();it!=_arrays.end();it++)
-    if((*it).getStatus())
-      {
-        (*it).appendFields(tr,globs,mml,mst,ds,internalInfo);
-        (*it).appendELGAIfAny(ds);
-      }
-}
-
-vtkUnstructuredGrid *MEDFileFieldRepresentationLeaves::buildVTKInstanceNoTimeInterpolationUnstructured(MEDUMeshMultiLev *mm) const
-{
-  DataArrayDouble *coordsMC(0);
-  DataArrayByte *typesMC(0);
-  DataArrayIdType *cellLocationsMC(0),*cellsMC(0),*faceLocationsMC(0),*facesMC(0);
-  bool statusOfCoords(mm->buildVTUArrays(coordsMC,typesMC,cellLocationsMC,cellsMC,faceLocationsMC,facesMC));
-  MCAuto<DataArrayDouble> coordsSafe(coordsMC);
-  MCAuto<DataArrayByte> typesSafe(typesMC);
-  MCAuto<DataArrayIdType> cellLocationsSafe(cellLocationsMC),cellsSafe(cellsMC),faceLocationsSafe(faceLocationsMC),facesSafe(facesMC);
-  //
-  vtkIdType nbOfCells(typesSafe->getNbOfElems());
-  vtkUnstructuredGrid *ret(vtkUnstructuredGrid::New());
-  vtkUnsignedCharArray *cellTypes(vtkUnsignedCharArray::New());
-  AssignDataPointerOther<vtkUnsignedCharArray,DataArrayByte>(cellTypes,typesSafe,nbOfCells);
-  vtkIdTypeArray *cellLocations(vtkIdTypeArray::New());
-  AssignDataPointerOther<vtkIdTypeArray,DataArrayIdType>(cellLocations,cellLocationsSafe,nbOfCells);
-  vtkCellArray *cells(vtkCellArray::New());
-  vtkIdTypeArray *cells2(vtkIdTypeArray::New());
-  AssignDataPointerOther<vtkIdTypeArray,DataArrayIdType>(cells2,cellsSafe,cellsSafe->getNbOfElems());
-  cells->SetCells(nbOfCells,cells2);
-  cells2->Delete();
-  if(faceLocationsMC!=0 && facesMC!=0)
-    {
-      vtkIdTypeArray *faces(vtkIdTypeArray::New());
-      AssignDataPointerOther<vtkIdTypeArray,DataArrayIdType>(faces,facesSafe,facesSafe->getNbOfElems());
-      vtkIdTypeArray *faceLocations(vtkIdTypeArray::New());
-      AssignDataPointerOther<vtkIdTypeArray,DataArrayIdType>(faceLocations,faceLocationsSafe,faceLocationsSafe->getNbOfElems());
-      ret->SetCells(cellTypes,cellLocations,cells,faceLocations,faces);
-      faceLocations->Delete();
-      faces->Delete();
-    }
-  else
-    ret->SetCells(cellTypes,cellLocations,cells);
-  cellTypes->Delete();
-  cellLocations->Delete();
-  cells->Delete();
-  vtkPoints *pts(vtkPoints::New());
-  vtkDoubleArray *pts2(vtkDoubleArray::New());
-  pts2->SetNumberOfComponents(3);
-  AssignDataPointerToVTK<double>(pts2,coordsSafe,statusOfCoords);
-  pts->SetData(pts2);
-  pts2->Delete();
-  ret->SetPoints(pts);
-  pts->Delete();
-  //
-  return ret;
-}
-
-vtkRectilinearGrid *MEDFileFieldRepresentationLeaves::buildVTKInstanceNoTimeInterpolationCartesian(MEDCoupling::MEDCMeshMultiLev *mm) const
-{
-  bool isInternal;
-  std::vector< DataArrayDouble * > arrs(mm->buildVTUArrays(isInternal));
-  vtkDoubleArray *vtkTmp(0);
-  vtkRectilinearGrid *ret(vtkRectilinearGrid::New());
-  std::size_t dim(arrs.size());
-  if(dim<1 || dim>3)
-    throw INTERP_KERNEL::Exception("buildVTKInstanceNoTimeInterpolationCartesian : dimension must be in [1,3] !");
-  int sizePerAxe[3]={1,1,1};
-  sizePerAxe[0]=arrs[0]->getNbOfElems();
-  if(dim>=2)
-    sizePerAxe[1]=arrs[1]->getNbOfElems();
-  if(dim==3)
-    sizePerAxe[2]=arrs[2]->getNbOfElems();
-  ret->SetDimensions(sizePerAxe[0],sizePerAxe[1],sizePerAxe[2]);
-  vtkTmp=vtkDoubleArray::New();
-  vtkTmp->SetNumberOfComponents(1);
-  AssignDataPointerToVTK<double>(vtkTmp,arrs[0],isInternal);
-  ret->SetXCoordinates(vtkTmp);
-  vtkTmp->Delete();
-  arrs[0]->decrRef();
-  if(dim>=2)
-    {
-      vtkTmp=vtkDoubleArray::New();
-      vtkTmp->SetNumberOfComponents(1);
-      AssignDataPointerToVTK<double>(vtkTmp,arrs[1],isInternal);
-      ret->SetYCoordinates(vtkTmp);
-      vtkTmp->Delete();
-      arrs[1]->decrRef();
-    }
-  if(dim==3)
-    {
-      vtkTmp=vtkDoubleArray::New();
-      vtkTmp->SetNumberOfComponents(1);
-      AssignDataPointerToVTK<double>(vtkTmp,arrs[2],isInternal);
-      ret->SetZCoordinates(vtkTmp);
-      vtkTmp->Delete();
-      arrs[2]->decrRef();
-    }
-  return ret;
-}
-
-vtkStructuredGrid *MEDFileFieldRepresentationLeaves::buildVTKInstanceNoTimeInterpolationCurveLinear(MEDCoupling::MEDCurveLinearMeshMultiLev *mm) const
-{
-  int meshStr[3]={1,1,1};
-  DataArrayDouble *coords(0);
-  std::vector<mcIdType> nodeStrct;
-  bool isInternal;
-  mm->buildVTUArrays(coords,nodeStrct,isInternal);
-  std::size_t dim(nodeStrct.size());
-  if(dim<1 || dim>3)
-    throw INTERP_KERNEL::Exception("buildVTKInstanceNoTimeInterpolationCurveLinear : dimension must be in [1,3] !");
-  meshStr[0]=nodeStrct[0];
-  if(dim>=2)
-    meshStr[1]=nodeStrct[1];
-  if(dim==3)
-    meshStr[2]=nodeStrct[2];
-  vtkStructuredGrid *ret(vtkStructuredGrid::New());
-  ret->SetDimensions(meshStr[0],meshStr[1],meshStr[2]);
-  vtkDoubleArray *da(vtkDoubleArray::New());
-  da->SetNumberOfComponents(3);
-  if(coords->getNumberOfComponents()==3)
-    AssignDataPointerToVTK<double>(da,coords,isInternal);//if isIntenal==True VTK has not the ownership of double * because MEDLoader main struct has it !
-  else
-    {
-      MCAuto<DataArrayDouble> coords2(coords->changeNbOfComponents(3,0.));
-      AssignDataPointerToVTK<double>(da,coords2,false);//let VTK deal with double *
-    }
-  coords->decrRef();
-  vtkPoints *points=vtkPoints::New();
-  ret->SetPoints(points);
-  points->SetData(da);
-  points->Delete();
-  da->Delete();
-  return ret;
-}
-
-vtkDataSet *MEDFileFieldRepresentationLeaves::buildVTKInstanceNoTimeInterpolation(const MEDTimeReq *tr, const MEDFileFieldGlobsReal *globs, const MEDCoupling::MEDFileMeshes *meshes, bool debugArrays, ExportedTinyInfo *internalInfo) const
-{
-  vtkDataSet *ret(0);
-  //_fsp->isDataSetSupportEqualToThePreviousOne(i,globs);
-  MCAuto<MEDMeshMultiLev> mml(_fsp->buildFromScratchDataSetSupport(0,globs));//0=timestep Id. Make the hypothesis that support does not change 
-  MCAuto<MEDMeshMultiLev> mml2(mml->prepare());
-  MEDMeshMultiLev *ptMML2(mml2);
-  if(!_cached_ds)
-    {
-      MEDUMeshMultiLev *ptUMML2(dynamic_cast<MEDUMeshMultiLev *>(ptMML2));
-      MEDCMeshMultiLev *ptCMML2(dynamic_cast<MEDCMeshMultiLev *>(ptMML2));
-      MEDCurveLinearMeshMultiLev *ptCLMML2(dynamic_cast<MEDCurveLinearMeshMultiLev *>(ptMML2));
-      
-      if(ptUMML2)
-        {
-          ret=buildVTKInstanceNoTimeInterpolationUnstructured(ptUMML2);
-        }
-      else if(ptCMML2)
-        {
-          ret=buildVTKInstanceNoTimeInterpolationCartesian(ptCMML2);
-        }
-      else if(ptCLMML2)
-        {
-          ret=buildVTKInstanceNoTimeInterpolationCurveLinear(ptCLMML2);
-        }
-      else
-        throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationLeaves::buildVTKInstanceNoTimeInterpolation : unrecognized mesh ! Supported for the moment unstructured, cartesian, curvelinear !");
-      _cached_ds=ret->NewInstance();
-      _cached_ds->ShallowCopy(ret);
-    }
-  else
-    {
-      ret=_cached_ds->NewInstance();
-      ret->ShallowCopy(_cached_ds);
-    }
-  //
-  appendFields(tr,globs,mml,meshes,ret,internalInfo);
-  // The arrays links to mesh
-  DataArrayIdType *famCells(0),*numCells(0);
-  bool noCpyFamCells(false),noCpyNumCells(false);
-  ptMML2->retrieveFamilyIdsOnCells(famCells,noCpyFamCells);
-  if(famCells)
-    {
-      vtkMCIdTypeArray *vtkTab(vtkMCIdTypeArray::New());
-      vtkTab->SetNumberOfComponents(1);
-      vtkTab->SetName(MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME);
-      AssignDataPointerToVTK<mcIdType>(vtkTab,famCells,noCpyFamCells);
-      ret->GetCellData()->AddArray(vtkTab);
-      vtkTab->Delete();
-      famCells->decrRef();
-    }
-  ptMML2->retrieveNumberIdsOnCells(numCells,noCpyNumCells);
-  if(numCells && debugArrays)
-    {
-      vtkMCIdTypeArray *vtkTab(vtkMCIdTypeArray::New());
-      vtkTab->SetNumberOfComponents(1);
-      vtkTab->SetName(MEDFileFieldRepresentationLeavesArrays::NUM_ID_CELL_NAME);
-      AssignDataPointerToVTK<mcIdType>(vtkTab,numCells,noCpyNumCells);
-      ret->GetCellData()->AddArray(vtkTab);
-      vtkTab->Delete();
-      numCells->decrRef();
-    }
-  // The arrays links to mesh
-  DataArrayIdType *famNodes(0),*numNodes(0);
-  bool noCpyFamNodes(false),noCpyNumNodes(false);
-  ptMML2->retrieveFamilyIdsOnNodes(famNodes,noCpyFamNodes);
-  if(famNodes)
-    {
-      vtkMCIdTypeArray *vtkTab(vtkMCIdTypeArray::New());
-      vtkTab->SetNumberOfComponents(1);
-      vtkTab->SetName(MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME);
-      AssignDataPointerToVTK<mcIdType>(vtkTab,famNodes,noCpyFamNodes);
-      ret->GetPointData()->AddArray(vtkTab);
-      vtkTab->Delete();
-      famNodes->decrRef();
-    }
-  ptMML2->retrieveNumberIdsOnNodes(numNodes,noCpyNumNodes);
-  if(numNodes && debugArrays)
-    {
-      vtkMCIdTypeArray *vtkTab(vtkMCIdTypeArray::New());
-      vtkTab->SetNumberOfComponents(1);
-      vtkTab->SetName(MEDFileFieldRepresentationLeavesArrays::NUM_ID_NODE_NAME);
-      AssignDataPointerToVTK<mcIdType>(vtkTab,numNodes,noCpyNumNodes);
-      ret->GetPointData()->AddArray(vtkTab);
-      vtkTab->Delete();
-      numNodes->decrRef();
-    }
-  // Global Node Ids if any ! (In // mode)
-  DataArrayIdType *gni(ptMML2->retrieveGlobalNodeIdsIfAny());
-  if(gni)
-    {
-      vtkMCIdTypeArray *vtkTab(vtkMCIdTypeArray::New());
-      vtkTab->SetNumberOfComponents(1);
-      vtkTab->SetName(MEDFileFieldRepresentationLeavesArrays::GLOBAL_NODE_ID_NAME);
-      AssignDataPointerToVTK<mcIdType>(vtkTab,gni,false);
-      ret->GetPointData()->AddArray(vtkTab);
-      vtkTab->Delete();
-      gni->decrRef();
-    }
-  return ret;
-}
-
-//////////////////////
-
-MEDFileFieldRepresentationTree::MEDFileFieldRepresentationTree()
-{
-}
-
-int MEDFileFieldRepresentationTree::getNumberOfLeavesArrays() const
-{
-  int ret(0);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        ret+=(*it2).getNumberOfArrays();
-  return ret;
-}
-
-void MEDFileFieldRepresentationTree::assignIds() const
-{
-  int zeId(0);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        (*it2).setId(zeId);
-}
-
-void MEDFileFieldRepresentationTree::computeFullNameInLeaves() const
-{
-   std::size_t it0Cnt(0);
-   for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++,it0Cnt++)
-     {
-       std::ostringstream oss; oss << MEDFileFieldRepresentationLeavesArrays::TS_STR << it0Cnt;
-       std::string tsName(oss.str());
-       for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-         {
-           std::string meshName((*it1)[0].getMeshName());
-           std::size_t it2Cnt(0);
-           for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++,it2Cnt++)
-             {
-               std::ostringstream oss2; oss2 << MEDFileFieldRepresentationLeavesArrays::COM_SUP_STR << it2Cnt;
-               std::string comSupStr(oss2.str());
-               (*it2).computeFullNameInLeaves(tsName,meshName,comSupStr);
-             }
-         }
-     }
-}
-
-void MEDFileFieldRepresentationTree::activateTheFirst() const
-{
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        {
-          (*it2).activateAllArrays();
-          return ;
-        }
-}
-
-void MEDFileFieldRepresentationTree::feedSIL(vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const
-{
-  std::size_t it0Cnt(0);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++,it0Cnt++)
-    {
-      vtkIdType InfoOnTSId(sil->AddChild(root,edge));
-      names.push_back((*it0)[0][0].getHumanReadableOverviewOfTS());
-      //
-      vtkIdType NbOfTSId(sil->AddChild(InfoOnTSId,edge));
-      std::vector<double> ts;
-      std::vector< std::pair<int,int> > dtits((*it0)[0][0].getTimeStepsInCoarseMEDFileFormat(ts));
-      std::size_t nbOfTS(dtits.size());
-      std::ostringstream oss3; oss3 << nbOfTS;
-      names.push_back(oss3.str());
-      for(std::size_t i=0;i<nbOfTS;i++)
-        {
-          std::ostringstream oss4; oss4 << dtits[i].first;
-          vtkIdType DtId(sil->AddChild(NbOfTSId,edge));
-          names.push_back(oss4.str());
-          std::ostringstream oss5; oss5 << dtits[i].second;
-          vtkIdType ItId(sil->AddChild(DtId,edge));
-          names.push_back(oss5.str());
-          std::ostringstream oss6; oss6 << ts[i];
-          sil->AddChild(ItId,edge);
-          names.push_back(oss6.str());
-        }
-      //
-      std::ostringstream oss; oss << MEDFileFieldRepresentationLeavesArrays::TS_STR << it0Cnt;
-      std::string tsName(oss.str());
-      vtkIdType typeId0(sil->AddChild(root,edge));
-      names.push_back(tsName);
-      for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-        {
-          std::string meshName((*it1)[0].getMeshName());
-          vtkIdType typeId1(sil->AddChild(typeId0,edge));
-          names.push_back(meshName);
-          std::size_t it2Cnt(0);
-          for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++,it2Cnt++)
-            {
-              std::ostringstream oss2; oss2 << MEDFileFieldRepresentationLeavesArrays::COM_SUP_STR << it2Cnt;
-              std::string comSupStr(oss2.str());
-              vtkIdType typeId2(sil->AddChild(typeId1,edge));
-              names.push_back(comSupStr);
-              (*it2).feedSIL(_ms,meshName,sil,typeId2,edge,names);
-            } 
-        }
-    }
-}
-
-std::string MEDFileFieldRepresentationTree::getActiveMeshName() const
-{
-  int dummy0(0),dummy1(0),dummy2(0);
-  const MEDFileFieldRepresentationLeaves& leaf(getTheSingleActivated(dummy0,dummy1,dummy2));
-  return leaf.getMeshName();
-}
-
-std::string MEDFileFieldRepresentationTree::feedSILForFamsAndGrps(vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const
-{
-  int dummy0(0),dummy1(0),dummy2(0);
-  const MEDFileFieldRepresentationLeaves& leaf(getTheSingleActivated(dummy0,dummy1,dummy2));
-  std::string ret(leaf.getMeshName());
-  int i(0);
-  MEDFileMesh *m(0);
-  for(;i<_ms->getNumberOfMeshes();i++)
-    {
-      m=_ms->getMeshAtPos(i);
-      if(m->getName()==ret)
-        break;
-    }
-  if(i==_ms->getNumberOfMeshes())
-    throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationTree::feedSILForFamsAndGrps : internal error #0 !");
-  vtkIdType typeId0(sil->AddChild(root,edge));
-  names.push_back(m->getName());
-  //
-  vtkIdType typeId1(sil->AddChild(typeId0,edge));
-  names.push_back(std::string(ROOT_OF_GRPS_IN_TREE));
-  std::vector<std::string> grps(m->getGroupsNames());
-  for(std::vector<std::string>::const_iterator it0=grps.begin();it0!=grps.end();it0++)
-    {
-      vtkIdType typeId2(sil->AddChild(typeId1,edge));
-      names.push_back(*it0);
-      std::vector<std::string> famsOnGrp(m->getFamiliesOnGroup((*it0).c_str()));
-      for(std::vector<std::string>::const_iterator it1=famsOnGrp.begin();it1!=famsOnGrp.end();it1++)
-        {
-          sil->AddChild(typeId2,edge);
-          names.push_back((*it1).c_str());
-        }
-    }
-  //
-  vtkIdType typeId11(sil->AddChild(typeId0,edge));
-  names.push_back(std::string(ROOT_OF_FAM_IDS_IN_TREE));
-  std::vector<std::string> fams(m->getFamiliesNames());
-  for(std::vector<std::string>::const_iterator it00=fams.begin();it00!=fams.end();it00++)
-    {
-      sil->AddChild(typeId11,edge);
-      int famId(m->getFamilyId((*it00).c_str()));
-      std::ostringstream oss; oss << (*it00) << MEDFileFieldRepresentationLeavesArrays::ZE_SEP << famId;
-      names.push_back(oss.str());
-    }
-  return ret;
-}
-
-const MEDFileFieldRepresentationLeavesArrays& MEDFileFieldRepresentationTree::getLeafArr(int id) const
-{
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        if((*it2).containId(id))
-          return (*it2).getLeafArr(id);
-  throw INTERP_KERNEL::Exception("Internal error in MEDFileFieldRepresentationTree::getLeafArr !");
-}
-
-std::string MEDFileFieldRepresentationTree::getNameOf(int id) const
-{
-  const MEDFileFieldRepresentationLeavesArrays& elt(getLeafArr(id));
-  return elt.getZeName();
-}
-
-const char *MEDFileFieldRepresentationTree::getNameOfC(int id) const
-{
-  const MEDFileFieldRepresentationLeavesArrays& elt(getLeafArr(id));
-  return elt.getZeNameC();
-}
-
-bool MEDFileFieldRepresentationTree::getStatusOf(int id) const
-{
-  const MEDFileFieldRepresentationLeavesArrays& elt(getLeafArr(id));
-  return elt.getStatus();
-}
-
-int MEDFileFieldRepresentationTree::getIdHavingZeName(const char *name) const
-{
-  int ret(-1);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        if((*it2).containZeName(name,ret))
-          return ret;
-  std::ostringstream msg; msg << "MEDFileFieldRepresentationTree::getIdHavingZeName : No such a name \"" << name << "\" !";
-  throw INTERP_KERNEL::Exception(msg.str().c_str());
-}
-
-bool MEDFileFieldRepresentationTree::changeStatusOfAndUpdateToHaveCoherentVTKDataSet(int id, bool status) const
-{
-  const MEDFileFieldRepresentationLeavesArrays& elt(getLeafArr(id));
-  bool ret(elt.setStatus(status));//to be implemented
-  return ret;
-}
-
-int MEDFileFieldRepresentationTree::getMaxNumberOfTimeSteps() const
-{
-  int ret(0);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        ret=std::max(ret,(*it2).getNumberOfTS());
-  return ret;
-}
-
-/*!
- * 
- */
-void MEDFileFieldRepresentationTree::loadInMemory(MEDCoupling::MEDFileFields *fields, MEDCoupling::MEDFileMeshes *meshes)
-{
-  _fields=fields; _ms=meshes;
-  if(_fields.isNotNull())
-    _fields->incrRef();
-  if(_ms.isNotNull())
-    _ms->incrRef();
-  //
-  if(_fields.isNull())
-    {
-      _fields=BuildFieldFromMeshes(_ms);
-    }
-  else
-    {
-      AppendFieldFromMeshes(_ms,_fields);
-    }
-  _ms->cartesianizeMe();
-  _fields->removeFieldsWithoutAnyTimeStep();
-  std::vector<std::string> meshNames(_ms->getMeshesNames());
-  std::vector< MCAuto<MEDFileFields> > fields_per_mesh(meshNames.size());
-  for(std::size_t i=0;i<meshNames.size();i++)
-    {
-      fields_per_mesh[i]=_fields->partOfThisLyingOnSpecifiedMeshName(meshNames[i].c_str());
-    }
-  std::vector< MCAuto<MEDFileAnyTypeFieldMultiTS > > allFMTSLeavesToDisplaySafe;
-  for(std::vector< MCAuto<MEDFileFields> >::const_iterator fields=fields_per_mesh.begin();fields!=fields_per_mesh.end();fields++)
-    {
-      for(int j=0;j<(*fields)->getNumberOfFields();j++)
-        {
-          MCAuto<MEDFileAnyTypeFieldMultiTS> fmts((*fields)->getFieldAtPos((int)j));
-          std::vector< MCAuto< MEDFileAnyTypeFieldMultiTS > > tmp(fmts->splitDiscretizations());
-          // EDF 8655
-          for(std::vector< MCAuto< MEDFileAnyTypeFieldMultiTS > >::const_iterator it=tmp.begin();it!=tmp.end();it++)
-            {
-              if(!(*it)->presenceOfMultiDiscPerGeoType())
-                allFMTSLeavesToDisplaySafe.push_back(*it);
-              else
-                {// The case of some parts of field have more than one discretization per geo type.
-                  std::vector< MCAuto< MEDFileAnyTypeFieldMultiTS > > subTmp((*it)->splitMultiDiscrPerGeoTypes());
-                  std::size_t it0Cnt(0);
-                  for(std::vector< MCAuto< MEDFileAnyTypeFieldMultiTS > >::iterator it0=subTmp.begin();it0!=subTmp.end();it0++,it0Cnt++)//not const because setName
-                    {
-                      std::ostringstream oss; oss << (*it0)->getName() << "_" << std::setfill('M') << std::setw(3) << it0Cnt;
-                      (*it0)->setName(oss.str());
-                      allFMTSLeavesToDisplaySafe.push_back(*it0);
-                    }
-                }
-            }
-         // end EDF 8655
-        }
-    }
-  std::vector< MEDFileAnyTypeFieldMultiTS *> allFMTSLeavesToDisplay(allFMTSLeavesToDisplaySafe.size());
-  for(std::size_t i=0;i<allFMTSLeavesToDisplaySafe.size();i++)
-    {
-      allFMTSLeavesToDisplay[i]=allFMTSLeavesToDisplaySafe[i];
-    }
-  std::vector< std::vector<MEDFileAnyTypeFieldMultiTS *> > allFMTSLeavesPerTimeSeries(MEDFileAnyTypeFieldMultiTS::SplitIntoCommonTimeSeries(allFMTSLeavesToDisplay));
-  // memory safety part
-  std::vector< std::vector< MCAuto<MEDFileAnyTypeFieldMultiTS> > > allFMTSLeavesPerTimeSeriesSafe(allFMTSLeavesPerTimeSeries.size());
-  for(std::size_t j=0;j<allFMTSLeavesPerTimeSeries.size();j++)
-    {
-      allFMTSLeavesPerTimeSeriesSafe[j].resize(allFMTSLeavesPerTimeSeries[j].size());
-      for(std::size_t k=0;k<allFMTSLeavesPerTimeSeries[j].size();k++)
-        {
-          allFMTSLeavesPerTimeSeries[j][k]->incrRef();//because MEDFileAnyTypeFieldMultiTS::SplitIntoCommonTimeSeries do not increments the counter
-          allFMTSLeavesPerTimeSeriesSafe[j][k]=allFMTSLeavesPerTimeSeries[j][k];
-        }
-    }
-  // end of memory safety part
-  // 1st : timesteps, 2nd : meshName, 3rd : common support
-  this->_data_structure.resize(allFMTSLeavesPerTimeSeriesSafe.size());
-  for(std::size_t i=0;i<allFMTSLeavesPerTimeSeriesSafe.size();i++)
-    {
-      std::vector< std::string > meshNamesLoc;
-      std::vector< std::vector< MCAuto<MEDFileAnyTypeFieldMultiTS> > > splitByMeshName;
-      for(std::size_t j=0;j<allFMTSLeavesPerTimeSeriesSafe[i].size();j++)
-        {
-          std::string meshName(allFMTSLeavesPerTimeSeriesSafe[i][j]->getMeshName());
-          std::vector< std::string >::iterator it(std::find(meshNamesLoc.begin(),meshNamesLoc.end(),meshName));
-          if(it==meshNamesLoc.end())
-            {
-              meshNamesLoc.push_back(meshName);
-              splitByMeshName.resize(splitByMeshName.size()+1);
-              splitByMeshName.back().push_back(allFMTSLeavesPerTimeSeriesSafe[i][j]);
-            }
-          else
-            splitByMeshName[std::distance(meshNamesLoc.begin(),it)].push_back(allFMTSLeavesPerTimeSeriesSafe[i][j]);
-        }
-      _data_structure[i].resize(meshNamesLoc.size());
-      for(std::size_t j=0;j<splitByMeshName.size();j++)
-        {
-          std::vector< MCAuto<MEDFileFastCellSupportComparator> > fsp;
-          std::vector< MEDFileAnyTypeFieldMultiTS *> sbmn(splitByMeshName[j].size());
-          for(std::size_t k=0;k<splitByMeshName[j].size();k++)
-            sbmn[k]=splitByMeshName[j][k];
-          //getMeshWithName does not return a newly allocated object ! It is a true get* method !
-          std::vector< std::vector<MEDFileAnyTypeFieldMultiTS *> > commonSupSplit(MEDFileAnyTypeFieldMultiTS::SplitPerCommonSupport(sbmn,_ms->getMeshWithName(meshNamesLoc[j].c_str()),fsp));
-          std::vector< std::vector< MCAuto<MEDFileAnyTypeFieldMultiTS> > > commonSupSplitSafe(commonSupSplit.size());
-          this->_data_structure[i][j].resize(commonSupSplit.size());
-          for(std::size_t k=0;k<commonSupSplit.size();k++)
-            {
-              commonSupSplitSafe[k].resize(commonSupSplit[k].size());
-              for(std::size_t l=0;l<commonSupSplit[k].size();l++)
-                {
-                  commonSupSplit[k][l]->incrRef();//because MEDFileAnyTypeFieldMultiTS::SplitPerCommonSupport does not increment pointers !
-                  commonSupSplitSafe[k][l]=commonSupSplit[k][l];
-                }
-            }
-          for(std::size_t k=0;k<commonSupSplit.size();k++)
-            this->_data_structure[i][j][k]=MEDFileFieldRepresentationLeaves(commonSupSplitSafe[k],fsp[k]);
-        }
-    }
-  this->removeEmptyLeaves();
-  this->assignIds();
-  this->computeFullNameInLeaves();
-}
-
-void MEDFileFieldRepresentationTree::loadMainStructureOfFile(const char *fileName, int iPart, int nbOfParts)
-{
-  MCAuto<MEDFileMeshes> ms;
-  MCAuto<MEDFileFields> fields;
-    {
-      if((iPart==-1 && nbOfParts==-1) || (iPart==0 && nbOfParts==1))
-        {
-          MCAuto<MEDFileMeshSupports> msups(MEDFileMeshSupports::New(fileName));
-          MCAuto<MEDFileStructureElements> mse(MEDFileStructureElements::New(fileName,msups));
-          ms=MEDFileMeshes::New(fileName);
-          fields=MEDFileFields::NewWithDynGT(fileName,mse,false);//false is important to not read the values
-          if(ms->presenceOfStructureElements())
-            {// pre traitement
-              fields->loadArrays();
-              fields->blowUpSE(ms,mse);
-            }
-          int nbMeshes(ms->getNumberOfMeshes());
-          for(int i=0;i<nbMeshes;i++)
-            {
-              MEDCoupling::MEDFileMesh *tmp(ms->getMeshAtPos(i));
-              MEDCoupling::MEDFileUMesh *tmp2(dynamic_cast<MEDCoupling::MEDFileUMesh *>(tmp));
-              if(tmp2)
-                tmp2->forceComputationOfParts();
-            }
-        }
-      else
-        {
-#ifdef MEDREADER_USE_MPI
-          ms=ParaMEDFileMeshes::New(iPart,nbOfParts,fileName);
-          int nbMeshes(ms->getNumberOfMeshes());
-          for(int i=0;i<nbMeshes;i++)
-            {
-              MEDCoupling::MEDFileMesh *tmp(ms->getMeshAtPos(i));
-              MEDCoupling::MEDFileUMesh *tmp2(dynamic_cast<MEDCoupling::MEDFileUMesh *>(tmp));
-              if(tmp2)
-                MCAuto<DataArrayIdType> tmp3(tmp2->zipCoords());
-            }
-          fields=MEDFileFields::LoadPartOf(fileName,false,ms);//false is important to not read the values
-#else
-          std::ostringstream oss; oss << "MEDFileFieldRepresentationTree::loadMainStructureOfFile : request for iPart/nbOfParts=" << iPart << "/" << nbOfParts << " whereas Plugin not compiled with MPI !";
-          throw INTERP_KERNEL::Exception(oss.str().c_str());
-#endif
-        }
-    }
-  loadInMemory(fields,ms);
-}
-
-void MEDFileFieldRepresentationTree::removeEmptyLeaves()
-{
-  std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > > newSD;
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    {
-      std::vector< std::vector< MEDFileFieldRepresentationLeaves > > newSD0;
-      for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-        {
-          std::vector< MEDFileFieldRepresentationLeaves > newSD1;
-          for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-            if(!(*it2).empty())
-              newSD1.push_back(*it2);
-          if(!newSD1.empty())
-            newSD0.push_back(newSD1);
-        }
-      if(!newSD0.empty())
-        newSD.push_back(newSD0);
-    }
-}
-
-bool MEDFileFieldRepresentationTree::IsFieldMeshRegardingInfo(const std::vector<std::string>& compInfos)
-{
-  if(compInfos.size()!=1)
-    return false;
-  return compInfos[0]==COMPO_STR_TO_LOCATE_MESH_DA;
-}
-
-std::string MEDFileFieldRepresentationTree::getDftMeshName() const
-{
-  return _data_structure[0][0][0].getMeshName();
-}
-
-std::vector<double> MEDFileFieldRepresentationTree::getTimeSteps(int& lev0, const TimeKeeper& tk) const
-{
-  int lev1,lev2;
-  const MEDFileFieldRepresentationLeaves& leaf(getTheSingleActivated(lev0,lev1,lev2));
-  return leaf.getTimeSteps(tk);
-}
-
-vtkDataSet *MEDFileFieldRepresentationTree::buildVTKInstance(bool isStdOrMode, double timeReq, std::string& meshName, const TimeKeeper& tk, bool debugArrays, ExportedTinyInfo *internalInfo) const
-{
-  int lev0,lev1,lev2;
-  const MEDFileFieldRepresentationLeaves& leaf(getTheSingleActivated(lev0,lev1,lev2));
-  meshName=leaf.getMeshName();
-  std::vector<double> ts(leaf.getTimeSteps(tk));
-  std::size_t zeTimeId(0);
-  if(ts.size()!=1)
-    {
-      std::vector<double> ts2(ts.size());
-      std::transform(ts.begin(),ts.end(),ts2.begin(),std::bind(std::plus<double>(),std::placeholders::_1,-timeReq));
-      std::transform(ts2.begin(),ts2.end(),ts2.begin(),[](double c) {return fabs(c);});
-      zeTimeId=std::distance(ts2.begin(),std::find_if(ts2.begin(),ts2.end(),std::bind(std::less<double>(),std::placeholders::_1,1e-14)));
-    }
-  //2nd chance
-  if(zeTimeId==ts.size())
-    zeTimeId=std::distance(ts.begin(),std::find(ts.begin(),ts.end(),timeReq));
-  if(zeTimeId==ts.size())
-    {//OK the time requested does not fit time series given to ParaView. It is typically the case if more than one MEDReader instance are created or TimeInspector in real time mode.
-      //In this case the default behaviour is taken. Keep the highest time step in this lower than timeReq.
-      int pos(-1);
-      double valAttachedToPos(-std::numeric_limits<double>::max());
-      for(std::size_t i=0;i<ts.size();i++)
-        {
-          if(ts[i]<timeReq)
-            {
-              if(ts[i]>valAttachedToPos)
-                {
-                  pos=(int)i;
-                  valAttachedToPos=ts[i];
-                }
-            }
-        }
-      if(pos==-1)
-        {// timeReq is lower than all time steps (ts). So let's keep the lowest time step greater than timeReq.
-          valAttachedToPos=std::numeric_limits<double>::max();
-          for(std::size_t i=0;i<ts.size();i++)
-            {
-              if(ts[i]<valAttachedToPos)
-                {
-                  pos=(int)i;
-                  valAttachedToPos=ts[i];
-                }
-            }
-        }
-      zeTimeId=pos;
-      std::ostringstream oss; oss.precision(15); oss << "request for time " << timeReq << " but not in ";
-      std::copy(ts.begin(),ts.end(),std::ostream_iterator<double>(oss,","));
-      oss << " ! Keep time " << valAttachedToPos << " at pos #" << zeTimeId;
-      std::cerr << oss.str() << std::endl;
-    }
-  MEDTimeReq *tr(0);
-  if(!isStdOrMode)
-    tr=new MEDStdTimeReq((int)zeTimeId);
-  else
-    tr=new MEDModeTimeReq(tk.getTheVectOfBool(),tk.getPostProcessedTime());
-  vtkDataSet *ret(leaf.buildVTKInstanceNoTimeInterpolation(tr,_fields,_ms,debugArrays,internalInfo));
-  delete tr;
-  return ret;
-}
-
-const MEDFileFieldRepresentationLeaves& MEDFileFieldRepresentationTree::getTheSingleActivated(int& lev0, int& lev1, int& lev2) const
-{
-  int nbOfActivated(0);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        if((*it2).isActivated())
-          nbOfActivated++;
-  if(nbOfActivated!=1)
-    {
-      std::ostringstream oss; oss << "MEDFileFieldRepresentationTree::getTheSingleActivated : Only one leaf must be activated ! Having " << nbOfActivated << " !";
-      throw INTERP_KERNEL::Exception(oss.str().c_str());
-    }
-  int i0(0),i1(0),i2(0);
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++,i0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++,i1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++,i2++)
-        if((*it2).isActivated())
-          {
-            lev0=i0; lev1=i1; lev2=i2;
-            return *it2;
-          }
-  throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationTree::getTheSingleActivated : Internal error !");
-}
-
-void MEDFileFieldRepresentationTree::printMySelf(std::ostream& os) const
-{
-  int i(0);
-  os << "#############################################" << std::endl;
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++,i++)
-    {
-      int j(0);
-      os << "TS" << i << std::endl;
-      for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++,j++)
-        {
-          int k(0);
-          for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++,k++)
-            {
-              if(k==0)
-                os << "   " << (*it2).getMeshName() << std::endl;
-              os << "      Comp" << k  << std::endl;
-              (*it2).printMySelf(os);
-            }
-        }
-    }
-    os << "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$" << std::endl;
-}
-
-std::map<std::string,bool> MEDFileFieldRepresentationTree::dumpState() const
-{
-  std::map<std::string,bool> ret;
-  for(std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > >::const_iterator it0=_data_structure.begin();it0!=_data_structure.end();it0++)
-    for(std::vector< std::vector< MEDFileFieldRepresentationLeaves > >::const_iterator it1=(*it0).begin();it1!=(*it0).end();it1++)
-      for(std::vector< MEDFileFieldRepresentationLeaves >::const_iterator it2=(*it1).begin();it2!=(*it1).end();it2++)
-        (*it2).dumpState(ret);
-  return ret;
-}
-
-void MEDFileFieldRepresentationTree::AppendFieldFromMeshes(const MEDCoupling::MEDFileMeshes *ms, MEDCoupling::MEDFileFields *ret)
-{
-  if(!ret)
-    throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationTree::AppendFieldFromMeshes : internal error ! NULL ret !");
-  for(int i=0;i<ms->getNumberOfMeshes();i++)
-    {
-      MEDFileMesh *mm(ms->getMeshAtPos(i));
-      std::vector<int> levs(mm->getNonEmptyLevels());
-      MEDCoupling::MCAuto<MEDCoupling::MEDFileField1TS> f1tsMultiLev(MEDCoupling::MEDFileField1TS::New());
-      MEDFileUMesh *mmu(dynamic_cast<MEDFileUMesh *>(mm));
-      if(mmu)
-        {
-          for(std::vector<int>::const_iterator it=levs.begin();it!=levs.end();it++)
-            {
-              std::vector<INTERP_KERNEL::NormalizedCellType> gts(mmu->getGeoTypesAtLevel(*it));
-              for(std::vector<INTERP_KERNEL::NormalizedCellType>::const_iterator gt=gts.begin();gt!=gts.end();gt++)
-                {
-                  MEDCoupling::MEDCouplingMesh *m(mmu->getDirectUndergroundSingleGeoTypeMesh(*gt));
-                  MEDCoupling::MCAuto<MEDCoupling::MEDCouplingFieldDouble> f(MEDCoupling::MEDCouplingFieldDouble::New(MEDCoupling::ON_CELLS));
-                  f->setMesh(m);
-                  MEDCoupling::MCAuto<MEDCoupling::DataArrayDouble> arr(MEDCoupling::DataArrayDouble::New()); arr->alloc(f->getNumberOfTuplesExpected());
-                  arr->setInfoOnComponent(0,std::string(COMPO_STR_TO_LOCATE_MESH_DA));
-                  arr->iota();
-                  f->setArray(arr);
-                  f->setName(BuildAUniqueArrayNameForMesh(mm->getName(),ret));
-                  f1tsMultiLev->setFieldNoProfileSBT(f);
-                }
-            }
-          if(levs.empty())
-            {
-              std::vector<int> levsExt(mm->getNonEmptyLevelsExt());
-              if(levsExt.size()==levs.size()+1)
-                {
-                  MEDCoupling::MCAuto<MEDCoupling::MEDCouplingMesh> m(mm->getMeshAtLevel(1));
-                  MEDCoupling::MCAuto<MEDCoupling::MEDCouplingFieldDouble> f(MEDCoupling::MEDCouplingFieldDouble::New(MEDCoupling::ON_NODES));
-                  f->setMesh(m);
-                  MEDCoupling::MCAuto<MEDCoupling::DataArrayDouble> arr(MEDCoupling::DataArrayDouble::New()); arr->alloc(m->getNumberOfNodes());
-                  arr->setInfoOnComponent(0,std::string(COMPO_STR_TO_LOCATE_MESH_DA));
-                  arr->iota(); f->setArray(arr);
-                  f->setName(BuildAUniqueArrayNameForMesh(mm->getName(),ret));
-                  f1tsMultiLev->setFieldNoProfileSBT(f);
-                }
-              else
-                continue;
-            }
-        }
-      else
-        {
-          MEDCoupling::MCAuto<MEDCoupling::MEDCouplingMesh> m(mm->getMeshAtLevel(0));
-          MEDCoupling::MCAuto<MEDCoupling::MEDCouplingFieldDouble> f(MEDCoupling::MEDCouplingFieldDouble::New(MEDCoupling::ON_CELLS));
-          f->setMesh(m);
-          MEDCoupling::MCAuto<MEDCoupling::DataArrayDouble> arr(MEDCoupling::DataArrayDouble::New()); arr->alloc(f->getNumberOfTuplesExpected());
-          arr->setInfoOnComponent(0,std::string(COMPO_STR_TO_LOCATE_MESH_DA));
-          arr->iota();
-          f->setArray(arr);
-          f->setName(BuildAUniqueArrayNameForMesh(mm->getName(),ret));
-          f1tsMultiLev->setFieldNoProfileSBT(f);
-        }
-      //
-      MEDCoupling::MCAuto<MEDCoupling::MEDFileFieldMultiTS> fmtsMultiLev(MEDCoupling::MEDFileFieldMultiTS::New());
-      fmtsMultiLev->pushBackTimeStep(f1tsMultiLev);
-      ret->pushField(fmtsMultiLev);
-    }
-}
-
-std::string MEDFileFieldRepresentationTree::BuildAUniqueArrayNameForMesh(const std::string& meshName, const MEDCoupling::MEDFileFields *ret)
-{
-  const char KEY_STR_TO_AVOID_COLLIDE[]="MESH@";
-  if(!ret)
-    throw INTERP_KERNEL::Exception("MEDFileFieldRepresentationTree::BuildAUniqueArrayNameForMesh : internal error ! NULL ret !");
-  std::vector<std::string> fieldNamesAlreadyExisting(ret->getFieldsNames());
-  if(std::find(fieldNamesAlreadyExisting.begin(),fieldNamesAlreadyExisting.end(),meshName)==fieldNamesAlreadyExisting.end())
-    return meshName;
-  std::string tmpName(KEY_STR_TO_AVOID_COLLIDE); tmpName+=meshName;
-  while(std::find(fieldNamesAlreadyExisting.begin(),fieldNamesAlreadyExisting.end(),tmpName)!=fieldNamesAlreadyExisting.end())
-    tmpName=std::string(KEY_STR_TO_AVOID_COLLIDE)+tmpName;
-  return tmpName;
-}
-
-MEDCoupling::MEDFileFields *MEDFileFieldRepresentationTree::BuildFieldFromMeshes(const MEDCoupling::MEDFileMeshes *ms)
-{
-  MEDCoupling::MCAuto<MEDCoupling::MEDFileFields> ret(MEDCoupling::MEDFileFields::New());
-  AppendFieldFromMeshes(ms,ret);
-  return ret.retn();
-}
-
-std::vector<std::string> MEDFileFieldRepresentationTree::SplitFieldNameIntoParts(const std::string& fullFieldName, char sep)
-{
-  std::vector<std::string> ret;
-  std::size_t pos(0);
-  while(pos!=std::string::npos)
-    {
-      std::size_t curPos(fullFieldName.find_first_of(sep,pos));
-      std::string elt(fullFieldName.substr(pos,curPos!=std::string::npos?curPos-pos:std::string::npos));
-      ret.push_back(elt);
-      pos=fullFieldName.find_first_not_of(sep,curPos);
-    }
-  return ret;
-}
-
-/*!
- * Here the non regression tests.
- * const char inp0[]="";
- * const char exp0[]="";
- * const char inp1[]="field";
- * const char exp1[]="field";
- * const char inp2[]="_________";
- * const char exp2[]="_________";
- * const char inp3[]="field_p";
- * const char exp3[]="field_p";
- * const char inp4[]="field__p";
- * const char exp4[]="field_p";
- * const char inp5[]="field_p__";
- * const char exp5[]="field_p";
- * const char inp6[]="field_p_";
- * const char exp6[]="field_p";
- * const char inp7[]="field_____EDFGEG//sdkjf_____PP_______________";
- * const char exp7[]="field_EDFGEG//sdkjf_PP";
- * const char inp8[]="field_____EDFGEG//sdkjf_____PP";
- * const char exp8[]="field_EDFGEG//sdkjf_PP";
- * const char inp9[]="_field_____EDFGEG//sdkjf_____PP_______________";
- * const char exp9[]="field_EDFGEG//sdkjf_PP";
- * const char inp10[]="___field_____EDFGEG//sdkjf_____PP_______________";
- * const char exp10[]="field_EDFGEG//sdkjf_PP";
-*/
-std::string MEDFileFieldRepresentationTree::PostProcessFieldName(const std::string& fullFieldName)
-{
-  const char SEP('_');
-  std::vector<std::string> v(SplitFieldNameIntoParts(fullFieldName,SEP));
-  if(v.empty())
-    return fullFieldName;//should never happen
-  if(v.size()==1)
-    {
-      if(v[0].empty())
-        return fullFieldName;
-      else
-        return v[0];
-    }
-  std::string ret(v[0]);
-  for(std::size_t i=1;i<v.size();i++)
-    {
-      if(!v[i].empty())
-        {
-          if(!ret.empty())
-            { ret+=SEP; ret+=v[i]; }
-          else
-            ret=v[i];
-        }
-    }
-  if(ret.empty())
-    return fullFieldName;
-  return ret;
-}
-
-///////////
-
-TimeKeeper::TimeKeeper(int policy):_policy(policy)
-{
-}
-
-std::vector<double> TimeKeeper::getTimeStepsRegardingPolicy(const std::vector< std::pair<int,int> >& tsPairs, const std::vector<double>& ts) const
-{
-  switch(_policy)
-    {
-    case 0:
-      return getTimeStepsRegardingPolicy0(tsPairs,ts);
-    case 1:
-      return getTimeStepsRegardingPolicy0(tsPairs,ts);
-    default:
-      throw INTERP_KERNEL::Exception("TimeKeeper::getTimeStepsRegardingPolicy : only policy 0 and 1 supported presently !");
-    }
-}
-
-/*!
- * policy = 0 :
- * if all of ts are in -1e299,1e299 and different each other pairs are ignored ts taken directly.
- * if all of ts are in -1e299,1e299 but some are not different each other ts are ignored pairs used
- * if some of ts are out of -1e299,1e299 ts are ignored pairs used
- */
-std::vector<double> TimeKeeper::getTimeStepsRegardingPolicy0(const std::vector< std::pair<int,int> >& tsPairs, const std::vector<double>& ts) const
-{
-  std::size_t sz(ts.size());
-  bool isInHumanRange(true);
-  std::set<double> s;
-  for(std::size_t i=0;i<sz;i++)
-    {
-      s.insert(ts[i]);
-      if(ts[i]<=-1e299 || ts[i]>=1e299)
-        isInHumanRange=false;
-    }
-  if(!isInHumanRange)
-    return processedUsingPairOfIds(tsPairs);
-  if(s.size()!=sz)
-    return processedUsingPairOfIds(tsPairs);
-  _postprocessed_time=ts;
-  return getPostProcessedTime();
-}
-
-/*!
- * policy = 1 :
- * idem than 0, except that ts is preaccumulated before invoking policy 0.
- */
-std::vector<double> TimeKeeper::getTimeStepsRegardingPolicy1(const std::vector< std::pair<int,int> >& tsPairs, const std::vector<double>& ts) const
-{
-  std::size_t sz(ts.size());
-  std::vector<double> ts2(sz);
-  double acc(0.);
-  for(std::size_t i=0;i<sz;i++)
-    {
-      ts2[i]=acc;
-      acc+=ts[i];
-    }
-  return getTimeStepsRegardingPolicy0(tsPairs,ts2);
-}
-
-int TimeKeeper::getTimeStepIdFrom(double timeReq) const
-{
-  std::size_t pos(std::distance(_postprocessed_time.begin(),std::find(_postprocessed_time.begin(),_postprocessed_time.end(),timeReq)));
-  return (int)pos;
-}
-
-void TimeKeeper::printSelf(std::ostream& oss) const
-{
-  std::size_t sz(_activated_ts.size());
-  for(std::size_t i=0;i<sz;i++)
-    {
-      oss << "(" << i << "," << _activated_ts[i].first << "), ";
-    }
-}
-
-std::vector<bool> TimeKeeper::getTheVectOfBool() const
-{
-  std::size_t sz(_activated_ts.size());
-  std::vector<bool> ret(sz);
-  for(std::size_t i=0;i<sz;i++)
-    {
-      ret[i]=_activated_ts[i].first;
-    }
-  return ret;
-}
-
-std::vector<double> TimeKeeper::processedUsingPairOfIds(const std::vector< std::pair<int,int> >& tsPairs) const
-{
-  std::size_t sz(tsPairs.size());
-  std::set<int> s0,s1;
-  for(std::size_t i=0;i<sz;i++)
-    { s0.insert(tsPairs[i].first); s1.insert(tsPairs[i].second); }
-  if(s0.size()==sz)
-    {
-      _postprocessed_time.resize(sz);
-      for(std::size_t i=0;i<sz;i++)
-        _postprocessed_time[i]=(double)tsPairs[i].first;
-      return getPostProcessedTime();
-    }
-  if(s1.size()==sz)
-    {
-      _postprocessed_time.resize(sz);
-      for(std::size_t i=0;i<sz;i++)
-        _postprocessed_time[i]=(double)tsPairs[i].second;
-      return getPostProcessedTime();
-    }
-  //TimeKeeper::processedUsingPairOfIds : you are not a lucky guy ! All your time steps info in MEDFile are not discriminant taken one by one !
-  _postprocessed_time.resize(sz);
-  for(std::size_t i=0;i<sz;i++)
-    _postprocessed_time[i]=(double)i;
-  return getPostProcessedTime();
-}
-
-void TimeKeeper::setMaxNumberOfTimeSteps(int maxNumberOfTS)
-{
-  _activated_ts.resize(maxNumberOfTS);
-  for(int i=0;i<maxNumberOfTS;i++)
-    {
-      std::ostringstream oss; oss << "000" << i;
-      _activated_ts[i]=std::pair<bool,std::string>(true,oss.str());
-    }
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDFileFieldRepresentationTree.hxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDFileFieldRepresentationTree.hxx
deleted file mode 100644 (file)
index c854134..0000000
+++ /dev/null
@@ -1,208 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __MEDFILEFIELDREPRESENTATIONTREE_HXX__
-#define __MEDFILEFIELDREPRESENTATIONTREE_HXX__
-
-#include "MEDFileMesh.hxx"
-#include "MEDFileField.hxx"
-#include "MEDLoaderForPV.h"
-
-#include "vtkType.h"
-
-#include <vector>
-#include <map>
-
-class vtkQuadratureSchemeDefinition;
-class vtkMutableDirectedGraph;
-class vtkUnstructuredGrid;
-class vtkRectilinearGrid;
-class vtkStructuredGrid;
-class vtkVariantArray;
-class vtkIdTypeArray;
-class vtkDoubleArray;
-class vtkDataArray;
-class vtkDataSet;
-
-class TimeKeeper;
-class MEDTimeReq;
-class ExportedTinyInfo;
-
-class ELGACmp
-{
-public:
-  template<class T>
-  vtkIdTypeArray *findOrCreate(const MEDCoupling::MEDFileFieldGlobsReal *globs, const std::vector<std::string>& locsReallyUsed, vtkDataArray *vtkd, vtkDataSet *ds, bool& isNew, ExportedTinyInfo *internalInfo) const;
-  void appendELGAIfAny(vtkDataSet *ds) const;
-  ~ELGACmp();
-private:
-  vtkIdTypeArray *isExisting(const std::vector<std::string>& locsReallyUsed, vtkDataArray *vtkd) const;
-  template<class T>
-  vtkIdTypeArray *createNew(const MEDCoupling::MEDFileFieldGlobsReal *globs, const std::vector<std::string>& locsReallyUsed, vtkDataArray *vtkd, vtkDataSet *ds, ExportedTinyInfo *internalInfo) const;
-private:
-  //! size of _loc_names is equal to _elgas.
-  mutable std::vector< std::vector<std::string> > _loc_names;
-  //! size of _elgas is equal to _loc_names. All instances in _elgas are \b not null.
-  mutable std::vector<vtkIdTypeArray *> _elgas;
-  //! same size than _loc_names and _elgas.
-  mutable std::vector< std::vector< std::pair< vtkQuadratureSchemeDefinition *, unsigned char > > > _defs;
-};
-
-class MEDLOADERFORPV_EXPORT MEDFileFieldRepresentationLeavesArrays : public MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS>
-{
-public:
-  MEDFileFieldRepresentationLeavesArrays();
-  MEDFileFieldRepresentationLeavesArrays(const MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS>& arr);
-  MEDFileFieldRepresentationLeavesArrays& operator=(const MEDFileFieldRepresentationLeavesArrays& other);
-  int getId() const;
-  void setId(int& id) const;
-  void feedSIL(vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const;
-  void computeFullNameInLeaves(const std::string& tsName, const std::string& meshName, const std::string& comSupStr) const;
-  bool getStatus() const;
-  bool setStatus(bool status) const;
-  std::string getZeName() const;
-  const char *getZeNameC() const;
-  void appendFields(const MEDTimeReq *tr, const MEDCoupling::MEDFileFieldGlobsReal *globs, const MEDCoupling::MEDMeshMultiLev *mml, const MEDCoupling::MEDFileMeshStruct *mst, vtkDataSet *ds, ExportedTinyInfo *internalInfo) const;
-  void appendELGAIfAny(vtkDataSet *ds) const;
-public:
-  static const char ZE_SEP[];
-  static const char TS_STR[];
-  static const char COM_SUP_STR[];
-  static const char FAMILY_ID_CELL_NAME[];
-  static const char NUM_ID_CELL_NAME[];
-  static const char FAMILY_ID_NODE_NAME[];
-  static const char NUM_ID_NODE_NAME[];
-  static const char GLOBAL_NODE_ID_NAME[];
-private:
-  mutable bool _activated;
-  mutable int _id;
-  mutable std::string _ze_name;
-  mutable std::string _ze_full_name;
-  ELGACmp _elga_cmp;
-};
-
-class MEDLOADERFORPV_EXPORT MEDFileFieldRepresentationLeaves
-{
-public:
-  MEDFileFieldRepresentationLeaves();
-  MEDFileFieldRepresentationLeaves(const std::vector< MEDCoupling::MCAuto<MEDCoupling::MEDFileAnyTypeFieldMultiTS> >& arr,
-                                   const MEDCoupling::MCAuto<MEDCoupling::MEDFileFastCellSupportComparator>& fsp);
-  ~MEDFileFieldRepresentationLeaves();
-  bool empty() const;
-  void setId(int& id) const;
-  std::string getMeshName() const;
-  int getNumberOfArrays() const;
-  int getNumberOfTS() const;
-  void feedSIL(const MEDCoupling::MEDFileMeshes *ms, const std::string& meshName, vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const;
-  void computeFullNameInLeaves(const std::string& tsName, const std::string& meshName, const std::string& comSupStr) const;
-  bool containId(int id) const;
-  bool containZeName(const char *name, int& id) const;
-  void dumpState(std::map<std::string,bool>& status) const;
-  bool isActivated() const;
-  void printMySelf(std::ostream& os) const;
-  void activateAllArrays() const;
-  const MEDFileFieldRepresentationLeavesArrays& getLeafArr(int id) const;
-  std::vector<double> getTimeSteps(const TimeKeeper& tk) const;
-  std::vector< std::pair<int,int> > getTimeStepsInCoarseMEDFileFormat(std::vector<double>& ts) const;
-  std::string getHumanReadableOverviewOfTS() const;
-  vtkDataSet *buildVTKInstanceNoTimeInterpolation(const MEDTimeReq *tr, const MEDCoupling::MEDFileFieldGlobsReal *globs, const MEDCoupling::MEDFileMeshes *meshes, bool debugArrays, ExportedTinyInfo *internalInfo=0) const;
-private:
-  vtkUnstructuredGrid *buildVTKInstanceNoTimeInterpolationUnstructured(MEDCoupling::MEDUMeshMultiLev *mm) const;
-  vtkRectilinearGrid *buildVTKInstanceNoTimeInterpolationCartesian(MEDCoupling::MEDCMeshMultiLev *mm) const;
-  vtkStructuredGrid *buildVTKInstanceNoTimeInterpolationCurveLinear(MEDCoupling::MEDCurveLinearMeshMultiLev *mm) const;
-  void appendFields(const MEDTimeReq *tr, const MEDCoupling::MEDFileFieldGlobsReal *globs, const MEDCoupling::MEDMeshMultiLev *mml, const MEDCoupling::MEDFileMeshes *meshes, vtkDataSet *ds, ExportedTinyInfo *internalInfo=0) const;
-private:
-  std::vector<MEDFileFieldRepresentationLeavesArrays> _arrays;
-  MEDCoupling::MCAuto<MEDCoupling::MEDFileFastCellSupportComparator> _fsp;
-  mutable vtkDataSet *_cached_ds;
-};
-
-class MEDLOADERFORPV_EXPORT MEDFileFieldRepresentationTree
-{
-public:
-  MEDFileFieldRepresentationTree();
-  int getNumberOfLeavesArrays() const;
-  void assignIds() const;
-  void activateTheFirst() const;
-  void computeFullNameInLeaves() const;
-  void feedSIL(vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const;
-  std::string getActiveMeshName() const;
-  std::string feedSILForFamsAndGrps(vtkMutableDirectedGraph* sil, vtkIdType root, vtkVariantArray *edge, std::vector<std::string>& names) const;
-  std::string getNameOf(int id) const;
-  const char *getNameOfC(int id) const;
-  bool getStatusOf(int id) const;
-  int getIdHavingZeName(const char *name) const;
-  bool changeStatusOfAndUpdateToHaveCoherentVTKDataSet(int id, bool status) const;
-  int getMaxNumberOfTimeSteps() const;
-  //
-  std::string getDftMeshName() const;
-  std::vector<double> getTimeSteps(int& lev0, const TimeKeeper& tk) const;
-  vtkDataSet *buildVTKInstance(bool isStdOrMode, double timeReq, std::string& meshName, const TimeKeeper& tk, bool debugArrays, ExportedTinyInfo *internalInfo=0) const;
-  void printMySelf(std::ostream& os) const;
-  std::map<std::string,bool> dumpState() const;
-  //non const methods
-  void loadMainStructureOfFile(const char *fileName, int iPart, int nbOfParts);
-  void loadInMemory(MEDCoupling::MEDFileFields *fields, MEDCoupling::MEDFileMeshes *meshes);
-  void removeEmptyLeaves();
-  // static methods
-  static bool IsFieldMeshRegardingInfo(const std::vector<std::string>& compInfos);
-  static std::string PostProcessFieldName(const std::string& fullFieldName);
-public:
-  static const char ROOT_OF_GRPS_IN_TREE[];
-  static const char ROOT_OF_FAM_IDS_IN_TREE[];
-  static const char COMPO_STR_TO_LOCATE_MESH_DA[];
-private:
-  const MEDFileFieldRepresentationLeavesArrays& getLeafArr(int id) const;
-  const MEDFileFieldRepresentationLeaves& getTheSingleActivated(int& lev0, int& lev1, int& lev2) const;
-  static MEDCoupling::MEDFileFields *BuildFieldFromMeshes(const MEDCoupling::MEDFileMeshes *ms);
-  static void AppendFieldFromMeshes(const MEDCoupling::MEDFileMeshes *ms, MEDCoupling::MEDFileFields *ret);
-  static std::string BuildAUniqueArrayNameForMesh(const std::string& meshName, const MEDCoupling::MEDFileFields *ret);
-  static std::vector<std::string> SplitFieldNameIntoParts(const std::string& fullFieldName, char sep);
-private:
-  // 1st : timesteps, 2nd : meshName, 3rd : common support
-  std::vector< std::vector< std::vector< MEDFileFieldRepresentationLeaves > > > _data_structure;
-  MEDCoupling::MCAuto<MEDCoupling::MEDFileMeshes> _ms;
-  MEDCoupling::MCAuto<MEDCoupling::MEDFileFields> _fields;
-};
-
-class MEDLOADERFORPV_EXPORT TimeKeeper
-{
-public:
-  TimeKeeper(int policy);
-  int getPolicy() const { return _policy; }
-  void setPolicy(int policy) { _policy=policy; }
-  std::vector<double> getTimeStepsRegardingPolicy(const std::vector< std::pair<int,int> >& tsPairs, const std::vector<double>& ts) const;
-  int getTimeStepIdFrom(double timeReq) const;
-  std::vector<double> getPostProcessedTime() const { return _postprocessed_time; }
-  void printSelf(std::ostream& oss) const;
-  std::vector<bool> getTheVectOfBool() const;
-  std::vector< std::pair<bool,std::string> >& getTimesFlagArray() { return _activated_ts; }
-  void setMaxNumberOfTimeSteps(int maxNumberOfTS);
-private:
-  std::vector<double> getTimeStepsRegardingPolicy0(const std::vector< std::pair<int,int> >& tsPairs, const std::vector<double>& ts) const;
-  std::vector<double> getTimeStepsRegardingPolicy1(const std::vector< std::pair<int,int> >& tsPairs, const std::vector<double>& ts) const;
-  std::vector<double> processedUsingPairOfIds(const std::vector< std::pair<int,int> >& tsPairs) const;
-private:
-  int _policy;
-  mutable std::vector<double> _postprocessed_time;
-  std::vector< std::pair<bool,std::string> > _activated_ts;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDLoaderForPV.h b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDLoaderForPV.h
deleted file mode 100644 (file)
index 23b8196..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#ifndef __MEDLOADERFORPV_HXX__
-#define __MEDLOADERFORPV_HXX__
-
-#ifdef WIN32
-# if defined MEDLoaderForPV_EXPORTS || defined MEDLOADERFORPV_EXPORTS
-#  define MEDLOADERFORPV_EXPORT __declspec( dllexport )
-# else
-#  define MEDLOADERFORPV_EXPORT __declspec( dllimport )
-# endif
-#else
- #define MEDLOADERFORPV_EXPORT
-#endif
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDTimeReq.cxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDTimeReq.cxx
deleted file mode 100644 (file)
index 5fbb780..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "MEDTimeReq.hxx"
-
-#include <sstream>
-
-MEDTimeReq::~MEDTimeReq()
-{
-}
-
-///////////
-
-MEDStdTimeReq::~MEDStdTimeReq()
-{
-}
-
-MEDStdTimeReq::MEDStdTimeReq(int timeReq):_time_req(timeReq)
-{
-}
-
-/*!
- * Does nothing ! It is not a bug
- */
-void MEDStdTimeReq::setNumberOfTS(int /*nbOfTS*/) const
-{
-}
-
-int MEDStdTimeReq::size() const
-{
-  return 1;
-}
-
-int MEDStdTimeReq::getCurrent() const
-{
-  return _time_req;
-}
-
-/*!
- * Does nothing ! It is not a bug
- */
-void MEDStdTimeReq::initIterator() const
-{
-}
-
-std::string MEDStdTimeReq::buildName(const std::string& name) const
-{
-  return std::string(name);
-}
-
-/*!
- * Does nothing ! It is not a bug
- */
-void MEDStdTimeReq::operator++() const
-{
-}
-
-///////////
-
-MEDModeTimeReq::MEDModeTimeReq(const std::vector<bool>& v, const std::vector<double>& ts):_v(v),_ts(ts),_it(0),_sz(0)
-{
-}
-
-MEDModeTimeReq::~MEDModeTimeReq()
-{
-}
-
-int MEDModeTimeReq::size() const
-{
-  int ret(0);
-  for(int i=0;i<_sz;i++)
-    {
-      if(_v[i])
-        ret++;
-    }
-  return ret;
-}
-
-int MEDModeTimeReq::getCurrent() const
-{
-  return _it;
-}
-
-void MEDModeTimeReq::setNumberOfTS(int nbOfTS) const
-{
-  _sz=nbOfTS;
-}
-
-void MEDModeTimeReq::initIterator() const
-{
-  for(_it=0;_it<_sz;_it++)
-    if(_v[_it])
-      return;
-}
-
-std::string MEDModeTimeReq::buildName(const std::string& name) const
-{
-  std::ostringstream oss,oss2,oss3;
-  oss << name << " [";
-  //
-  oss3 << _sz-1;
-  std::size_t len(oss3.str().length());
-  oss2.width(len);
-  oss2.fill('0'); oss2 << _it;
-  //
-  oss << oss2.str() << "]";
-  if(_it<(int)_ts.size())
-    oss << " - " << _ts[_it];
-  return oss.str();
-}
-
-void MEDModeTimeReq::operator++() const
-{
-  _it++;
-  for(;_it<_sz;_it++)
-    if(_v[_it])
-      return;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDTimeReq.hxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDTimeReq.hxx
deleted file mode 100644 (file)
index 32f4734..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __MEDTIMEREQ_HXX__
-#define __MEDTIMEREQ_HXX__
-
-#include <string>
-#include <vector>
-
-#include "MEDLoaderForPV.h"
-
-class MEDLOADERFORPV_EXPORT MEDTimeReq
-{
-public:
-  virtual int size() const = 0;
-  virtual void setNumberOfTS(int nbOfTS) const = 0;
-  virtual std::string buildName(const std::string& name) const = 0;
-  virtual void initIterator() const = 0;
-  virtual int getCurrent() const = 0;
-  virtual void operator++() const = 0;
-  virtual ~MEDTimeReq();
-};
-
-class MEDLOADERFORPV_EXPORT MEDStdTimeReq : public MEDTimeReq
-{
-public:
-  MEDStdTimeReq(int timeReq);
-  int size() const;
-  int getCurrent() const;
-  void initIterator() const;
-  void setNumberOfTS(int nbOfTS) const;
-  std::string buildName(const std::string& name) const;
-  void operator++() const;
-public:
-  ~MEDStdTimeReq();
-private:
-  int _time_req;
-};
-
-class MEDLOADERFORPV_EXPORT MEDModeTimeReq : public MEDTimeReq
-{
-public:
-  MEDModeTimeReq(const std::vector<bool>& v, const std::vector<double>& ts);
-  ~MEDModeTimeReq();
-  int size() const;
-  int getCurrent() const;
-  void initIterator() const;
-  void setNumberOfTS(int nbOfTS) const;
-  std::string buildName(const std::string& name) const;
-  void operator++() const;
-private:
-  std::vector<bool> _v;
-  std::vector<double> _ts;
-  mutable int _it;
-  mutable int _sz;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDUtilities.cxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDUtilities.cxx
deleted file mode 100644 (file)
index be40a12..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "MEDUtilities.hxx"
-
-#include "vtkInformationIntegerKey.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-
-#include <algorithm>
-
-vtkInformationKeyMacro(MEDUtilities,ELGA,Integer)
-vtkInformationKeyMacro(MEDUtilities,ELNO,Integer)
-
-void ExportedTinyInfo::pushGaussAdditionnalInfo(int ct, int dim, const std::vector<double>& refCoo, const std::vector<double>& posInRefCoo)
-{
-  prepareForAppend();
-  std::vector<double> tmp(1,(double)ct);
-  tmp.push_back((double)dim);
-  tmp.insert(tmp.end(),refCoo.begin(),refCoo.end());
-  tmp.insert(tmp.end(),posInRefCoo.begin(),posInRefCoo.end());
-  _data.push_back((double)tmp.size());
-  _data.insert(_data.end(),tmp.begin(),tmp.end());
-}
-
-void ExportedTinyInfo::prepareForAppend()
-{
-  if(_data.empty())
-    _data.push_back(1.);
-  else
-    {
-      double val(_data[0]);
-      int val2((int) val);
-      _data[0]=++val2;
-    }
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDUtilities.hxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/MEDUtilities.hxx
deleted file mode 100644 (file)
index 7d7cce3..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __MEDUTILITIES_HXX__
-#define __MEDUTILITIES_HXX__
-
-#include "MEDLoaderForPV.h"
-#include "vtkCellType.h"
-
-#include <vector>
-
-class vtkInformationIntegerKey;
-
-class MEDLOADERFORPV_EXPORT MEDUtilities
-{
-public:
-  static vtkInformationIntegerKey *ELGA();
-  static vtkInformationIntegerKey *ELNO();
-};
-
-class ExportedTinyInfo
-{
-public:
-  void pushGaussAdditionnalInfo(int ct, int dim, const std::vector<double>& refCoo, const std::vector<double>& posInRefCoo);
-  const std::vector<double>& getData() const { return _data; }
-  bool empty() const { return _data.empty(); }
-private:
-  void prepareForAppend();
-private:
-  // first place is nb of ct
-  // 2nd place is the size of first ct def (this 2nd place included)
-  // 3rd place is the VTK cell type of first ct def
-  // 4th place is the dimension of first ct def
-  // 5th->n th : ref Coo
-  // nth -> n+p th : posInRefCoo
-  // n+p+1 -> size of second ct def (this n+p+1 place included)
-  // n+p+2 -> VTK cell type of second ct def
-  // ...
-  std::vector<double> _data;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/vtkGenerateVectors.cxx b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/vtkGenerateVectors.cxx
deleted file mode 100644 (file)
index c245047..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "vtkGenerateVectors.h"
-#include "vtkAOSDataArrayTemplate.h"
-#include "vtkDoubleArray.h"
-#include "vtkInformation.h"
-#include "vtkUnstructuredGrid.h"
-#include "vtkQuadratureSchemeDefinition.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-#include "MEDUtilities.hxx"
-#include "vtkFieldData.h"
-
-#include <sstream>
-
-const char vtkGenerateVectors::VECTOR_SUFFIX[]="_Vector";
-
-std::string vtkGenerateVectors::SuffixFieldName(const std::string& name)
-{
-  std::ostringstream oss; oss << name << VECTOR_SUFFIX;
-  return oss.str();
-}
-
-/*!
- * This method forces MeshMTime modification. To do so, points are declared as modified.
- */
-void vtkGenerateVectors::ChangeMeshTimeToUpdateCache(vtkDataSet *dataset)
-{
-  vtkUnstructuredGrid *ug(vtkUnstructuredGrid::SafeDownCast(dataset));
-  if(!ug)
-    return ;
-  ug->GetPoints()->Modified();
-}
-
-void vtkGenerateVectors::Operate(vtkFieldData *fd)
-{
-  if(!fd)
-    return ;
-  const int nbOfArrs(fd->GetNumberOfArrays());
-  std::vector<vtkDoubleArray *> daToAppend;
-  for(int i=0;i<nbOfArrs;i++)
-    {
-      vtkDataArray *arr(fd->GetArray(i));
-      if(!arr)
-        continue;
-      vtkDoubleArray *arrc(vtkDoubleArray::SafeDownCast(arr));
-      if(!arrc)
-        continue;
-      int nbOfCompo(arrc->GetNumberOfComponents());
-      if(nbOfCompo<=1 || nbOfCompo==3)
-        continue;
-      if(nbOfCompo==2)
-        daToAppend.push_back(Operate2Compo(arrc));
-      else
-        daToAppend.push_back(OperateMoreThan3Compo(arrc));
-    }
-  for(std::vector<vtkDoubleArray *>::const_iterator it=daToAppend.begin();it!=daToAppend.end();it++)
-    {
-      vtkDoubleArray *elt(*it);
-      if(!elt)
-       continue;
-      fd->AddArray(elt);
-      elt->Delete();
-    }
-}
-
-vtkDoubleArray *vtkGenerateVectors::Operate2Compo(vtkDoubleArray *oldArr)
-{
-  const int VTK_DATA_ARRAY_FREE=vtkAOSDataArrayTemplate<double>::VTK_DATA_ARRAY_FREE;
-  vtkDoubleArray *ret(vtkDoubleArray::New());
-  vtkIdType nbOfTuples(oldArr->GetNumberOfTuples());
-  const double *inPt(oldArr->GetPointer(0));
-  double *pt((double *)malloc(nbOfTuples*3*sizeof(double)));
-  for(vtkIdType i=0;i<nbOfTuples;i++)
-    {
-      pt[3*i+0]=inPt[2*i+0];
-      pt[3*i+1]=inPt[2*i+1];
-      pt[3*i+2]=0.;
-    }
-  ret->SetNumberOfComponents(3);
-  std::string newName(SuffixFieldName(oldArr->GetName()));
-  ret->SetName(newName.c_str());
-  ret->SetComponentName(0,oldArr->GetComponentName(0));
-  ret->SetComponentName(1,oldArr->GetComponentName(1));
-  ret->SetArray(pt,3*nbOfTuples,0,VTK_DATA_ARRAY_FREE);
-  UpdateInformationOfArray(oldArr,ret);
-  return ret;
-}
-
-vtkDoubleArray *vtkGenerateVectors::OperateMoreThan3Compo(vtkDoubleArray *oldArr)
-{
-  const int VTK_DATA_ARRAY_FREE=vtkAOSDataArrayTemplate<double>::VTK_DATA_ARRAY_FREE;
-  vtkDoubleArray *ret(vtkDoubleArray::New());
-  int nbOfCompo(oldArr->GetNumberOfComponents());
-  vtkIdType nbOfTuples(oldArr->GetNumberOfTuples());
-  const double *inPt(oldArr->GetPointer(0));
-  double *pt((double *)malloc(nbOfTuples*3*sizeof(double)));
-  for(vtkIdType i=0;i<nbOfTuples;i++)
-    {
-      pt[3*i+0]=inPt[nbOfCompo*i+0];
-      pt[3*i+1]=inPt[nbOfCompo*i+1];
-      pt[3*i+2]=inPt[nbOfCompo*i+2];
-    }
-  ret->SetNumberOfComponents(3);
-  std::string newName(SuffixFieldName(oldArr->GetName()));
-  ret->SetName(newName.c_str());
-  ret->SetComponentName(0,oldArr->GetComponentName(0));
-  ret->SetComponentName(1,oldArr->GetComponentName(1));
-  ret->SetComponentName(2,oldArr->GetComponentName(2));
-  ret->SetArray(pt,3*nbOfTuples,0,VTK_DATA_ARRAY_FREE);
-  UpdateInformationOfArray(oldArr,ret);
-  return ret;
-}
-
-void vtkGenerateVectors::UpdateInformationOfArray(vtkDoubleArray *oldArr, vtkDoubleArray *arr)
-{
-  if(oldArr->GetInformation()->Has(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME()))
-    {
-      arr->GetInformation()->Set(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME(),oldArr->GetInformation()->Get((vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME())));
-    }
-  if(oldArr->GetInformation()->Get(MEDUtilities::ELGA()))
-    arr->GetInformation()->Set(MEDUtilities::ELGA(),1);
-  vtkInformationQuadratureSchemeDefinitionVectorKey *key(vtkQuadratureSchemeDefinition::DICTIONARY());
-  if(key->Has(oldArr->GetInformation()))
-    {
-      int dictSize(key->Size(oldArr->GetInformation()));
-      vtkQuadratureSchemeDefinition **dict = new vtkQuadratureSchemeDefinition *[dictSize];
-      key->GetRange(oldArr->GetInformation(),dict,0,0,dictSize);
-      key->SetRange(arr->GetInformation(),dict,0,0,dictSize);
-      delete [] dict;
-    }
-  if(oldArr->GetInformation()->Get(MEDUtilities::ELNO()))
-    arr->GetInformation()->Set(MEDUtilities::ELNO(),1);
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDLoaderForPV/vtkGenerateVectors.h b/src/Plugins/MEDReader/plugin/MEDLoaderForPV/vtkGenerateVectors.h
deleted file mode 100644 (file)
index 65f3a3f..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef vtkGenerateVectors_h__
-#define vtkGenerateVectors_h__
-
-#include "vtkDataSetAlgorithm.h"
-
-class vtkFieldData;
-class vtkDoubleArray;
-
-class VTK_EXPORT vtkGenerateVectors
-{
-public:
-  static void ChangeMeshTimeToUpdateCache(vtkDataSet *dataset);
-  static void Operate(vtkFieldData *fd);
-  static vtkDoubleArray *Operate2Compo(vtkDoubleArray *oldArr);
-  static vtkDoubleArray *OperateMoreThan3Compo(vtkDoubleArray *oldArr);
-  static std::string SuffixFieldName(const std::string& name);
-public:
-  static const char VECTOR_SUFFIX[];
-protected:
-  static void UpdateInformationOfArray(vtkDoubleArray *oldArr, vtkDoubleArray *arr);
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/CMakeLists.txt b/src/Plugins/MEDReader/plugin/MEDReaderIO/CMakeLists.txt
deleted file mode 100644 (file)
index d86a459..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright (C) 2010-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-set(classes
-  vtkELNOFilter
-  vtkELNOMeshFilter
-  vtkELNOSurfaceFilter
-  vtkExtractGroup
-  vtkExtractCellType
-  vtkMEDQuadraturePointsGenerator
-  vtkMEDReader
-  vtkPVMetaDataInformation
-  vtkGroupAsMultiBlock
-  vtkGroupsNames
-  vtkUgSelectCellIds
-  vtkFileSeriesGroupReader
-)
-
-vtk_module_add_module(MEDReaderIO
-  FORCE_STATIC
-  CLASSES ${classes}
-)
-
-target_include_directories(MEDReaderIO PRIVATE
-  "${CMAKE_CURRENT_SOURCE_DIR}/../MEDLoaderForPV"
-  ${MEDCOUPLING_INCLUDE_DIRS})
-
-target_link_libraries(MEDReaderIO PUBLIC MEDLoaderForPV)
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/VTKMEDTraits.hxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/VTKMEDTraits.hxx
deleted file mode 100644 (file)
index 507d957..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-// Copyright (C) 2017-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#ifndef __VTKMEDTRAITS_HXX__
-#define __VTKMEDTRAITS_HXX__
-
-class vtkIntArray;
-class vtkLongArray;
-#ifdef WIN32
-class vtkLongLongArray;
-#endif
-class vtkFloatArray;
-class vtkDoubleArray;
-
-template<class T>
-class MEDFileVTKTraits
-{
-public:
-  typedef void VtkType;
-  typedef void MCType;
-};
-
-template<>
-class MEDFileVTKTraits<int>
-{
-public:
-  typedef vtkIntArray VtkType;
-  typedef MEDCoupling::DataArrayInt32 MCType;
-};
-
-template<>
-#ifdef WIN32
-class MEDFileVTKTraits<long long>
-#else 
-class MEDFileVTKTraits<long>
-#endif
-#
-{
-public:
-#ifdef WIN32
-  typedef vtkLongLongArray VtkType;
-#else
-  typedef vtkLongArray VtkType;
-#endif
-  typedef MEDCoupling::DataArrayInt64 MCType;
-};
-
-template<>
-class MEDFileVTKTraits<float>
-{
-public:
-  typedef vtkFloatArray VtkType;
-  typedef MEDCoupling::DataArrayFloat MCType;
-};
-
-template<>
-class MEDFileVTKTraits<double>
-{
-public:
-  typedef vtkDoubleArray VtkType;
-  typedef MEDCoupling::DataArrayDouble MCType;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtk.module b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtk.module
deleted file mode 100755 (executable)
index f2b5567..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-NAME
-  MEDReaderIO
-DEPENDS
-  VTK::FiltersGeneral
-  VTK::FiltersExtraction
-  VTK::IOLegacy
-  ParaView::RemotingCore
-  ParaView::VTKExtensionsIOCore
-PRIVATE_DEPENDS
-  VTK::IOLegacy
-  ParaView::VTKExtensionsFiltersRendering
-  ParaView::VTKExtensionsFiltersGeneral
-  ParaView::VTKExtensionsMisc
-OPTIONAL_DEPENDS
-  VTK::FiltersParallelGeometry
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOFilter.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOFilter.cxx
deleted file mode 100644 (file)
index d3aab39..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#include "vtkELNOFilter.h"
-#include "vtkInformation.h"
-#include "vtkInformationVector.h"
-#include "vtkObjectFactory.h"
-#include "vtkPolyDataAlgorithm.h"
-#include "vtkPolyData.h"
-#include "vtkIdTypeArray.h"
-#include "vtkFieldData.h"
-#include "vtkCellData.h"
-#include "vtkPointData.h"
-#include "vtkCell.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-#include "vtkQuadratureSchemeDefinition.h"
-#include "vtkUnstructuredGrid.h"
-
-#include "MEDUtilities.hxx"
-#include "InterpKernelAutoPtr.hxx"
-
-//vtkCxxRevisionMacro(vtkELNOFilter, "$Revision: 1.2.2.2 $");
-vtkStandardNewMacro(vtkELNOFilter)
-
-vtkELNOFilter::vtkELNOFilter()
-{
-  this->ShrinkFactor = 0.5;
-}
-
-vtkELNOFilter::~vtkELNOFilter()
-{
-}
-
-int vtkELNOFilter::RequestData(vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output)
-{
-  vtkUnstructuredGrid *usgIn(vtkUnstructuredGrid::SafeDownCast( input[0]->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT())));
-  vtkPolyData *pdOut(vtkPolyData::SafeDownCast(output->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT())));
-
-  //vtkDataArray *array(this->GetInputArrayToProcess(0, input)); // todo: unused
-  vtkIdTypeArray* offsets(vtkIdTypeArray::SafeDownCast(this->GetInputArrayToProcess(0, input)));
-
-  if(usgIn == NULL || offsets == NULL || pdOut == NULL)
-    {
-      vtkDebugMacro("vtkELNOFilter no correctly configured : offsets = " << offsets);
-      return 1;
-    }
-
-  vtkInformation *info(offsets->GetInformation());
-  vtkInformationQuadratureSchemeDefinitionVectorKey *key(vtkQuadratureSchemeDefinition::DICTIONARY());
-  if(!key->Has(info))
-    {
-      vtkDebugMacro("Dictionary is not present in array " << offsets->GetName() << " " << offsets << " Aborting." );
-      return 1;
-    }
-
-  int res(this->Superclass::RequestData(request, input, output));
-  if(res == 0)
-    return 0;
-  
-  int dictSize(key->Size(info));
-  vtkQuadratureSchemeDefinition **dict = new vtkQuadratureSchemeDefinition *[dictSize];
-  key->GetRange(info, dict, 0, 0, dictSize);
-
-  vtkIdType ncell(usgIn->GetNumberOfCells());
-  vtkPoints *points(pdOut->GetPoints());
-  vtkIdType start(0);
-  for(vtkIdType cellId = 0; cellId < ncell; cellId++)
-    {
-      //vtkIdType offset(offsets->GetValue(cellId)); // todo: unused
-      int cellType(usgIn->GetCellType(cellId));
-      // a simple check to see if a scheme really exists for this cell type.
-      // should not happen if the cell type has not been modified.
-      if(dict[cellType] == NULL)
-        continue;
-      int np = dict[cellType]->GetNumberOfQuadraturePoints();
-      double center[3] = {0, 0, 0};
-      for(int id = start; id < start + np; id++)
-        {
-          double *position = points->GetPoint(id);
-          center[0] += position[0];
-          center[1] += position[1];
-          center[2] += position[2];
-        }
-      center[0] /= np;
-      center[1] /= np;
-      center[2] /= np;
-      for(int id = start; id < start + np; id++)
-        {
-          double *position = points->GetPoint(id);
-          double newpos[3];
-          newpos[0] = position[0] * this->ShrinkFactor + center[0] * (1 - this->ShrinkFactor);
-          newpos[1] = position[1] * this->ShrinkFactor + center[1] * (1 - this->ShrinkFactor);
-          newpos[2] = position[2] * this->ShrinkFactor + center[2] * (1 - this->ShrinkFactor);
-          points->SetPoint(id, newpos);
-        }
-      start += np;
-    }
-  //// bug EDF 8407 PARAVIS - mantis 22610
-  vtkFieldData *fielddata(usgIn->GetFieldData());
-  for(int index=0;index<fielddata->GetNumberOfArrays();index++)
-    {
-      vtkDataArray *data(fielddata->GetArray(index));
-      vtkInformation *info(data->GetInformation());
-      const char *arrayOffsetName(info->Get(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME()));
-      vtkIdTypeArray *offData(0);
-      bool isELNO(false);
-      if(arrayOffsetName)
-        {
-          vtkCellData *cellData(usgIn->GetCellData());
-          vtkDataArray *offDataTmp(cellData->GetArray(arrayOffsetName));
-          isELNO=offDataTmp->GetInformation()->Get(MEDUtilities::ELNO())==1;
-          offData=dynamic_cast<vtkIdTypeArray *>(offDataTmp);
-        }
-      if(isELNO && offData)
-        {
-          vtkIdType nbCellsInput(usgIn->GetNumberOfCells());
-          if(nbCellsInput==0)
-            continue ;//no cells -> no fields
-          // First trying to detected if we are in the special case where data can be used directly. To detect that look at offData. If offData.front()==0 && offData->back()+NbOfNodesInLastCell==data->GetNumberOfTuples() OK.
-          vtkCell *cell(usgIn->GetCell(nbCellsInput-1));
-          bool statement0(offData->GetTuple1(0)==0);
-          bool statement1(offData->GetTuple1(nbCellsInput-1)+cell->GetNumberOfPoints()==data->GetNumberOfTuples());
-          if(statement0 && statement1)
-            pdOut->GetPointData()->AddArray(data);//We are lucky ! No extraction needed.
-          else
-            {//not lucky ! Extract values from data. A previous threshold has been done... Bug EDF8662
-              vtkDataArray *newArray(data->NewInstance());
-              newArray->SetName(data->GetName());
-              pdOut->GetPointData()->AddArray(newArray);
-              newArray->SetNumberOfComponents(data->GetNumberOfComponents());
-              newArray->SetNumberOfTuples(pdOut->GetNumberOfPoints());
-              newArray->CopyComponentNames(data);
-              newArray->Delete();
-              vtkIdType *offsetPtr(offData->GetPointer(0));
-              vtkIdType zeId(0);
-              for(vtkIdType cellId=0;cellId<nbCellsInput;cellId++)
-                {
-                  vtkCell *cell(usgIn->GetCell(cellId));
-                  vtkIdType nbPoints(cell->GetNumberOfPoints())/*,offset(offsetPtr[cellId])*/; // todo: offset is unused
-                  for(vtkIdType j=0;j<nbPoints;j++,zeId++)
-                    newArray->SetTuple(zeId,offsetPtr[cellId]+j,data);
-                }
-            }
-        }
-    }
-  AttachCellFieldsOn(usgIn,pdOut->GetCellData(),pdOut->GetNumberOfCells());
-  return 1;
-}
-
-void vtkELNOFilter::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-  os << indent << "ShrinkFactor : " << this->ShrinkFactor << endl;
-}
-
-/*!
- * This method attach fields on cell of \a inGrid and add it as a point data in \a outData.
- */
-void vtkELNOFilter::AttachCellFieldsOn(vtkUnstructuredGrid *inGrid, vtkCellData *outData, int nbCellsOut)
-{
-  vtkCellData *cd(inGrid->GetCellData());
-  int nbOfArrays(cd->GetNumberOfArrays());
-  vtkIdType nbCells(inGrid->GetNumberOfCells());
-  if(nbOfArrays==0)
-    return ;
-  INTERP_KERNEL::AutoPtr<vtkIdType> tmpPtr(new vtkIdType[nbCells]);
-  for(vtkIdType cellId=0;cellId<nbCells;cellId++)
-    {
-      vtkCell *cell(inGrid->GetCell(cellId));
-      tmpPtr[cellId]=cell->GetNumberOfPoints();
-    }
-  for(int index=0;index<nbOfArrays;index++)
-    {
-      vtkDataArray *data(cd->GetArray(index));
-      vtkDataArray *newArray(data->NewInstance());
-      newArray->SetName(data->GetName());
-      outData->AddArray(newArray);
-      newArray->SetNumberOfComponents(data->GetNumberOfComponents());
-      newArray->SetNumberOfTuples(nbCellsOut);
-      newArray->CopyComponentNames(data);
-      newArray->Delete();
-      vtkIdType offset(0);
-      for(vtkIdType cellId=0;cellId<nbCells;cellId++)
-        {
-          for(vtkIdType j=0;j<tmpPtr[cellId];j++,offset++)
-            newArray->SetTuple(offset,cellId,data);
-        }
-    }
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOFilter.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOFilter.h
deleted file mode 100644 (file)
index 1728299..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#ifndef _vtkELNOFilter_h
-#define _vtkELNOFilter_h
-
-#include "vtkQuadraturePointsGenerator.h"
-
-class VTK_EXPORT vtkELNOFilter: public vtkQuadraturePointsGenerator
-{
-public:
-  static vtkELNOFilter *New();
-  vtkTypeMacro(vtkELNOFilter,vtkQuadraturePointsGenerator)
-  void PrintSelf(ostream& os, vtkIndent indent);
-
-  // Description :
-  // This is the factor applied to shrink the cell before extracting
-  // the ELNO points.
-  // A value of 0 shrinks the cells to their center, and a value of 1
-  // do not shrink the cell at all.
-  // default value 0.5
-  vtkSetMacro(ShrinkFactor,double);
-  vtkGetMacro(ShrinkFactor,double);
-
-protected:
-  vtkELNOFilter();
-  ~vtkELNOFilter();
-
-  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
-  void AttachCellFieldsOn(vtkUnstructuredGrid *, vtkCellData *, int);
-  double ShrinkFactor;
-
-private:
-  vtkELNOFilter(const vtkELNOFilter&);
-  void operator =(const vtkELNOFilter&);
-};
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOMeshFilter.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOMeshFilter.cxx
deleted file mode 100644 (file)
index 465f2a5..0000000
+++ /dev/null
@@ -1,212 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#include "vtkELNOMeshFilter.h"
-#include "vtkInformation.h"
-#include "vtkInformationVector.h"
-#include "vtkInformationIntegerKey.h"
-#include "vtkObjectFactory.h"
-#include "vtkPolyDataAlgorithm.h"
-#include "vtkPolyData.h"
-#include "vtkIdTypeArray.h"
-#include "vtkQuadratureSchemeDefinition.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-#include "vtkUnstructuredGrid.h"
-#include "vtkShrinkFilter.h"
-#include "vtkSmartPointer.h"
-#include "vtkPointData.h"
-#include "vtkCellData.h"
-#include "vtkIdList.h"
-#include "vtkCell.h"
-
-#include "MEDUtilities.hxx"
-
-#include <map>
-
-vtkStandardNewMacro(vtkELNOMeshFilter)
-
-vtkELNOMeshFilter::vtkELNOMeshFilter():ShrinkFactor(0.9999)
-{
-}
-
-vtkELNOMeshFilter::~vtkELNOMeshFilter()
-{
-}
-
-int vtkELNOMeshFilter::RequestData(vtkInformation * /*request*/,
-    vtkInformationVector **input, vtkInformationVector *output)
-{
-  vtkUnstructuredGrid *usgIn = vtkUnstructuredGrid::SafeDownCast(
-      input[0]->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT()));
-
-  vtkUnstructuredGrid *usgOut = vtkUnstructuredGrid::SafeDownCast(
-      output->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT()));
-
-  if(usgIn == NULL || usgOut == NULL)
-    {
-      vtkDebugMacro("vtkELNOMeshFilter not correctly configured : Invalid input or output !");
-      return 0;
-    }
-
-  // creates offsets array
-
-  // first shrink the input
-  vtkUnstructuredGrid* usgInClone = usgIn->NewInstance();
-  usgInClone->ShallowCopy(usgIn);
-  vtkSmartPointer<vtkShrinkFilter> shrink(vtkSmartPointer<vtkShrinkFilter>::New());
-  shrink->SetInputData(usgInClone);
-  shrink->SetShrinkFactor(this->ShrinkFactor);
-  shrink->Update();
-  vtkUnstructuredGrid *shrinked(shrink->GetOutput());
-  usgInClone->Delete();
-  usgOut->ShallowCopy(shrinked);
-  // OK for the output 
-
-  // now copy ELNO data. Start by verifying if it is possible to
-  // shallow copy the array.
-  //vtkInformation *info(usgIn->GetInformation()); // todo: unused
-  //
-  vtkIdType nVerts(shrinked->GetNumberOfPoints()),ncell(usgIn->GetNumberOfCells());
-  // first loop through all cells to check if a shallow copy is possible
-  bool shallowok(true);// Anthony : checks that shrink works well. Really necessary ?
-  vtkIdType previous(0),offset(0);
-  
-  for(vtkIdType cellId = 0; cellId < ncell; cellId++)
-    {
-      if(offset != previous)
-        {
-          shallowok = false;
-          break;
-        }
-      vtkCell *cell(usgIn->GetCell(cellId));
-      vtkIdType nbptsInCell(cell->GetNumberOfPoints());
-      previous = offset + nbptsInCell;
-      //
-      offset += nbptsInCell ;
-    }
-  //
-  if(shallowok)
-    shallowok = (previous == nVerts);
-  
-  vtkFieldData *fielddata(usgIn->GetFieldData());
-  for(int index = 0; index < fielddata->GetNumberOfArrays(); index++)
-    {
-      vtkDataArray *data(fielddata->GetArray(index));
-      vtkQuadratureSchemeDefinition **dict = 0;
-      vtkInformationQuadratureSchemeDefinitionVectorKey *key(vtkQuadratureSchemeDefinition::DICTIONARY());
-      if(key->Has(data->GetInformation()))
-        {
-          int dictSize(key->Size(data->GetInformation()));
-          dict=new vtkQuadratureSchemeDefinition *[dictSize];
-          key->GetRange(data->GetInformation(),dict,0,0,dictSize);
-        }
-      if(data == NULL)
-        {
-          delete [] dict;
-          continue;
-        }
-      
-      vtkInformation *info(data->GetInformation());
-      const char *arrayOffsetName(info->Get(vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME()));
-      vtkIdTypeArray *offData(0);
-      bool isELGA(false),isELNO(false);
-
-      if(arrayOffsetName)
-        {
-          vtkFieldData *cellData(usgIn->GetCellData());
-          vtkDataArray *offDataTmp(cellData->GetArray(arrayOffsetName));
-          isELGA=offDataTmp->GetInformation()->Get(MEDUtilities::ELGA())==1;
-          isELNO=offDataTmp->GetInformation()->Get(MEDUtilities::ELNO())==1;
-          offData=dynamic_cast<vtkIdTypeArray *>(offDataTmp);
-        }
-
-      if(arrayOffsetName == NULL || isELGA)
-        {
-          if(shallowok && data->GetNumberOfTuples()==nVerts )// Anthony : is it not a little confusing to assign a FieldData on Points because the number of tuples fits the number of nodes of shrinked mesh ?
-            usgOut->GetPointData()->AddArray(data);
-          else
-            shrinked->GetFieldData()->AddArray(data);
-          delete [] dict;
-          continue;
-        }
-      else
-        {
-          vtkDataArray *newArray(data->NewInstance());
-          newArray->SetName(data->GetName());
-          usgOut->GetPointData()->AddArray(newArray);
-          newArray->SetNumberOfComponents(data->GetNumberOfComponents());
-          newArray->SetNumberOfTuples(usgOut->GetNumberOfPoints());
-          newArray->CopyComponentNames(data);
-          newArray->Delete();
-          if(isELGA)
-            {
-              vtkIdList *ids(vtkIdList::New());
-              vtkIdType offset(0);
-              for(vtkIdType cellId=0;cellId<ncell;cellId++)
-                {
-                  int cellType(shrinked->GetCellType(cellId));
-                  shrinked->GetCellPoints(cellId, ids);
-                  for(int id = 0; id < dict[cellType]->GetNumberOfQuadraturePoints(); id++)
-                    {
-                      const double * w = dict[cellType]->GetShapeFunctionWeights(id);
-                      int j;
-                      for(j = 0; j < dict[cellType]->GetNumberOfNodes(); j++)
-                        {
-                          if(w[j] == 1.0)
-                            break;
-                        }
-                      if(j == dict[cellType]->GetNumberOfNodes())
-                        {
-                          j = id;
-                        }
-                      newArray->SetTuple(ids->GetId(id), offset + j, data);
-                    }
-                  vtkCell *cell(usgIn->GetCell(cellId));
-                  vtkIdType nbptsInCell(cell->GetNumberOfPoints());
-                  offset+=nbptsInCell;
-                }
-              ids->FastDelete();
-            }
-          else if(offData && isELNO)
-            {
-              vtkIdType *offsetPtr(offData->GetPointer(0));
-              vtkIdType zeId(0);
-              for(vtkIdType cellId=0;cellId<ncell;cellId++)
-                {
-                  vtkCell *cell(shrinked->GetCell(cellId));
-                  vtkIdType nbPoints(cell->GetNumberOfPoints())/*,offset(offsetPtr[cellId])*/; // todo: offset is unused
-                  for(vtkIdType j=0;j<nbPoints;j++,zeId++)
-                    newArray->SetTuple(zeId,offsetPtr[cellId]+j,data);
-                }
-            }
-          else
-            {
-              delete [] dict;
-              continue ;
-            }
-        }
-      delete [] dict;
-    }
-  return 1;
-}
-
-void vtkELNOMeshFilter::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOMeshFilter.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOMeshFilter.h
deleted file mode 100644 (file)
index 194d0cf..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#ifndef _vtkELNOMeshFilter_h
-#define _vtkELNOMeshFilter_h
-
-#include "vtkUnstructuredGridAlgorithm.h"
-
-class VTK_EXPORT vtkELNOMeshFilter: public vtkUnstructuredGridAlgorithm
-{
-public:
-  static vtkELNOMeshFilter *New();
-  vtkTypeMacro(vtkELNOMeshFilter,vtkUnstructuredGridAlgorithm)
-  void PrintSelf(ostream& os, vtkIndent indent);
-
-  vtkGetMacro(ShrinkFactor, double);
-  vtkSetMacro(ShrinkFactor, double);
-protected:
-  vtkELNOMeshFilter();
-  ~vtkELNOMeshFilter();
-
-  int RequestData(vtkInformation *, vtkInformationVector **,
-      vtkInformationVector *);
-private:
-  vtkELNOMeshFilter(const vtkELNOMeshFilter&);
-  void operator =(const vtkELNOMeshFilter&);
-private:
-  double ShrinkFactor;
-};
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOSurfaceFilter.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOSurfaceFilter.cxx
deleted file mode 100644 (file)
index c6059d6..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#include "vtkELNOSurfaceFilter.h"
-#include "vtkInformation.h"
-#include "vtkInformationVector.h"
-#include "vtkObjectFactory.h"
-#include "vtkPolyDataAlgorithm.h"
-#include "vtkPolyData.h"
-#include "vtkIdTypeArray.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-#include "vtkQuadratureSchemeDefinition.h"
-#include "vtkUnstructuredGrid.h"
-#include "vtkPVGeometryFilter.h"
-#include "vtkShrinkFilter.h"
-#include "vtkSmartPointer.h"
-#include "vtkPointData.h"
-#include "vtkCellData.h"
-#include "vtkIdList.h"
-
-//vtkCxxRevisionMacro(vtkELNOSurfaceFilter, "$Revision$")
-//;
-vtkStandardNewMacro(vtkELNOSurfaceFilter)
-
-vtkELNOSurfaceFilter::vtkELNOSurfaceFilter()
-{
-}
-
-vtkELNOSurfaceFilter::~vtkELNOSurfaceFilter()
-{
-}
-
-int vtkELNOSurfaceFilter::RequestData(vtkInformation * /*request*/, vtkInformationVector **input, vtkInformationVector *output)
-{
-  vtkUnstructuredGrid *usgIn=vtkUnstructuredGrid::SafeDownCast(
-      input[0]->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT()));
-
-  vtkUnstructuredGrid *usgOut=vtkUnstructuredGrid::SafeDownCast(
-      output->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT()));
-
-  vtkIdTypeArray* usg_offsets=vtkIdTypeArray::SafeDownCast(
-      this->GetInputArrayToProcess(0, input));
-
-  if(usgIn==NULL||usg_offsets==NULL||usgOut==NULL)
-    {
-    vtkDebugMacro("vtkELNOSurfaceFilter no correctly configured : offsets = " << usg_offsets);
-    return 1;
-    }
-
-  // first shrink the input
-  vtkUnstructuredGrid* usgInClone=usgIn->NewInstance();
-
-  usgInClone->ShallowCopy(usgIn);
-
-  vtkSmartPointer<vtkPVGeometryFilter> geomFilter=vtkSmartPointer<
-      vtkPVGeometryFilter>::New();
-  geomFilter->SetInputData(usgInClone);
-  geomFilter->SetPassThroughCellIds(1);
-  geomFilter->SetPassThroughPointIds(1);
-  geomFilter->SetUseOutline(0);
-  geomFilter->Update();
-
-  vtkPolyData* surface=vtkPolyData::SafeDownCast(geomFilter->GetOutput());
-  vtkIdTypeArray* originalCellIds=vtkIdTypeArray::SafeDownCast(
-      surface->GetCellData()->GetArray("vtkOriginalCellIds"));
-  vtkIdTypeArray* originalPointIds=vtkIdTypeArray::SafeDownCast(
-      surface->GetPointData()->GetArray("vtkOriginalPointIds"));
-
-  if( originalCellIds == NULL )
-  {
-    vtkErrorMacro("vtkPVGeometryFilter return NULL 'vtkOriginalCellIds' array");
-    return 0;
-  }
-
-  if(originalPointIds==NULL)
-  {
-    vtkErrorMacro("It appears that your dataset is not reduced using vtkPVGeometryFilter (NULL 'vtkOriginalPointIds).\n==================================================================================================\nProbably your dataset is not 3D.\nIf it is not a 3D dataset you are expected to use ELNO Mesh filter instead of ELNO Surface filter.\n==================================================================================================\n");
-    return 0;
-  }
-
-  vtkSmartPointer<vtkShrinkFilter> shrink=
-      vtkSmartPointer<vtkShrinkFilter>::New();
-  shrink->SetInputConnection(geomFilter->GetOutputPort(0));
-  shrink->SetShrinkFactor(0.9999);
-  shrink->Update();
-
-  vtkUnstructuredGrid* shrinked=shrink->GetOutput();
-
-  usgInClone->Delete();
-
-  usgOut->ShallowCopy(shrinked);
-
-  vtkIdTypeArray* offsets=vtkIdTypeArray::SafeDownCast(
-      shrinked->GetCellData()->GetArray(usg_offsets->GetName()));
-
-  // now copy ELNO data. Start by verifying if it is possible to
-  // shallow copy the array.
-  vtkInformation *info=offsets->GetInformation();
-  vtkInformationQuadratureSchemeDefinitionVectorKey *key=
-      vtkQuadratureSchemeDefinition::DICTIONARY();
-  if(!key->Has(info))
-    {
-    vtkDebugMacro("Dictionary is not present in array " << offsets->GetName()
-                  << " " << offsets << " Aborting." );
-    return 0;
-    }
-  int dictSize=key->Size(info);
-  vtkQuadratureSchemeDefinition **dict=
-      new vtkQuadratureSchemeDefinition *[dictSize];
-  key->GetRange(info, dict, 0, 0, dictSize);
-
-  vtkIdType ncell=shrinked->GetNumberOfCells();
-
-  vtkFieldData* fielddata=usgIn->GetFieldData();
-  vtkIdList *ids=vtkIdList::New();
-  vtkIdList *surfaceIds=vtkIdList::New();
-  vtkIdList *originalIds=vtkIdList::New();
-  for(int index=0; index<fielddata->GetNumberOfArrays(); index++)
-    {
-    vtkDataArray* data=fielddata->GetArray(index);
-    if(data==NULL)
-      continue;
-
-    vtkInformation* info=data->GetInformation();
-    const char* arrayOffsetName=info->Get(
-        vtkQuadratureSchemeDefinition::QUADRATURE_OFFSET_ARRAY_NAME());
-
-    if(arrayOffsetName == NULL ||
-       strcmp(arrayOffsetName, offsets->GetName())!=0)
-      {
-      usgOut->GetFieldData()->AddArray(data);
-
-      continue;
-      }
-
-    vtkDataArray* newArray=data->NewInstance();
-    newArray->SetName(data->GetName());
-    usgOut->GetPointData()->AddArray(newArray);
-    newArray->SetNumberOfComponents(data->GetNumberOfComponents());
-    newArray->SetNumberOfTuples(usgOut->GetNumberOfPoints());
-    newArray->CopyComponentNames(data);
-    newArray->Delete();
-
-    for(vtkIdType cellId=0; cellId<ncell; cellId++)
-      {
-      vtkIdType offset=offsets->GetValue(cellId);
-
-      vtkIdType originalCellId=originalCellIds->GetValue(cellId);
-      int originalCellType=usgIn->GetCellType(originalCellId);
-
-      shrinked->GetCellPoints(cellId, ids);
-      surface->GetCellPoints(cellId, surfaceIds);
-
-      for(int id=0; id<ids->GetNumberOfIds(); id++)
-        {
-        vtkIdType surfaceId=surfaceIds->GetId(id);
-        vtkIdType shrinkedId=ids->GetId(id);
-        vtkIdType originalPointId = originalPointIds->GetValue(surfaceId);
-
-        usgIn->GetCellPoints(originalCellId, originalIds);
-        int originalLocalId=-1;
-        for(int li=0; li<originalIds->GetNumberOfIds(); li++)
-          {
-          if(originalPointId==originalIds->GetId(li))
-            {
-            originalLocalId=li;
-            break;
-            }
-          }
-        if(originalLocalId==-1)
-          {
-          originalLocalId=0;
-          vtkErrorMacro("cannot find original id");
-          }
-
-        const double * w=dict[originalCellType]->GetShapeFunctionWeights(
-            originalLocalId);
-        int j;
-        for(j=0; j<dict[originalCellType]->GetNumberOfNodes(); j++)
-          {
-          if(w[j]==1.0)
-            break;
-          }
-        if(j==dict[originalCellType]->GetNumberOfNodes())
-          {
-            //vtkErrorMacro("cannot find elno weigth.");
-          j=id;
-          }
-        newArray->SetTuple(shrinkedId, offset+j, data);
-        }
-      }
-    }
-
-  ids->FastDelete();
-  surfaceIds->FastDelete();
-  originalIds->FastDelete();
-  delete[] dict;
-
-  return 1;
-}
-
-void vtkELNOSurfaceFilter::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOSurfaceFilter.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkELNOSurfaceFilter.h
deleted file mode 100644 (file)
index 3a8bbd5..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#ifndef _vtkELNOSurfaceFilter_h
-#define _vtkELNOSurfaceFilter_h
-
-#include "vtkUnstructuredGridAlgorithm.h"
-
-class VTK_EXPORT vtkELNOSurfaceFilter: public vtkUnstructuredGridAlgorithm
-{
-public:
-  static vtkELNOSurfaceFilter *New();
-  vtkTypeMacro(vtkELNOSurfaceFilter,vtkUnstructuredGridAlgorithm)
-  void PrintSelf(ostream& os, vtkIndent indent);
-
-protected:
-  vtkELNOSurfaceFilter();
-  ~vtkELNOSurfaceFilter();
-
-  int RequestData(vtkInformation *, vtkInformationVector **,
-      vtkInformationVector *);
-
-private:
-  vtkELNOSurfaceFilter(const vtkELNOSurfaceFilter&);
-  void operator =(const vtkELNOSurfaceFilter&);
-};
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractCellType.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractCellType.cxx
deleted file mode 100644 (file)
index 2930808..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-#include "vtkExtractCellType.h"
-
-#include "vtkCell.h"
-#include "vtkCellTypes.h"
-#include "vtkCompositeDataSet.h"
-#include "vtkCompositeDataIterator.h"
-#include "vtkDataArraySelection.h"
-#include "vtkDataSet.h"
-#include "vtkExtractSelection.h"
-#include "vtkIdTypeArray.h"
-#include "vtkInformation.h"
-#include "vtkObjectFactory.h"
-#include "vtkSelection.h"
-#include "vtkSelectionNode.h"
-
-vtkStandardNewMacro(vtkExtractCellType);
-
-//----------------------------------------------------------------------------
-vtkExtractCellType::vtkExtractCellType(){}
-
-//----------------------------------------------------------------------------
-vtkExtractCellType::~vtkExtractCellType(){}
-
-//----------------------------------------------------------------------------
-void vtkExtractCellType::AppendToGeoTypes(vtkDataSet* dataset)
-{
-  for(int i = 0; i < dataset->GetNumberOfCells(); i++)
-  {
-    vtkCell* cell = dataset->GetCell(i);
-
-    // TODO use MEDCoupling CellType API
-    const char* cellType = vtkCellTypes::GetClassNameFromTypeId(cell->GetCellType());
-    if (!this->FieldSelection->ArrayExists(cellType))
-    {
-      this->FieldSelection->AddArray(cellType, false);
-    }
-  }
-}
-
-//----------------------------------------------------------------------------
-void vtkExtractCellType::SelectIds(vtkDataSet* dataset, vtkIdTypeArray* selArr)
-{
-  for(int i = 0; i < dataset->GetNumberOfCells(); i++)
-  {
-    vtkCell* cell = dataset->GetCell(i);
-    
-    // TODO use MEDCoupling CellType API
-    const char* cellType = vtkCellTypes::GetClassNameFromTypeId(cell->GetCellType());
-
-    // Needed as append to geotypes may not have been done in request information
-    // when loading state
-    if (!this->FieldSelection->ArrayExists(cellType))
-    {
-      this->FieldSelection->AddArray(cellType, false);
-    }
-    else if(this->FieldSelection->ArrayIsEnabled(cellType))
-    {
-      selArr->InsertNextValue(i);
-    }
-  }
-}
-
-//----------------------------------------------------------------------------
-int vtkExtractCellType::RequestInformation(vtkInformation* req, vtkInformationVector** inputVector, vtkInformationVector* outputVector)
-{
-  vtkDataSet* inputDS = vtkDataSet::GetData(inputVector[0]);
-  vtkCompositeDataSet* inputComposite = vtkCompositeDataSet::GetData(inputVector[0]);
-
-  if (inputDS)
-  {
-    this->AppendToGeoTypes(inputDS);
-  }
-  else if(inputComposite)
-  {
-    vtkSmartPointer<vtkCompositeDataIterator> iter;
-    iter.TakeReference(inputComposite->NewIterator());
-    for (iter->InitTraversal(); !iter->IsDoneWithTraversal(); iter->GoToNextItem())
-    {
-      this->AppendToGeoTypes(vtkDataSet::SafeDownCast(inputComposite->GetDataSet(iter)));
-    }
-  }
-
-  return 1;
-}
-
-//----------------------------------------------------------------------------
-int vtkExtractCellType::RequestData(vtkInformation* req, vtkInformationVector** inputVector, vtkInformationVector* outputVector)
-{
-  // Get the input and output data objects.
-  vtkDataSet* input = vtkDataSet::GetData(inputVector[0]);
-  vtkDataSet* output = vtkDataSet::GetData(outputVector);
-
-  // Create a selection, sel1, of cells with indices 7643-7499-7355-7211
-  vtkNew<vtkIdTypeArray> selArr1;
-
-  vtkDataSet* inputDS = vtkDataSet::GetData(inputVector[0]);
-  vtkCompositeDataSet* inputComposite = vtkCompositeDataSet::GetData(inputVector[0]);
-
-  if (inputDS)
-  {
-    this->SelectIds(inputDS, selArr1);
-  }
-  else if(inputComposite)
-  {
-    vtkSmartPointer<vtkCompositeDataIterator> iter;
-    iter.TakeReference(inputComposite->NewIterator());
-    for (iter->InitTraversal(); !iter->IsDoneWithTraversal(); iter->GoToNextItem())
-    {
-      this->SelectIds(vtkDataSet::SafeDownCast(inputComposite->GetDataSet(iter)), selArr1);
-    }
-  }
-
-  vtkNew<vtkSelectionNode> selNode1;
-  selNode1->SetContentType(vtkSelectionNode::INDICES);
-  selNode1->SetFieldType(vtkSelectionNode::CELL);
-  selNode1->GetProperties()->Set(vtkSelectionNode::COMPOSITE_INDEX(), 1);
-  selNode1->GetProperties()->Set(vtkSelectionNode::INVERSE(), this->InsideOut);
-  selNode1->SetSelectionList(selArr1);
-  vtkNew<vtkSelection> sel1;
-  sel1->AddNode(selNode1);
-
-  this->SetInputData(1, sel1);
-  this->Superclass::RequestData(req, inputVector, outputVector);
-  return 1;
-}
-
-//----------------------------------------------------------------------------
-void vtkExtractCellType::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-}
-//------------------------------------------------------------------------------
-int vtkExtractCellType::GetNumberOfGeoTypesArrays()
-{
-  return this->FieldSelection->GetNumberOfArrays();
-}
-
-//------------------------------------------------------------------------------
-const char *vtkExtractCellType::GetGeoTypesArrayName(int index)
-{
-  return this->FieldSelection->GetArrayName(index) + 3;  // String parsing -- remove "vtk"
-}
-
-//------------------------------------------------------------------------------
-int vtkExtractCellType::GetGeoTypesArrayStatus(const char *name)
-{
-  return this->FieldSelection->ArrayIsEnabled(name);
-}
-
-//------------------------------------------------------------------------------
-void vtkExtractCellType::SetGeoTypesStatus(const char *name, int status)
-{
-  std::string complete_name = "vtk";
-  complete_name.append(name);
-  if (this->GetGeoTypesArrayStatus(complete_name.c_str()) != status)
-  {
-    if (status)
-    {
-      this->FieldSelection->EnableArray(complete_name.c_str());
-    }
-    else
-    {
-      this->FieldSelection->DisableArray(complete_name.c_str());
-    }
-    this->Modified();
-  }
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractCellType.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractCellType.h
deleted file mode 100644 (file)
index f92584c..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef vtkExtractCellType_h
-#define vtkExtractCellType_h
-
-#include "MEDReaderIOModule.h" // for export macro
-#include "vtkDataSetAlgorithm.h"
-#include "vtkExtractSelection.h"
-#include "vtkNew.h"
-
-class vtkDataArraySelection;
-class vtkIdTypeArray;
-
-class MEDREADERIO_EXPORT vtkExtractCellType : public vtkExtractSelection
-{
-public:
-  static vtkExtractCellType* New();
-  vtkTypeMacro(vtkExtractCellType, vtkExtractSelection);
-  void PrintSelf(ostream& os, vtkIndent indent) override;
-
-  virtual int GetNumberOfGeoTypesArrays();
-  const char *GetGeoTypesArrayName(int index);
-  int GetGeoTypesArrayStatus(const char *name);
-  virtual void SetGeoTypesStatus(const char *name, int status);
-  
-  vtkSetMacro(InsideOut, bool);
-
-protected:
-  vtkExtractCellType();
-  ~vtkExtractCellType();
-
-  int RequestInformation(vtkInformation* req, vtkInformationVector** inInfo, vtkInformationVector* outInfo) override;
-  int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
-
-  void AppendToGeoTypes(vtkDataSet* dataset);
-  void SelectIds(vtkDataSet* dataset, vtkIdTypeArray* selArr);
-
-private:
-  vtkExtractCellType(const vtkExtractCellType&) = delete;
-  void operator=(const vtkExtractCellType&) = delete;
-  
-  vtkNew<vtkDataArraySelection> FieldSelection;
-  int InsideOut = false;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractGroup.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractGroup.cxx
deleted file mode 100644 (file)
index 5fe4f3c..0000000
+++ /dev/null
@@ -1,380 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "vtkExtractGroup.h"
-#include "MEDFileFieldRepresentationTree.hxx"
-#include "ExtractGroupHelper.h"
-#include "vtkMEDReader.h"
-#include "VTKMEDTraits.hxx"
-
-#include "vtkAdjacentVertexIterator.h"
-#include "vtkAOSDataArrayTemplate.h"
-#include "vtkIntArray.h"
-#include "vtkLongArray.h"
-#ifdef WIN32
-#include "vtkLongLongArray.h"
-#endif
-#include "vtkCellData.h"
-#include "vtkPointData.h"
-
-#include "vtkStreamingDemandDrivenPipeline.h"
-#include "vtkUnstructuredGrid.h"
-#include  "vtkMultiBlockDataSet.h"
-
-#include "vtkInformationStringKey.h"
-#include "vtkAlgorithmOutput.h"
-#include "vtkObjectFactory.h"
-#include "vtkMutableDirectedGraph.h"
-#include "vtkMultiBlockDataSet.h"
-#include "vtkDataSet.h"
-#include "vtkInformationVector.h"
-#include "vtkInformation.h"
-#include "vtkDataArraySelection.h"
-#include "vtkTimeStamp.h"
-#include "vtkInEdgeIterator.h"
-#include "vtkInformationDataObjectKey.h"
-#include "vtkExecutive.h"
-#include "vtkVariantArray.h"
-#include "vtkStringArray.h"
-#include "vtkDoubleArray.h"
-#include "vtkCharArray.h"
-#include "vtkUnsignedCharArray.h"
-#include "vtkDataSetAttributes.h"
-#include "vtkDemandDrivenPipeline.h"
-#include "vtkDataObjectTreeIterator.h"
-#include "vtkThreshold.h"
-#include "vtkMultiBlockDataGroupFilter.h"
-#include "vtkMergeBlocks.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-
-#include <map>
-#include <deque>
-
-vtkStandardNewMacro(vtkExtractGroup)
-
-class vtkExtractGroup::vtkExtractGroupInternal : public ExtractGroupInternal
-{
-};
-
-////////////////////
-
-vtkExtractGroup::vtkExtractGroup():SIL(NULL),Internal(new vtkExtractGroupInternal),InsideOut(0)
-{
-}
-
-vtkExtractGroup::~vtkExtractGroup()
-{
-  delete this->Internal;
-}
-
-void vtkExtractGroup::SetInsideOut(int val)
-{
-  if(this->InsideOut!=val)
-    {
-      this->InsideOut=val;
-      this->Modified();
-    }
-}
-
-int vtkExtractGroup::RequestInformation(vtkInformation * /*request*/, vtkInformationVector **inputVector, vtkInformationVector */*outputVector*/)
-{
-//  vtkUnstructuredGridAlgorithm::RequestInformation(request,inputVector,outputVector);
-  try
-    {
-//      std::cerr << "########################################## vtkExtractGroup::RequestInformation ##########################################" << std::endl;
-//      request->Print(cout);
-      //vtkInformation *outInfo(outputVector->GetInformationObject(0)); // todo: unused
-      vtkInformation *inputInfo(inputVector[0]->GetInformationObject(0));
-      if(!ExtractGroupInternal::IndependantIsInformationOK(vtkMEDReader::META_DATA(),inputInfo))
-        {
-        vtkErrorMacro("No SIL Data available ! The source of this filter must be MEDReader !");
-        return 0;
-        }
-
-      this->SetSIL(vtkMutableDirectedGraph::SafeDownCast(inputInfo->Get(vtkMEDReader::META_DATA())));
-      this->Internal->loadFrom(this->SIL);
-      //this->Internal->printMySelf(std::cerr);
-    }
-  catch(INTERP_KERNEL::Exception& e)
-    {
-      std::cerr << "Exception has been thrown in vtkExtractGroup::RequestInformation : " << e.what() << std::endl;
-      return 0;
-    }
-  return 1;
-}
-
-/*!
- * Do not use vtkCxxSetObjectMacro macro because input mdg comes from an already managed in the pipeline just a ref on it.
- */
-void vtkExtractGroup::SetSIL(vtkMutableDirectedGraph *mdg)
-{
-  if(this->SIL==mdg)
-    return ;
-  this->SIL=mdg;
-}
-
-template<class CellPointExtractor>
-vtkDataSet *FilterFamilies(vtkSmartPointer<vtkThreshold>& thres,
-                           vtkDataSet *input, const std::set<int>& idsToKeep, bool insideOut, const char *arrNameOfFamilyField,
-                           const char *associationForThreshold, bool& catchAll, bool& catchSmth)
-{
-  const int VTK_DATA_ARRAY_DELETE=vtkAOSDataArrayTemplate<double>::VTK_DATA_ARRAY_DELETE;
-  const char ZE_SELECTION_ARR_NAME[]="@@ZeSelection@@";
-  vtkDataSet *output(input->NewInstance());
-  output->ShallowCopy(input);
-  thres->SetInputData(output);
-  //vtkDataSetAttributes *dscIn(input->GetCellData()),*dscIn2(input->GetPointData()); // todo: unused
-  //vtkDataSetAttributes *dscOut(output->GetCellData()),*dscOut2(output->GetPointData()); // todo: unused
-  //
-  double vMin(insideOut==0?1.:0.),vMax(insideOut==0?2.:1.);
-  thres->SetUpperThreshold(vMax);
-  thres->SetLowerThreshold(vMin);
-  // OK for the output
-  //
-  CellPointExtractor cpe2(input);
-  vtkDataArray *da(cpe2.Get()->GetScalars(arrNameOfFamilyField));
-  if(!da)
-    return 0;
-  std::string daName(da->GetName());
-  typedef MEDFileVTKTraits<MEDCoupling::mcIdType>::VtkType vtkMCIdTypeArray;
-  vtkMCIdTypeArray *dai(vtkMCIdTypeArray::SafeDownCast(da));
-  if(daName!=arrNameOfFamilyField || !dai)
-    return 0;
-  //
-  int nbOfTuples(dai->GetNumberOfTuples());
-  vtkCharArray *zeSelection(vtkCharArray::New());
-  zeSelection->SetName(ZE_SELECTION_ARR_NAME);
-  zeSelection->SetNumberOfComponents(1);
-  char *pt(new char[nbOfTuples]);
-  zeSelection->SetArray(pt,nbOfTuples,0,VTK_DATA_ARRAY_DELETE);
-  const MEDCoupling::mcIdType *inPtr(dai->GetPointer(0));
-  std::fill(pt,pt+nbOfTuples,0);
-  catchAll=true; catchSmth=false;
-  std::vector<bool> pt2(nbOfTuples,false);
-  for(std::set<int>::const_iterator it=idsToKeep.begin();it!=idsToKeep.end();it++)
-    {
-      bool catchFid(false);
-      for(int i=0;i<nbOfTuples;i++)
-        if(inPtr[i]==*it)
-          { pt2[i]=true; catchFid=true; }
-      if(!catchFid)
-        catchAll=false;
-      else
-        catchSmth=true;
-    }
-  for(int ii=0;ii<nbOfTuples;ii++)
-    if(pt2[ii])
-      pt[ii]=2;
-  CellPointExtractor cpe3(output);
-  int idx(cpe3.Get()->AddArray(zeSelection));
-  cpe3.Get()->SetActiveAttribute(idx,vtkDataSetAttributes::SCALARS);
-  cpe3.Get()->CopyScalarsOff();
-  zeSelection->Delete();
-  //
-  thres->SetInputArrayToProcess(idx,0,0,associationForThreshold,ZE_SELECTION_ARR_NAME);
-  thres->Update();
-  vtkUnstructuredGrid *zeComputedOutput(thres->GetOutput());
-  CellPointExtractor cpe(zeComputedOutput);
-  cpe.Get()->RemoveArray(idx);
-  output->Delete();
-  zeComputedOutput->Register(0);
-  return zeComputedOutput;
-}
-
-class CellExtractor
-{
-public:
-  CellExtractor(vtkDataSet *ds):_ds(ds) { }
-  vtkDataSetAttributes *Get() { return _ds->GetCellData(); }
-private:
-  vtkDataSet *_ds;
-};
-
-class PointExtractor
-{
-public:
-  PointExtractor(vtkDataSet *ds):_ds(ds) { }
-  vtkDataSetAttributes *Get() { return _ds->GetPointData(); }
-private:
-  vtkDataSet *_ds;
-};
-int vtkExtractGroup::RequestData(vtkInformation * /*request*/, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
-{
-  try
-    {
-      // std::cerr << "########################################## vtkExtractGroup::RequestData        ##########################################" << std::endl;
-      // request->Print(cout);
-      vtkInformation* inputInfo=inputVector[0]->GetInformationObject(0);
-      vtkMultiBlockDataSet *inputMB(vtkMultiBlockDataSet::SafeDownCast(inputInfo->Get(vtkDataObject::DATA_OBJECT())));
-      if(inputMB->GetNumberOfBlocks()!=1)
-        {
-          std::ostringstream oss; oss << "vtkExtractGroup::RequestData : input has not the right number of parts ! Expected 1 !";
-          if(this->HasObserver("ErrorEvent") )
-            this->InvokeEvent("ErrorEvent",const_cast<char *>(oss.str().c_str()));
-          else
-            vtkOutputWindowDisplayErrorText(const_cast<char *>(oss.str().c_str()));
-          vtkObject::BreakOnError();
-          return 0;
-        }
-      vtkDataSet *input(vtkDataSet::SafeDownCast(inputMB->GetBlock(0)));
-      //vtkInformation *info(input->GetInformation()); // todo: unused
-      vtkInformation *outInfo(outputVector->GetInformationObject(0));
-      vtkMultiBlockDataSet *output(vtkMultiBlockDataSet::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT())));
-      std::set<int> idsToKeep(this->Internal->getIdsToKeep());
-      this->Internal->clearSelection();
-      // first shrink the input
-      bool catchAll,catchSmth;
-      vtkSmartPointer<vtkThreshold> thres1(vtkSmartPointer<vtkThreshold>::New()),thres2(vtkSmartPointer<vtkThreshold>::New());
-      vtkDataSet *tryOnCell(FilterFamilies<CellExtractor>(thres1,input,idsToKeep,this->InsideOut,
-                                                          MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME,"vtkDataObject::FIELD_ASSOCIATION_CELLS",catchAll,catchSmth));
-      if(tryOnCell)
-        {
-          if(catchAll)
-            {
-              output->SetBlock(0,tryOnCell);
-              tryOnCell->Delete();//
-              return 1;
-            }
-          else
-            {
-              if(catchSmth)
-                {
-                  vtkDataSet *tryOnNode(FilterFamilies<PointExtractor>(thres2,input,idsToKeep,this->InsideOut,
-                                                                       MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME,"vtkDataObject::FIELD_ASSOCIATION_POINTS",catchAll,catchSmth));
-                  if(tryOnNode && catchSmth)
-                    {
-                      output->SetBlock(0,tryOnCell);
-                      output->SetBlock(1,tryOnNode);
-                      tryOnCell->Delete();
-                      tryOnNode->Delete();
-                      return 1;
-                    }
-                  else
-                    {
-                      if(tryOnNode)
-                        tryOnNode->Delete();
-                      output->SetBlock(0,tryOnCell);
-                      tryOnCell->Delete();
-                      return 1;
-                    }
-                }
-              else
-                {
-                  vtkDataSet *tryOnNode(FilterFamilies<PointExtractor>(thres1,input,idsToKeep,this->InsideOut,
-                                                                       MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME,"vtkDataObject::FIELD_ASSOCIATION_POINTS",catchAll,catchSmth));
-                  if(tryOnNode)
-                    {
-                      tryOnCell->Delete();
-                      output->SetBlock(0,tryOnNode);
-                      tryOnNode->Delete();
-                      return 1;
-                    }
-                  else
-                    {
-                      output->SetBlock(0,tryOnNode);
-                      tryOnCell->Delete();
-                      return 0;
-                    }
-                }
-            }
-        }
-      else
-        {
-          vtkDataSet *tryOnNode(FilterFamilies<PointExtractor>(thres1,input,idsToKeep,this->InsideOut,
-                                                               MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME,"vtkDataObject::FIELD_ASSOCIATION_POINTS",catchAll,catchSmth));
-          if(tryOnNode)
-            {
-              output->ShallowCopy(tryOnNode);
-              tryOnNode->Delete();//
-              return 1;
-            }
-          else
-            {
-              std::ostringstream oss; oss << "vtkExtractGroup::RequestData : The integer array with name \""<< MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME;
-              oss << "\" or \"" << MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME << "\" does not exist ! The extraction of group and/or family is not possible !";
-              if(this->HasObserver("ErrorEvent") )
-                this->InvokeEvent("ErrorEvent",const_cast<char *>(oss.str().c_str()));
-              else
-                vtkOutputWindowDisplayErrorText(const_cast<char *>(oss.str().c_str()));
-              vtkObject::BreakOnError();
-              return 0;
-            }
-        }
-    }
-  catch(INTERP_KERNEL::Exception& e)
-    {
-      std::cerr << "Exception has been thrown in vtkExtractGroup::RequestData : " << e.what() << std::endl;
-      return 0;
-    }
-}
-
-int vtkExtractGroup::GetSILUpdateStamp()
-{
-  return (int)this->SILTime;
-}
-
-const char* vtkExtractGroup::GetGrpStart()
-{
-  return ExtractGroupGrp::START;
-}
-
-const char* vtkExtractGroup::GetFamStart()
-{
-  return ExtractGroupFam::START;
-}
-
-void vtkExtractGroup::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-}
-
-int vtkExtractGroup::GetNumberOfGroupsFlagsArrays()
-{
-  int ret(this->Internal->getNumberOfEntries());
-  //std::cerr << "vtkExtractGroup::GetNumberOfFieldsTreeArrays() -> " << ret << std::endl;
-  return ret;
-}
-
-const char *vtkExtractGroup::GetGroupsFlagsArrayName(int index)
-{
-  const char *ret(this->Internal->getKeyOfEntry(index));
-//  std::cerr << "vtkExtractGroup::GetFieldsTreeArrayName(" << index << ") -> " << ret << std::endl;
-  return ret;
-}
-
-int vtkExtractGroup::GetGroupsFlagsArrayStatus(const char *name)
-{
-  int ret((int)this->Internal->getStatusOfEntryStr(name));
-//  std::cerr << "vtkExtractGroup::GetGroupsFlagsArrayStatus(" << name << ") -> " << ret << std::endl;
-  return ret;
-}
-
-void vtkExtractGroup::SetGroupsFlagsStatus(const char *name, int status)
-{
-  //std::cerr << "vtkExtractGroup::SetFieldsStatus(" << name << "," << status << ")" << std::endl;
-  this->Internal->setStatusOfEntryStr(name,(bool)status);
-  this->Modified();
-  //this->Internal->printMySelf(std::cerr);
-}
-
-const char *vtkExtractGroup::GetMeshName()
-{
-  return this->Internal->getMeshName();
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractGroup.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkExtractGroup.h
deleted file mode 100644 (file)
index 1680285..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef vtkExtractGroup_h__
-#define vtkExtractGroup_h__
-
-#include "vtkMultiBlockDataSetAlgorithm.h"
-
-class vtkMutableDirectedGraph;
-
-class VTK_EXPORT vtkExtractGroup: public vtkMultiBlockDataSetAlgorithm
-{
-public:
-  static vtkExtractGroup* New();
-  vtkTypeMacro(vtkExtractGroup, vtkMultiBlockDataSetAlgorithm)
-  void PrintSelf(ostream& os, vtkIndent indent);
-  virtual int GetNumberOfGroupsFlagsArrays();
-  const char *GetGroupsFlagsArrayName(int index);
-  int GetGroupsFlagsArrayStatus(const char *name);
-  virtual void SetGroupsFlagsStatus(const char *name, int status);
-  void SetInsideOut(int val);
-  // Description:
-  // Every time the SIL is updated a this will return a different value.
-  virtual int GetSILUpdateStamp();
-  const char *GetMeshName();
-  static const char* GetGrpStart();
-  static const char* GetFamStart();
-protected:
-  vtkExtractGroup();
-  ~vtkExtractGroup();
-
-  int RequestInformation(vtkInformation * request,
-      vtkInformationVector **inputVector, vtkInformationVector *outputVector);
-
-  int RequestData(vtkInformation * request, vtkInformationVector **inputVector,
-      vtkInformationVector *outputVector);
-
-  // Description:
-  // This SIL stores the structure of the mesh/groups/cell types
-  // that can be selected.
-  virtual void SetSIL(vtkMutableDirectedGraph*);
-  vtkGetObjectMacro(SIL, vtkMutableDirectedGraph);
-protected:
-  vtkMutableDirectedGraph *SIL;
-  vtkTimeStamp SILTime;
-private:
-  vtkExtractGroup(const vtkExtractGroup&);
-  void operator=(const vtkExtractGroup&); // Not implemented.
- private:
-  //BTX
-  //ETX
-  class vtkExtractGroupInternal;
-  vtkExtractGroupInternal *Internal;
-  int InsideOut;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkFileSeriesGroupReader.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkFileSeriesGroupReader.cxx
deleted file mode 100644 (file)
index 5adfb5b..0000000
+++ /dev/null
@@ -1,249 +0,0 @@
-// Copyright (C) 2022-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#include "vtkFileSeriesGroupReader.h"
-
-#include <vtkCollection.h>
-#include <vtkInformation.h>
-#include <vtkInformationVector.h>
-#include <vtkMultiBlockDataSet.h>
-#include <vtkMultiProcessController.h>
-#include <vtkObjectFactory.h>
-#include <vtkSmartPointer.h>
-#include <vtkStreamingDemandDrivenPipeline.h>
-
-#include "vtkMEDReader.h"
-
-#include <vector>
-#include <string>
-
-vtkStandardNewMacro(vtkFileSeriesGroupReader);
-
-//=============================================================================
-struct vtkFileSeriesGroupReaderInternals
-{
-  std::vector<std::string> FileNames;
-  vtkNew<vtkCollection> ReaderCollection;
-};
-
-//=============================================================================
-vtkFileSeriesGroupReader::vtkFileSeriesGroupReader()
-  : Internals(new vtkFileSeriesGroupReaderInternals())
-{
-  this->SetNumberOfInputPorts(0);
-  this->SetNumberOfOutputPorts(1);
-}
-
-//-----------------------------------------------------------------------------
-vtkFileSeriesGroupReader::~vtkFileSeriesGroupReader() = default;
-
-//----------------------------------------------------------------------------
-void vtkFileSeriesGroupReader::AddFileName(const char* name)
-{
-  // Make sure the reader always has a filename set
-  this->ReaderSetFileName(name);
-
-  this->AddFileNameInternal(name);
-  this->Modified();
-}
-
-//----------------------------------------------------------------------------
-void vtkFileSeriesGroupReader::RemoveAllFileNames()
-{
-  this->RemoveAllFileNamesInternal();
-  this->Modified();
-}
-
-//----------------------------------------------------------------------------
-void vtkFileSeriesGroupReader::RemoveAllFileNamesInternal()
-{
-  this->Internals->FileNames.clear();
-}
-
-//----------------------------------------------------------------------------
-void vtkFileSeriesGroupReader::AddFileNameInternal(const char* name)
-{
-  this->Internals->FileNames.emplace_back(name);
-}
-
-//----------------------------------------------------------------------------
-unsigned int vtkFileSeriesGroupReader::GetNumberOfFileNames()
-{
-  return static_cast<unsigned int>(this->Internals->FileNames.size());
-}
-
-//----------------------------------------------------------------------------
-const char* vtkFileSeriesGroupReader::GetFileName(unsigned int idx)
-{
-  if (idx >= this->Internals->FileNames.size())
-  {
-    return nullptr;
-  }
-  return this->Internals->FileNames[idx].c_str();
-}
-
-//----------------------------------------------------------------------------
-int vtkFileSeriesGroupReader::CanReadFile(const char* filename)
-{
-  if (!this->Reader)
-  {
-    return 0;
-  }
-
-  return this->ReaderCanReadFile(filename);
-}
-
-//----------------------------------------------------------------------------
-int vtkFileSeriesGroupReader::RequestInformation(
-  vtkInformation* request, vtkInformationVector** inputVector, vtkInformationVector* outputVector)
-{
-  return this->Reader->ProcessRequest(request, inputVector, outputVector);
-}
-
-//----------------------------------------------------------------------------
-int vtkFileSeriesGroupReader::RequestData(vtkInformation* vtkNotUsed(request),
-  vtkInformationVector** vtkNotUsed(inputVector), vtkInformationVector* outputVector)
-{
-  auto output = vtkMultiBlockDataSet::GetData(outputVector, 0);
-  unsigned int nBlock = this->GetNumberOfFileNames();
-  output->SetNumberOfBlocks(nBlock);
-
-  vtkInformation* info = outputVector->GetInformationObject(0);
-  double time = info->Get(vtkStreamingDemandDrivenPipeline::UPDATE_TIME_STEP());
-
-  vtkMultiProcessController *vmpc(vtkMultiProcessController::GetGlobalController());
-  unsigned int iProc = vmpc ? vmpc->GetLocalProcessId() : 0;
-  unsigned int nProc = vmpc ? vmpc->GetNumberOfProcesses() : 1;
-
-  // Simple case, one file/bloc for n proc
-  if (nBlock == 1)
-  {
-    // Make sure the information is up to date
-    this->ReaderSetFileName(this->GetFileName(0));
-    this->Reader->UpdateInformation();
-
-    this->Reader->UpdateTimeStep(time);
-    vtkDataObject* outputReader = vtkMultiBlockDataSet::SafeDownCast(this->Reader->GetOutputDataObject(0))->GetBlock(0);
-    output->SetBlock(0, outputReader);
-
-    // Copy the GAUSS_DATA info key
-    vtkInformation* mInfo = this->Reader->GetOutputInformation(0);
-    if (mInfo->Has(vtkMEDReader::GAUSS_DATA()))
-    {
-      info->CopyEntry(mInfo, vtkMEDReader::GAUSS_DATA());
-    }
-  }
-  // N file/block read by m proc, with n <= m, means 0/1 file/block per proc
-  else if (nBlock <= nProc && iProc < nBlock)
-  {
-    // Distribute in MEDReader only when reading a single file in a single block
-    vtkMEDReader::SafeDownCast(this->Reader)->SetDistributeWithMPI(false);
-
-    // Needed as the MEDReader do not support changing its filename
-    // without reloading everything.
-    this->ReaderSetFileName(this->GetFileName(iProc));
-    vtkMEDReader::SafeDownCast(this->Reader)->ReloadInternals();
-    this->Reader->UpdateInformation();
-
-    this->Reader->UpdateTimeStep(time);
-    vtkDataObject* outputReader = vtkMultiBlockDataSet::SafeDownCast(this->Reader->GetOutputDataObject(0))->GetBlock(0);
-    output->SetBlock(iProc, outputReader);
-
-    // Copy the GAUSS_DATA info key
-    vtkInformation* mInfo = this->Reader->GetOutputInformation(0);
-    if (mInfo->Has(vtkMEDReader::GAUSS_DATA()))
-    {
-      info->CopyEntry(mInfo, vtkMEDReader::GAUSS_DATA());
-    }
-  }
-  // Multiple files/block per proc
-  else
-  {
-    unsigned int nFiles = nBlock / nProc;
-    unsigned int offFile = iProc * nFiles;
-    unsigned int supFiles = nBlock % nProc;
-
-    // Last proc handle remaining files/block
-    if (iProc + 1 == nProc)
-    {
-      nFiles += supFiles;
-    }
-
-    vtkMEDReader* exposedReader = vtkMEDReader::SafeDownCast(this->Reader);
-    this->Internals->ReaderCollection->RemoveAllItems();
-    for (unsigned int i = 0; i < nFiles; i++)
-    {
-      // Create as many MEDReader as we need to avoid deep copy
-      vtkNew<vtkMEDReader> localReader;
-      this->Internals->ReaderCollection->AddItem(localReader.Get());
-
-      for (int iField = 0; iField < exposedReader->GetNumberOfFieldsTreeArrays(); iField++)
-      {
-        const char* name = exposedReader->GetFieldsTreeArrayName(iField);
-        localReader->SetFieldsStatus(name, exposedReader->GetFieldsTreeArrayStatus(name));
-      }
-      for (int iTimes = 0; iTimes < exposedReader->GetNumberOfTimesFlagsArrays(); iTimes++)
-      {
-        const char* name = exposedReader->GetTimesFlagsArrayName(iTimes);
-        localReader->SetTimesFlagsStatus(name, exposedReader->GetTimesFlagsArrayStatus(name));
-      }
-      localReader->GenerateVectors(exposedReader->GetGenerateVect());
-      localReader->ChangeMode(exposedReader->GetIsStdOrMode());
-      localReader->GhostCellGeneratorCallForPara(exposedReader->GetGCGCP());
-      localReader->GetRidOffDebugArrays(exposedReader->GetRemoveDebugArrays());
-
-      // Configure the localReader for usage with the files
-      localReader->SetFileName(this->GetFileName(i + offFile));
-      localReader->SetDistributeWithMPI(false);
-      localReader->UpdateInformation();
-      localReader->UpdateTimeStep(time);
-
-      vtkDataObject* outputReader = vtkMultiBlockDataSet::SafeDownCast(localReader->GetOutputDataObject(0))->GetBlock(0);
-      output->SetBlock(i + offFile, outputReader);
-
-      if (i == 0)
-      {
-        // Copy the GAUSS_DATA info key of the first filename
-        vtkInformation* mInfo = localReader->GetOutputInformation(0);
-        if (mInfo->Has(vtkMEDReader::GAUSS_DATA()))
-        {
-          info->CopyEntry(mInfo, vtkMEDReader::GAUSS_DATA());
-        }
-      }
-    }
-  }
-  return 1;
-}
-
-//------------------------------------------------------------------------------
-int vtkFileSeriesGroupReader::FillOutputPortInformation(
-  int vtkNotUsed(port), vtkInformation* info)
-{
-  info->Set(vtkDataObject::DATA_TYPE_NAME(), "vtkMultiBlockDataSet");
-  return 1;
-}
-
-//-----------------------------------------------------------------------------
-void vtkFileSeriesGroupReader::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-
-  os << indent << "MetaFileName: " << (this->_MetaFileName ? this->_MetaFileName : "(none)")
-     << endl;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkFileSeriesGroupReader.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkFileSeriesGroupReader.h
deleted file mode 100755 (executable)
index d4e8178..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-// Copyright (C) 2022-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#ifndef vtkFileSeriesGroupReader_h
-#define vtkFileSeriesGroupReader_h
-
-#include "vtkMetaReader.h"
-
-#include <memory>
-
-struct vtkFileSeriesGroupReaderInternals;
-
-class VTK_EXPORT vtkFileSeriesGroupReader : public vtkMetaReader
-{
-public:
-  static vtkFileSeriesGroupReader* New();
-  vtkTypeMacro(vtkFileSeriesGroupReader, vtkMetaReader);
-  void PrintSelf(ostream& os, vtkIndent indent) override;
-
-  /**
-   * CanReadFile is forwarded to the internal reader if it supports it.
-   */
-  virtual int CanReadFile(const char* filename);
-
-  /**
-   * Adds names of files to be read. The files are read in the order
-   * they are added.
-   */
-  virtual void AddFileName(const char* fname);
-
-  /**
-   * Remove all file names.
-   */
-  virtual void RemoveAllFileNames();
-
-  /**
-   * Returns the number of file names added by AddFileName.
-   */
-  virtual unsigned int GetNumberOfFileNames();
-
-  /**
-   * Returns the name of a file with index idx.
-   */
-  virtual const char* GetFileName(unsigned int idx);
-
-protected:
-  vtkFileSeriesGroupReader();
-  ~vtkFileSeriesGroupReader() override;
-
-  /**
-   * Add/Remove filenames without changing the MTime.
-   */
-  void RemoveAllFileNamesInternal();
-  void AddFileNameInternal(const char*);
-
-  int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector, vtkInformationVector* outputVector);
-  int RequestData(vtkInformation* vtkNotUsed(request), vtkInformationVector** inputVector, vtkInformationVector* outputVector);
-  int FillOutputPortInformation(int vtkNotUsed(port), vtkInformation* info);
-
-private:
-  vtkFileSeriesGroupReader(const vtkFileSeriesGroupReader&) = delete;
-  void operator=(const vtkFileSeriesGroupReader&) = delete;
-
-  std::unique_ptr<vtkFileSeriesGroupReaderInternals> Internals;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupAsMultiBlock.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupAsMultiBlock.cxx
deleted file mode 100644 (file)
index a9e2fff..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#include "vtkGroupAsMultiBlock.h"
-#include "ExtractGroupHelper.h"
-#include "vtkMEDReader.h"
-#include "vtkUgSelectCellIds.h"
-#include "MEDFileFieldRepresentationTree.hxx"
-#include "vtkLongArray.h"
-#include "VTKMEDTraits.hxx"
-
-#include <vtkCellArray.h>
-#include <vtkCellData.h>
-#include "vtkMutableDirectedGraph.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-#include <vtkMergeBlocks.h>
-#include <vtkMultiBlockDataGroupFilter.h>
-#include <vtkDoubleArray.h>
-#include <vtkInformation.h>
-#include <vtkInformationVector.h>
-#include <vtkNew.h>
-#include <vtkPVGlyphFilter.h>
-#include <vtkPointData.h>
-#include <vtkPolyData.h>
-#include <vtkUnstructuredGrid.h>
-#include <vtkMultiBlockDataSet.h>
-#include <vtkCellCenters.h>
-#include <vtkGlyphSource2D.h>
-
-class vtkGroupAsMultiBlockInternal : public ExtractGroupInternal
-{
-};
-
-vtkStandardNewMacro(vtkGroupAsMultiBlock)
-
-vtkGroupAsMultiBlock::vtkGroupAsMultiBlock():Internal(new ExtractGroupInternal)
-{
-}
-
-vtkGroupAsMultiBlock::~vtkGroupAsMultiBlock()
-{
-  delete this->Internal;
-}
-
-int vtkGroupAsMultiBlock::RequestInformation(vtkInformation */*request*/, vtkInformationVector **inputVector, vtkInformationVector */*outputVector*/)
-{
-  //vtkInformation *outInfo(outputVector->GetInformationObject(0)); // todo: unused
-  vtkInformation *inputInfo(inputVector[0]->GetInformationObject(0));
-  if(!ExtractGroupInternal::IndependantIsInformationOK(vtkMEDReader::META_DATA(),inputInfo))
-  {
-    vtkErrorMacro("No SIL Data available ! The source of this filter must be MEDReader !");
-    return 0;
-  }
-  vtkMutableDirectedGraph *mdg(vtkMutableDirectedGraph::SafeDownCast(inputInfo->Get(vtkMEDReader::META_DATA())));
-  this->Internal->loadFrom(mdg);
-  return 1;
-}
-
-int vtkGroupAsMultiBlock::RequestData(vtkInformation *vtkNotUsed(request), vtkInformationVector **inputVector, vtkInformationVector *outputVector)
-{
-  vtkInformation* inputInfo=inputVector[0]->GetInformationObject(0);
-  vtkMultiBlockDataSet *inputMB(vtkMultiBlockDataSet::SafeDownCast(inputInfo->Get(vtkDataObject::DATA_OBJECT())));
-  if(inputMB->GetNumberOfBlocks()!=1)
-  {
-    vtkErrorMacro("vtkGroupAsMultiBlock::RequestData : input has not the right number of parts ! Expected 1 !");
-    return 0;
-  }
-  vtkDataSet *input(vtkDataSet::SafeDownCast(inputMB->GetBlock(0)));
-  //vtkInformation *info(input->GetInformation()); // todo: unused
-  vtkInformation *outInfo(outputVector->GetInformationObject(0));
-  vtkMultiBlockDataSet *output(vtkMultiBlockDataSet::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT())));
-  if(!output)
-  {
-    vtkErrorMacro("vtkGroupAsMultiBlock::RequestData : something wrong !");
-    return 0; 
-  }
-  //
-  vtkUnstructuredGrid *inputc(vtkUnstructuredGrid::SafeDownCast(input));
-  if(!inputc)
-  {
-    vtkErrorMacro("vtkGroupAsMultiBlock::RequestData : Only implemented for vtkUnstructuredGrid !");
-    return 0; 
-  }
-  //
-  vtkDataArray *famIdsGen(inputc->GetCellData()->GetScalars(MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME));
-  if(!famIdsGen)
-  {
-    vtkErrorMacro(<< "vtkGroupAsMultiBlock::RequestData : Fail to locate " << MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME << " array !");
-    return 0;
-  }
-  using vtkMCIdTypeArray = MEDFileVTKTraits<mcIdType>::VtkType;
-  vtkMCIdTypeArray *famIdsArr(vtkMCIdTypeArray::SafeDownCast(famIdsGen));
-  if(!famIdsArr)
-  {
-    vtkErrorMacro(<< "vtkGroupAsMultiBlock::RequestData : cell array " << MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME << " is exepected to be IdType !");
-    return 0; 
-  }
-  // Let's go !
-  vtkIdType inputNbCell(famIdsArr->GetNumberOfTuples());
-  std::vector< std::pair<std::string,std::vector<int> > > allGroups(this->Internal->getAllGroups());
-  output->SetNumberOfBlocks(allGroups.size());
-  int blockId(0);
-  for(const auto& grp : allGroups)
-  {
-    std::vector<vtkIdType> ids;
-    // iterate on all families on current group grp
-    for(const auto& famId : grp.second)
-    {// for each family of group grp locate cells in input lying on that group
-      vtkIdType pos(0);
-      std::for_each(famIdsArr->GetPointer(0),famIdsArr->GetPointer(inputNbCell),[&pos,&ids,famId](vtkIdType curFamId) { if(curFamId == famId) { ids.push_back(pos); } pos++; });
-    }
-    std::sort(ids.begin(),ids.end());
-    vtkNew<vtkIdTypeArray> idsVTK;
-    idsVTK->SetNumberOfComponents(1); idsVTK->SetNumberOfTuples(ids.size());
-    std::copy(ids.begin(),ids.end(),idsVTK->GetPointer(0));
-    vtkNew<vtkUgSelectCellIds> cellSelector;
-    cellSelector->SetIds(idsVTK);
-    cellSelector->SetInputData(inputc);
-    cellSelector->Update();
-    output->SetBlock(blockId++,cellSelector->GetOutput());
-  }
-  return 1;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupAsMultiBlock.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupAsMultiBlock.h
deleted file mode 100644 (file)
index 03d8eca..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#pragma once
-
-#include "vtkMultiBlockDataSetAlgorithm.h"
-
-class ExtractGroupInternal;
-
-class vtkGroupAsMultiBlock : public vtkMultiBlockDataSetAlgorithm
-{
-public:
-    static vtkGroupAsMultiBlock *New();
-    vtkTypeMacro(vtkGroupAsMultiBlock, vtkMultiBlockDataSetAlgorithm)
-protected:
-    vtkGroupAsMultiBlock();
-    ~vtkGroupAsMultiBlock();
-    int RequestInformation(vtkInformation * request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override;
-    int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
-private:
-    ExtractGroupInternal *Internal;
-};
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupsNames.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupsNames.cxx
deleted file mode 100644 (file)
index aeebb13..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#include "vtkGroupsNames.h"
-#include "ExtractGroupHelper.h"
-#include "vtkMEDReader.h"
-#include "vtkUgSelectCellIds.h"
-#include "MEDFileFieldRepresentationTree.hxx"
-#include "vtkLongArray.h"
-#include "VTKMEDTraits.hxx"
-
-#include <vtkCellArray.h>
-#include <vtkCellData.h>
-#include "vtkMutableDirectedGraph.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-#include <vtkMergeBlocks.h>
-#include <vtkMultiBlockDataGroupFilter.h>
-#include <vtkDoubleArray.h>
-#include <vtkInformation.h>
-#include <vtkInformationVector.h>
-#include <vtkNew.h>
-#include <vtkPVGlyphFilter.h>
-#include <vtkPointData.h>
-#include <vtkPolyData.h>
-#include <vtkUnstructuredGrid.h>
-#include <vtkMultiBlockDataSet.h>
-#include <vtkCellCenters.h>
-#include <vtkGlyphSource2D.h>
-#include "vtkTable.h"
-#include "vtkStringArray.h"
-
-class vtkGroupsNamesInternal : public ExtractGroupInternal
-{
-};
-
-vtkStandardNewMacro(vtkGroupsNames)
-
-vtkGroupsNames::vtkGroupsNames():Internal(new ExtractGroupInternal)
-{
-}
-
-vtkGroupsNames::~vtkGroupsNames()
-{
-  delete this->Internal;
-}
-
-int vtkGroupsNames::RequestInformation(vtkInformation * /*request*/, vtkInformationVector **inputVector, vtkInformationVector */*outputVector*/)
-{
-  //vtkInformation *outInfo(outputVector->GetInformationObject(0)); // todo: unused
-  vtkInformation *inputInfo(inputVector[0]->GetInformationObject(0));
-  if(!ExtractGroupInternal::IndependantIsInformationOK(vtkMEDReader::META_DATA(),inputInfo))
-  {
-    vtkErrorMacro("No SIL Data available ! The source of this filter must be MEDReader !");
-    return 0;
-  }
-  vtkMutableDirectedGraph *mdg(vtkMutableDirectedGraph::SafeDownCast(inputInfo->Get(vtkMEDReader::META_DATA())));
-  this->Internal->loadFrom(mdg);
-  return 1;
-}
-
-int vtkGroupsNames::RequestData(vtkInformation *vtkNotUsed(request), vtkInformationVector **inputVector, vtkInformationVector *outputVector)
-{
-  vtkInformation* inputInfo=inputVector[0]->GetInformationObject(0);
-  vtkDataSet *input(nullptr);
-  vtkMultiBlockDataSet *inputMB(vtkMultiBlockDataSet::SafeDownCast(inputInfo->Get(vtkDataObject::DATA_OBJECT())));
-  if(inputMB)
-  {
-    if(inputMB->GetNumberOfBlocks()!=1)
-    {
-      vtkErrorMacro("vtkGroupsNames::RequestData : input has not the right number of parts ! Expected 1 !");
-      return 0;
-    }
-    input = vtkDataSet::SafeDownCast(inputMB->GetBlock(0));
-  }
-  else
-  {
-    input = vtkDataSet::SafeDownCast(inputInfo->Get(vtkDataObject::DATA_OBJECT()));
-  }
-  if(!input)
-  {
-    vtkErrorMacro("vtkGroupsNames::RequestData : input is neither a DataSet nor a MultiblockDataSet !");
-    return 0;
-  }
-  //vtkInformation *info(input->GetInformation()); // todo: unused
-  vtkInformation *outInfo(outputVector->GetInformationObject(0));
-  vtkTable *output(vtkTable::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT())));
-  if(!output)
-  {
-    vtkErrorMacro("vtkGroupsNames::RequestData : something wrong !");
-    return 0; 
-  }
-  //
-  vtkUnstructuredGrid *inputc(vtkUnstructuredGrid::SafeDownCast(input));
-  if(!inputc)
-  {
-    vtkErrorMacro("vtkGroupsNames::RequestData : Only implemented for vtkUnstructuredGrid !");
-    return 0; 
-  }
-  //
-  vtkDataArray *famIdsGen(inputc->GetCellData()->GetScalars(MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME));
-  if(!famIdsGen)
-  {
-    vtkErrorMacro(<< "vtkGroupsNames::RequestData : Fail to locate " << MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME << " array !");
-    return 0;
-  }
-  using vtkMCIdTypeArray = MEDFileVTKTraits<mcIdType>::VtkType;
-  vtkMCIdTypeArray *famIdsArr(vtkMCIdTypeArray::SafeDownCast(famIdsGen));
-  if(!famIdsArr)
-  {
-    vtkErrorMacro(<< "vtkGroupsNames::RequestData : cell array " << MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME << " is exepected to be IdType !");
-    return 0; 
-  }
-  // Let's go !
-  std::vector< std::pair<std::string,std::vector<int> > > allGroups(this->Internal->getAllGroups());
-  vtkNew<vtkIntArray> blockIdArr;
-  blockIdArr->SetName("Block ID");
-  blockIdArr->SetNumberOfTuples(allGroups.size());
-  vtkNew<vtkStringArray> groupNameArr;
-  groupNameArr->SetName("Group Name");
-  groupNameArr->SetNumberOfTuples(allGroups.size());
-  int blockId(0);
-  for(const auto& grp : allGroups)
-  {
-    blockIdArr->SetValue(blockId,blockId);
-    groupNameArr->SetValue(blockId,vtkStdString(grp.first));
-    blockId++;
-  }
-  output->AddColumn(blockIdArr);
-  output->AddColumn(groupNameArr);
-  return 1;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupsNames.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkGroupsNames.h
deleted file mode 100644 (file)
index caebf92..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#pragma once
-
-#include "vtkTableAlgorithm.h"
-
-class ExtractGroupInternal;
-
-class vtkGroupsNames : public vtkTableAlgorithm
-{
-public:
-    static vtkGroupsNames *New();
-    vtkTypeMacro(vtkGroupsNames, vtkTableAlgorithm)
-protected:
-    vtkGroupsNames();
-    ~vtkGroupsNames();
-    int RequestInformation(vtkInformation * request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override;
-    int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
-private:
-    ExtractGroupInternal *Internal;
-};
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkInformationGaussDoubleVectorKey.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkInformationGaussDoubleVectorKey.h
deleted file mode 100644 (file)
index b914ba8..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-
-#ifndef __vtkInformationGaussDoubleVectorKey_h_
-#define __vtkInformationGaussDoubleVectorKey_h_
-
-#include "vtkInformationDoubleVectorKey.h"
-
-class VTK_EXPORT vtkInformationGaussDoubleVectorKey : public vtkInformationDoubleVectorKey
-{
-public:
-  vtkTypeMacro(vtkInformationGaussDoubleVectorKey, vtkInformationDoubleVectorKey)
-  void PrintSelf(ostream& /*os*/, vtkIndent /*indent*/) override {};
-
-  vtkInformationGaussDoubleVectorKey(const char* name, const char* location,
-    int length = -1) : vtkInformationDoubleVectorKey(name, location, length) { }
-
-  /**
-  * This method simply returns a new vtkInformationDoubleVectorKey, given a
-  * name, a location and a required length. This method is provided for
-  * wrappers. Use the constructor directly from C++ instead.
-  */
-  static vtkInformationGaussDoubleVectorKey* MakeKey(const char* name, const char* location,
-    int length = -1)
-  {
-    return new vtkInformationGaussDoubleVectorKey(name, location, length);
-  }
-
-  /**
-  * Simply shallow copies the key from fromInfo to toInfo.
-  * This is used by the pipeline to propagate this key downstream.
-  */
-  void CopyDefaultInformation(vtkInformation* /*request*/,
-    vtkInformation* fromInfo,
-    vtkInformation* toInfo) override
-  {
-    this->ShallowCopy(fromInfo, toInfo);
-  }
-
-  /*private:
-  vtkInformationGaussDoubleVectorKey(const vtkInformationGaussDoubleVectorKey&) VTK_DELETE_FUNCTION;
-  void operator=(const vtkInformationGaussDoubleVectorKey&) VTK_DELETE_FUNCTION;*/
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDQuadraturePointsGenerator.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDQuadraturePointsGenerator.cxx
deleted file mode 100644 (file)
index 948221e..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Roman NIKOLAEV
-
-//Local includes
-#include "vtkMEDQuadraturePointsGenerator.h"
-#include "MEDFileFieldRepresentationTree.hxx"
-
-//VTK includes
-#include <vtkObjectFactory.h>
-#include <vtkInformation.h>
-#include <vtkInformationVector.h>
-#include <vtkUnstructuredGrid.h>
-#include <vtkCellData.h>
-#include <vtkPointData.h>
-#include <vtkInformationQuadratureSchemeDefinitionVectorKey.h>
-#include <vtkQuadratureSchemeDefinition.h>
-
-//-----------------------------------------------------------------------------
-vtkStandardNewMacro(vtkMEDQuadraturePointsGenerator)
-
-//-----------------------------------------------------------------------------
-vtkMEDQuadraturePointsGenerator::vtkMEDQuadraturePointsGenerator()
-{
-}
-
-//-----------------------------------------------------------------------------
-vtkMEDQuadraturePointsGenerator::~vtkMEDQuadraturePointsGenerator()
-{}
-
-
-//-----------------------------------------------------------------------------
-int vtkMEDQuadraturePointsGenerator::RequestData(
-      vtkInformation* request,
-      vtkInformationVector **input,
-      vtkInformationVector *output)
-{
-  if (this->Superclass::RequestData(request, input, output) == 0 )
-    {
-      return 0;
-    }    
-
-  //Fill MED internal array
-  vtkDataObject *tmpDataObj;
-  
-  // Get the input.
-  tmpDataObj = input[0]->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT());
-  vtkUnstructuredGrid *usgIn = vtkUnstructuredGrid::SafeDownCast(tmpDataObj);
-  // Get the output.
-  tmpDataObj = output->GetInformationObject(0)->Get(vtkDataObject::DATA_OBJECT());
-  vtkPolyData *pdOut = vtkPolyData::SafeDownCast(tmpDataObj);
-  vtkDataArray* offsets = this->GetInputArrayToProcess(0, input);
-
-  if (usgIn == NULL || pdOut == NULL || offsets == NULL )
-    {
-    vtkErrorMacro("Filter data has not been configured correctly. Aborting.");
-    return 1;
-    }
-  
-  vtkInformation *info = offsets->GetInformation();
-  vtkInformationQuadratureSchemeDefinitionVectorKey *key 
-    = vtkQuadratureSchemeDefinition::DICTIONARY();
-  if (!key->Has(info))
-    {
-    vtkErrorMacro(
-    << "Dictionary is not present in array "
-    << offsets->GetName() << " " << offsets
-    << " Aborting.");
-    return 0;
-    }
-
-  vtkIdType nCells = usgIn->GetNumberOfCells();
-  int dictSize = key->Size(info);
-  vtkQuadratureSchemeDefinition **dict
-    = new vtkQuadratureSchemeDefinition *[dictSize];
-  key->GetRange(info, dict, 0, 0, dictSize);  
-
-  // Loop over all fields to map the internal MED cell array to the points array
-  int nCArrays = usgIn->GetCellData()->GetNumberOfArrays();
-  for (int i = 0; i<nCArrays; ++i)
-    {
-    vtkDataArray* array = usgIn->GetCellData()->GetArray(i);
-    if ( !array )
-      {
-      continue;
-      }
-    std::string arrName = array->GetName();
-    if ( arrName == MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_CELL_NAME ) 
-      {        
-        vtkDataArray *out_id_cells = array->NewInstance();
-        out_id_cells->SetName(MEDFileFieldRepresentationLeavesArrays::FAMILY_ID_NODE_NAME);
-        out_id_cells->SetNumberOfComponents(array->GetNumberOfComponents());
-        out_id_cells->CopyComponentNames( array );
-        for (int cellId = 0; cellId < nCells; cellId++)
-          {
-          int cellType = usgIn->GetCellType(cellId);
-
-          // a simple check to see if a scheme really exists for this cell type.
-          // should not happen if the cell type has not been modified.
-          if (dict[cellType] == NULL)
-            {
-            continue;
-            }
-
-          int np = dict[cellType]->GetNumberOfQuadraturePoints();
-          for (int id = 0; id < np; id++)
-            {
-            out_id_cells->InsertNextTuple(cellId, array);
-            }
-          }
-        out_id_cells->Squeeze();
-        pdOut->GetPointData()->AddArray(out_id_cells);
-        out_id_cells->Delete();
-      }          
-    }
-  delete[] dict;  
-  return 1;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDQuadraturePointsGenerator.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDQuadraturePointsGenerator.h
deleted file mode 100644 (file)
index b4dc136..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Roman NIKOLAEV
-
-#ifndef vtkMEDQuadraturePointsGenerator_h
-#define vtkMEDQuadraturePointsGenerator_h
-
-#include <vtkFiltersGeneralModule.h> // For export macro
-#include <vtkQuadraturePointsGenerator.h>
-
-class vtkInformation;
-class vtkInformationVector;
-
-class VTK_EXPORT vtkMEDQuadraturePointsGenerator : public vtkQuadraturePointsGenerator
-{
-public:
-  vtkTypeMacro(vtkMEDQuadraturePointsGenerator,vtkQuadraturePointsGenerator)
-  static vtkMEDQuadraturePointsGenerator *New();
-
-protected:
-
-  int RequestData(vtkInformation *req, vtkInformationVector **input, vtkInformationVector *output);
-  vtkMEDQuadraturePointsGenerator();
-  virtual ~vtkMEDQuadraturePointsGenerator();
-private:
-  vtkMEDQuadraturePointsGenerator(const vtkMEDQuadraturePointsGenerator &); // Not implemented
-  void operator=(const vtkMEDQuadraturePointsGenerator &); // Not implemented
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDReader.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDReader.cxx
deleted file mode 100755 (executable)
index 5fbe122..0000000
+++ /dev/null
@@ -1,585 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "vtkMEDReader.h"
-#include "vtkGenerateVectors.h"
-#include "MEDUtilities.hxx"
-
-#include "vtkCellArray.h"
-#include "vtkCellData.h"
-#include "vtkCellType.h"
-#include "vtkDataSetAttributes.h"
-#include "vtkDataArraySelection.h"
-#include "vtkDoubleArray.h"
-#include "vtkExecutive.h"
-#include "vtkInformation.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-#include "vtkInformationDoubleVectorKey.h"
-#include "vtkInformationQuadratureSchemeDefinitionVectorKey.h"
-#include "vtkInformationStringKey.h"
-#include "vtkInformationVector.h"
-#include "vtkMultiBlockDataSet.h"
-#include "vtkMultiTimeStepAlgorithm.h"
-#include "vtkMutableDirectedGraph.h"
-#include "vtkObjectFactory.h"
-#include "vtkPointData.h"
-#include "vtkQuadratureSchemeDefinition.h"
-#include "vtkSmartPointer.h"
-#include "vtkStreamingDemandDrivenPipeline.h"
-#include "vtkStringArray.h"
-#include "vtkUnsignedCharArray.h"
-#include "vtkUnstructuredGrid.h"
-#include "vtkVariantArray.h"
-
-#ifdef MEDREADER_USE_MPI
-#include "vtkMultiProcessController.h"
-#include "vtkGhostCellsGenerator.h"
-#endif
-
-#include "MEDFileFieldRepresentationTree.hxx"
-
-#include <map>
-#include <string>
-#include <vector>
-#include <sstream>
-#include <algorithm>
-
-class vtkMEDReader::vtkMEDReaderInternal
-{
-
-public:
-  vtkMEDReaderInternal(vtkMEDReader *master):TK(0),SIL(0),LastLev0(-1)
-  {
-  }
-
-  ~vtkMEDReaderInternal()
-  {
-    if(this->SIL)
-      this->SIL->Delete();
-  }
-public:
-  MEDFileFieldRepresentationTree Tree;
-  TimeKeeper TK;
-
-  std::string DftMeshName;
-  // Store the vtkMutableDirectedGraph that represents links between family, groups and cell types
-  vtkMutableDirectedGraph* SIL;
-  // store the lev0 id in Tree corresponding to the TIME_STEPS in the pipeline.
-  int LastLev0;
-};
-
-vtkStandardNewMacro(vtkMEDReader)
-
-// vtkInformationKeyMacro(vtkMEDReader, META_DATA, DataObjectMetaData); // Here we need to customize vtkMEDReader::META_DATA method
-// start of overload of vtkInformationKeyMacro
-static vtkInformationDataObjectMetaDataKey *vtkMEDReader_META_DATA=new vtkInformationDataObjectMetaDataKey("META_DATA","vtkFileSeriesGroupReader");
-
-vtkInformationDataObjectMetaDataKey *vtkMEDReader::META_DATA()
-{
-  static const char ZE_KEY[]="vtkFileSeriesGroupReader::META_DATA";
-  vtkInformationDataObjectMetaDataKey *ret(vtkMEDReader_META_DATA);
-  MEDCoupling::GlobalDict *gd(MEDCoupling::GlobalDict::GetInstance());
-  if(!gd->hasKey(ZE_KEY))
-    {// here META_DATA is put on global var to be exchanged with other filters without dependancy of MEDReader. Please do not change ZE_KEY !
-      std::ostringstream oss; oss << ret;
-      gd->setKeyValue(ZE_KEY,oss.str());
-    }
-  return ret;
-}
-
-static vtkInformationGaussDoubleVectorKey *vtkMEDReader_GAUSS_DATA=new vtkInformationGaussDoubleVectorKey("GAUSS_DATA","vtkFileSeriesGroupReader");
-
-vtkInformationGaussDoubleVectorKey *vtkMEDReader::GAUSS_DATA()
-{
-  static const char ZE_KEY[]="vtkFileSeriesGroupReader::GAUSS_DATA";
-  vtkInformationGaussDoubleVectorKey *ret(vtkMEDReader_GAUSS_DATA);
-  MEDCoupling::GlobalDict *gd(MEDCoupling::GlobalDict::GetInstance());
-  if(!gd->hasKey(ZE_KEY))
-    {// here META_DATA is put on global var to be exchanged with other filters without dependancy of MEDReader. Please do not change ZE_KEY !
-      vtkInformationDoubleVectorKey *ret2(ret);
-      std::ostringstream oss; oss << ret2;
-      gd->setKeyValue(ZE_KEY,oss.str());
-    }
-  return ret;
-}
-// end of overload of vtkInformationKeyMacro
-
-vtkMEDReader::vtkMEDReader():Internal(new vtkMEDReaderInternal(this))
-{
-  this->SetNumberOfInputPorts(0);
-  this->SetNumberOfOutputPorts(1);
-}
-
-vtkMEDReader::~vtkMEDReader()
-{
-  delete this->Internal;
-  this->Internal = 0;
-}
-
-void vtkMEDReader::Reload()
-{
-  this->ReloadInternals();
-  this->IsStdOrMode = false;
-  this->GenerateVect = false;
-  this->GCGCP = true;
-  this->RemoveDebugArrays = false;
-  this->FieldSelection->RemoveAllArrays();
-  this->TimeFlagSelection->RemoveAllArrays();
-  this->Modified();
-}
-void vtkMEDReader::ReloadInternals()
-{
-  delete this->Internal;
-  this->Internal=new vtkMEDReaderInternal(this);
-  this->Modified();
-}
-
-void vtkMEDReader::GenerateVectors(int val)
-{
-  if ( !this->Internal )
-    return;
-
-  bool val2((bool)val);
-  if(val2!=this->GenerateVect)
-    {
-      this->GenerateVect=val2;
-      this->Modified();
-    }
-}
-
-void vtkMEDReader::ChangeMode(int newMode)
-{
-  if ( !this->Internal )
-    return;
-
-  this->IsStdOrMode=newMode!=0;
-  this->Modified();
-}
-
-void vtkMEDReader::GhostCellGeneratorCallForPara(int gcgcp)
-{
-  if ( !this->Internal )
-    return;
-
-  bool newVal(gcgcp!=0);
-  if(newVal!=this->GCGCP)
-    {
-      this->GCGCP=newVal;
-      this->Modified();
-    }
-}
-
-void vtkMEDReader::GetRidOffDebugArrays(int rmda)
-{
-  if ( !this->Internal )
-    return;
-
-  bool newVal(rmda!=0);
-  if(newVal!=this->RemoveDebugArrays)
-    {
-      this->RemoveDebugArrays=newVal;
-      this->Modified();
-    }
-}
-
-const char *vtkMEDReader::GetSeparator()
-{
-  return MEDFileFieldRepresentationLeavesArrays::ZE_SEP;
-}
-
-void vtkMEDReader::SetFileName(const char *fname)
-{
-  if(!this->Internal)
-    return;
-  try
-    {
-      this->FileName=fname;
-      this->Modified();
-    }
-  catch(INTERP_KERNEL::Exception& e)
-    {
-      delete this->Internal;
-      this->Internal=0;
-      std::ostringstream oss;
-      oss << "Exception has been thrown in vtkMEDReader::SetFileName : " << e.what() << std::endl;
-      if(this->HasObserver("ErrorEvent") )
-        this->InvokeEvent("ErrorEvent",const_cast<char *>(oss.str().c_str()));
-      else
-        vtkOutputWindowDisplayErrorText(const_cast<char *>(oss.str().c_str()));
-      vtkObject::BreakOnError();
-    }
-}
-
-char *vtkMEDReader::GetFileName()
-{
-  if (!this->Internal)
-    return 0;
-  return const_cast<char *>(this->FileName.c_str());
-}
-
-int vtkMEDReader::RequestInformation(vtkInformation *request, vtkInformationVector ** /*inputVector*/, vtkInformationVector *outputVector)
-{
-//  std::cout << "########################################## vtkMEDReader::RequestInformation ##########################################" << std::endl;
-  if(!this->Internal)
-    return 0;
-  try
-    {
-      // Process file meta data
-      if(this->Internal->Tree.getNumberOfLeavesArrays()==0)
-        {
-          int iPart(-1),nbOfParts(-1);
-#ifdef MEDREADER_USE_MPI
-          if (this->DistributeWithMPI)
-          {
-            vtkMultiProcessController *vmpc(vtkMultiProcessController::GetGlobalController());
-            if(vmpc)
-            {
-              iPart=vmpc->GetLocalProcessId();
-              nbOfParts=vmpc->GetNumberOfProcesses();
-            }
-          }
-#endif
-          this->Internal->Tree.loadMainStructureOfFile(this->FileName.c_str(),iPart,nbOfParts);
-
-          // Leaves
-          this->Internal->Tree.activateTheFirst();//This line manually initialize the status of server (this) with the remote client.
-          for (int idLeaveArray = 0; idLeaveArray < this->Internal->Tree.getNumberOfLeavesArrays(); idLeaveArray++)
-          {
-            std::string name = this->Internal->Tree.getNameOf(idLeaveArray);
-            bool status = this->Internal->Tree.getStatusOf(idLeaveArray);
-            this->FieldSelection->AddArray(name.c_str(), status);
-          }
-        }
-
-      // Time flags
-      this->Internal->TK.setMaxNumberOfTimeSteps(this->Internal->Tree.getMaxNumberOfTimeSteps());
-      auto timeFlagsArray = this->Internal->TK.getTimesFlagArray();
-      for (int idTimeFlag = 0; idTimeFlag < timeFlagsArray.size() ; idTimeFlag++)
-      {
-        std::string name = timeFlagsArray[idTimeFlag].second;
-        bool status = timeFlagsArray[idTimeFlag].first;
-        this->TimeFlagSelection->AddArray(name.c_str(), status);
-      }
-
-      // Make sure internal model are synchronized
-      /// So the SIL is up to date
-      int nArrays = this->FieldSelection->GetNumberOfArrays();
-      for(int i = nArrays - 1; i >= 0; i--)
-      {
-        try
-        {
-        this->Internal->Tree.changeStatusOfAndUpdateToHaveCoherentVTKDataSet(
-          this->Internal->Tree.getIdHavingZeName(this->FieldSelection->GetArrayName(i)),
-          this->FieldSelection->GetArraySetting(i));
-        }
-        catch(INTERP_KERNEL::Exception& e)
-        {
-          // Remove the incorrect array
-          this->FieldSelection->RemoveArrayByIndex(i);
-        }
-      }
-
-//      request->Print(cout);
-      vtkInformation *outInfo(outputVector->GetInformationObject(0));
-      outInfo->Set(vtkDataObject::DATA_TYPE_NAME(),"vtkMultiBlockDataSet");
-      this->UpdateSIL(request, outInfo);
-
-      // Set the meta data graph as a meta data key in the information
-      // That's all that is needed to transfer it along the pipeline
-      outInfo->Set(vtkMEDReader::META_DATA(),this->Internal->SIL);
-
-      bool dummy(false);
-      this->PublishTimeStepsIfNeeded(outInfo,dummy);
-    }
-  catch(INTERP_KERNEL::Exception& e)
-    {
-      std::ostringstream oss;
-      oss << "Exception has been thrown in vtkMEDReader::RequestInformation : " << e.what() << std::endl;
-      if(this->HasObserver("ErrorEvent") )
-        this->InvokeEvent("ErrorEvent",const_cast<char *>(oss.str().c_str()));
-      else
-        vtkOutputWindowDisplayErrorText(const_cast<char *>(oss.str().c_str()));
-      vtkObject::BreakOnError();
-      return 0;
-    }
-  return 1;
-}
-
-int vtkMEDReader::RequestData(vtkInformation *request, vtkInformationVector ** /*inputVector*/, vtkInformationVector *outputVector)
-{
-//  std::cout << "########################################## vtkMEDReader::RequestData ##########################################" << std::endl;
-  if(!this->Internal)
-    return 0;
-  try
-  {
-      for(int i = 0; i < this->FieldSelection->GetNumberOfArrays(); i++)
-      {
-        this->Internal->Tree.changeStatusOfAndUpdateToHaveCoherentVTKDataSet(
-          this->Internal->Tree.getIdHavingZeName(this->FieldSelection->GetArrayName(i)),
-          this->FieldSelection->GetArraySetting(i));
-      }
-
-      auto& timeFlagsArray = this->Internal->TK.getTimesFlagArray();
-      if (timeFlagsArray.size() != this->TimeFlagSelection->GetNumberOfArrays())
-      {
-        throw INTERP_KERNEL::Exception("Unexpected size of TimeFlagSelection");
-      }
-      for(int i = 0; i < this->TimeFlagSelection->GetNumberOfArrays(); i++)
-      {
-        timeFlagsArray[i] = std::make_pair(this->TimeFlagSelection->GetArraySetting(i),
-          this->TimeFlagSelection->GetArrayName(i));
-      }
-
-//      request->Print(cout);
-      vtkInformation *outInfo(outputVector->GetInformationObject(0));
-      vtkMultiBlockDataSet *output(vtkMultiBlockDataSet::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT())));
-      //bool isUpdated(false); // todo: unused
-      double reqTS(0.);
-      if(outInfo->Has(vtkStreamingDemandDrivenPipeline::UPDATE_TIME_STEP()))
-        reqTS=outInfo->Get(vtkStreamingDemandDrivenPipeline::UPDATE_TIME_STEP());
-      ExportedTinyInfo ti;
-#ifndef MEDREADER_USE_MPI
-      this->FillMultiBlockDataSetInstance(output,reqTS,&ti);
-#else
-      if (this->DistributeWithMPI && this->GCGCP)
-      {
-        vtkSmartPointer<vtkGhostCellsGenerator> gcg(vtkSmartPointer<vtkGhostCellsGenerator>::New());
-        {
-          vtkDataSet *ret(RetrieveDataSetAtTime(reqTS,&ti));
-          gcg->SetInputData(ret);
-          ret->Delete();
-        }
-              // To be checked
-        // gcg->SetUseGlobalPointIds(true);
-        gcg->SetBuildIfRequired(false);
-        gcg->Update();
-        output->SetBlock(0,gcg->GetOutput());
-      }
-      else
-             this->FillMultiBlockDataSetInstance(output,reqTS,&ti);
-#endif
-      if(!ti.empty())
-        {
-          const std::vector<double>& data(ti.getData());
-          outInfo->Set(vtkMEDReader::GAUSS_DATA(),&data[0],(int)data.size());
-          request->Append(vtkExecutive::KEYS_TO_COPY(),vtkMEDReader::GAUSS_DATA());// Thank you to SciberQuest and DIPOLE_CENTER ! Don't understand why ! In RequestInformation it does not work !
-        }
-      output->GetInformation()->Set(vtkDataObject::DATA_TIME_STEP(),reqTS);
-      // Is it really needed ? TODO
-      this->UpdateSIL(request, outInfo);
-    }
-  catch(INTERP_KERNEL::Exception& e)
-    {
-      std::cerr << "Exception has been thrown in vtkMEDReader::RequestData : " << e.what() << std::endl;
-      return 0;
-    }
-  return 1;
-}
-
-//------------------------------------------------------------------------------
-int vtkMEDReader::GetNumberOfFieldsTreeArrays()
-{
-  return this->FieldSelection->GetNumberOfArrays();
-}
-
-//------------------------------------------------------------------------------
-const char* vtkMEDReader::GetFieldsTreeArrayName(int index)
-{
-  return this->FieldSelection->GetArrayName(index);
-}
-
-//------------------------------------------------------------------------------
-int vtkMEDReader::GetFieldsTreeArrayStatus(const char* name)
-{// EDF30038 : This method can alterate this->FieldSelection !
-  return this->FieldSelection->ArrayIsEnabled(name);
-}
-
-//------------------------------------------------------------------------------
-void vtkMEDReader::SetFieldsStatus(const char* name, int status)
-{
-  // EDF30038 : GetFieldsTreeArrayStatus does not inform if the name entry already exists. So start to deal with this
-  if( ! this->FieldSelection->ArrayExists( name ) )
-  {
-    this->FieldSelection->SetArraySetting( name, status );
-    this->Modified();
-    return ;
-  }
-  if (this->GetFieldsTreeArrayStatus(name) != status)
-  {
-    if (status)
-    {
-      this->FieldSelection->EnableArray(name);
-    }
-    else
-    {
-      this->FieldSelection->DisableArray(name);
-    }
-    this->Modified();
-  }
-}
-
-//------------------------------------------------------------------------------
-int vtkMEDReader::GetNumberOfTimesFlagsArrays()
-{
-  return this->TimeFlagSelection->GetNumberOfArrays();
-}
-
-//------------------------------------------------------------------------------
-const char* vtkMEDReader::GetTimesFlagsArrayName(int index)
-{
-  return this->TimeFlagSelection->GetArrayName(index);
-}
-
-//------------------------------------------------------------------------------
-int vtkMEDReader::GetTimesFlagsArrayStatus(const char* name)
-{
-  return this->TimeFlagSelection->ArrayIsEnabled(name);
-}
-
-//------------------------------------------------------------------------------
-void vtkMEDReader::SetTimesFlagsStatus(const char* name, int status)
-{
-  if (this->GetTimesFlagsArrayStatus(name) != status)
-  {
-    if (status)
-    {
-      this->TimeFlagSelection->EnableArray(name);
-    }
-    else
-    {
-      this->TimeFlagSelection->DisableArray(name);
-    }
-    this->Modified();
-  }
-}
-
-void vtkMEDReader::UpdateSIL(vtkInformation* /*request*/, vtkInformation * /*info*/)
-{
-  if(!this->Internal)
-      return;
-  std::string meshName(this->Internal->Tree.getActiveMeshName());
-  if(!this->Internal->SIL || meshName!=this->Internal->DftMeshName)
-    {
-      vtkMutableDirectedGraph *sil(vtkMutableDirectedGraph::New());
-      this->BuildSIL(sil);
-      if(this->Internal->SIL)
-        this->Internal->SIL->Delete();
-      this->Internal->SIL=sil;
-      this->Internal->DftMeshName=meshName;
-    }
-}
-
-/*!
- * The returned string is the name of the mesh activated which groups and families are in \a sil.
- */
-std::string vtkMEDReader::BuildSIL(vtkMutableDirectedGraph* sil)
-{
-  if (!this->Internal)
-    return std::string();
-  sil->Initialize();
-  vtkSmartPointer<vtkVariantArray> childEdge(vtkSmartPointer<vtkVariantArray>::New());
-  childEdge->InsertNextValue(0);
-  vtkSmartPointer<vtkVariantArray> crossEdge(vtkSmartPointer<vtkVariantArray>::New());
-  crossEdge->InsertNextValue(1);
-  // CrossEdge is an edge linking hierarchies.
-  vtkUnsignedCharArray* crossEdgesArray=vtkUnsignedCharArray::New();
-  crossEdgesArray->SetName("CrossEdges");
-  sil->GetEdgeData()->AddArray(crossEdgesArray);
-  crossEdgesArray->Delete();
-  std::vector<std::string> names;
-  // Now build the hierarchy.
-  vtkIdType rootId=sil->AddVertex();
-  names.push_back("SIL");
-  // Add global fields root
-  vtkIdType fieldsRoot(sil->AddChild(rootId,childEdge));
-  names.push_back("FieldsStatusTree");
-  this->Internal->Tree.feedSIL(sil,fieldsRoot,childEdge,names);
-  vtkIdType meshesFamsGrpsRoot(sil->AddChild(rootId,childEdge));
-  names.push_back("MeshesFamsGrps");
-  std::string dftMeshName(this->Internal->Tree.feedSILForFamsAndGrps(sil,meshesFamsGrpsRoot,childEdge,names));
-  // This array is used to assign names to nodes.
-  vtkStringArray *namesArray(vtkStringArray::New());
-  namesArray->SetName("Names");
-  namesArray->SetNumberOfTuples(sil->GetNumberOfVertices());
-  sil->GetVertexData()->AddArray(namesArray);
-  namesArray->Delete();
-  std::vector<std::string>::const_iterator iter;
-  vtkIdType cc;
-  for(cc=0, iter=names.begin(); iter!=names.end(); ++iter, ++cc)
-    namesArray->SetValue(cc,(*iter).c_str());
-  return dftMeshName;
-}
-
-double vtkMEDReader::PublishTimeStepsIfNeeded(vtkInformation *outInfo, bool& isUpdated)
-{
-  if(!this->Internal)
-    return 0.0;
-
-  int lev0(-1);
-  std::vector<double> tsteps;
-  if(!this->IsStdOrMode)
-    tsteps=this->Internal->Tree.getTimeSteps(lev0,this->Internal->TK);
-  else
-    { tsteps.resize(1); tsteps[0]=0.; }
-  isUpdated=false;
-  if(lev0!=this->Internal->LastLev0)
-    {
-      isUpdated=true;
-      double timeRange[2];
-      timeRange[0]=tsteps.front();
-      timeRange[1]=tsteps.back();
-      outInfo->Set(vtkStreamingDemandDrivenPipeline::TIME_STEPS(),&tsteps[0],(int)tsteps.size());
-      outInfo->Set(vtkStreamingDemandDrivenPipeline::TIME_RANGE(),timeRange,2);
-      this->Internal->LastLev0=lev0;
-    }
-  return tsteps.front();
-}
-
-void vtkMEDReader::FillMultiBlockDataSetInstance(vtkMultiBlockDataSet *output, double reqTS, ExportedTinyInfo *internalInfo)
-{
-  if( !this->Internal )
-    return;
-  vtkDataSet *ret(RetrieveDataSetAtTime(reqTS,internalInfo));
-  output->SetBlock(0,ret);
-  ret->Delete();
-}
-
-vtkDataSet *vtkMEDReader::RetrieveDataSetAtTime(double reqTS, ExportedTinyInfo *internalInfo)
-{
-  if( !this->Internal )
-    return 0;
-  std::string meshName;
-  vtkDataSet *ret(this->Internal->Tree.buildVTKInstance(this->IsStdOrMode,reqTS,meshName,this->Internal->TK,!this->RemoveDebugArrays,internalInfo));
-  if(this->GenerateVect)
-    {
-      vtkGenerateVectors::Operate(ret->GetPointData());
-      vtkGenerateVectors::Operate(ret->GetCellData());
-      vtkGenerateVectors::Operate(ret->GetFieldData());
-      // The operations above have potentially created new arrays -> This breaks the optimization of StaticMesh that expects the same field arrays over time.
-      // To enforce the cache recomputation declare modification of mesh.
-      //vtkGenerateVectors::ChangeMeshTimeToUpdateCache(ret);
-    }
-  return ret;
-}
-
-void vtkMEDReader::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDReader.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkMEDReader.h
deleted file mode 100755 (executable)
index 3509360..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __vtkMEDReader_h_
-#define __vtkMEDReader_h_
-
-#include <string>
-
-#include "vtkMultiBlockDataSetAlgorithm.h"
-#include "vtkInformationGaussDoubleVectorKey.h"
-#include "vtkNew.h"
-
-class vtkDataArraySelection;
-class vtkDataSet;
-class vtkMutableDirectedGraph;
-class vtkInformationDataObjectMetaDataKey;
-class vtkInformationDoubleVectorKey;
-class ExportedTinyInfo;
-
-class VTK_EXPORT vtkMEDReader : public vtkMultiBlockDataSetAlgorithm
-{
- private:
-  vtkMEDReader(const vtkMEDReader&); // Not implemented.
-  void operator=(const vtkMEDReader&); // Not implemented.
- public:
-  static vtkMEDReader *New();
-  vtkTypeMacro(vtkMEDReader, vtkMultiBlockDataSetAlgorithm)
-  void PrintSelf(ostream& os, vtkIndent indent);
-  virtual void SetFileName(const char*);
-  virtual char *GetFileName();
-  virtual const char *GetFileExtensions() { return ".med .rmed"; }
-  virtual const char *GetDescriptiveName() { return "MED file (Data Exchange Model)"; }
-  //
-  virtual void SetFieldsStatus(const char *name, int status);
-  virtual int GetNumberOfFieldsTreeArrays();
-  virtual const char *GetFieldsTreeArrayName(int index);
-  virtual int GetFieldsTreeArrayStatus(const char *name);
-  //
-  virtual int GetTimesFlagsArrayStatus(const char *name);
-  virtual void SetTimesFlagsStatus(const char *name, int status);
-  virtual int GetNumberOfTimesFlagsArrays();
-  virtual const char *GetTimesFlagsArrayName(int index);
-  //! Build the graph used to pass information to the client on the supports
-  virtual std::string BuildSIL(vtkMutableDirectedGraph*);
-
-  // Description
-  // Reload will delete the internal reader and recreate it with default properties
-  // As well as reset public properties to their default values, except for the FileName
-  virtual void Reload();
-
-  // Description
-  // ReloadInternals will delete the internal reader and recreate it
-  virtual void ReloadInternals();
-
-  static const char *GetSeparator();
-
-  // Description
-  // Static information key used to transfer the meta data graph along the pipeline
-  static vtkInformationDataObjectMetaDataKey* META_DATA();
-  static vtkInformationGaussDoubleVectorKey* GAUSS_DATA();
-
-  // Description
-  // Control if MPI should be used for distribution when using a distributed server
-  // Only has an effect if MEDREADER_USE_MPI is defined.
-  // Default is true
-  vtkSetMacro(DistributeWithMPI, bool);
-  vtkGetMacro(DistributeWithMPI, bool);
-
-  // Description
-  // Control if vectors should be generated
-  // Default is false
-  void GenerateVectors(int);
-  vtkGetMacro(GenerateVect, bool);
-
-  // Description
-  // Control to set is std or mode should be used
-  // Default is false
-  void ChangeMode(int);
-  vtkGetMacro(IsStdOrMode, bool);
-
-  // Description
-  // Control if a Ghost Cell Generator should be used
-  // Default is true
-  void GhostCellGeneratorCallForPara(int);
-  vtkGetMacro(GCGCP, bool);
-  
-  // Description
-  // Control if mesh debug arrays should be removed or not
-  // Default is true
-  void GetRidOffDebugArrays(int);
-  vtkGetMacro(RemoveDebugArrays, bool);
-
-
- protected:
-  vtkMEDReader();
-  virtual ~vtkMEDReader();
-  virtual int RequestInformation(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
-  virtual int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
- private:
-  void UpdateSIL(vtkInformation * request, vtkInformation * info);
-  virtual double PublishTimeStepsIfNeeded(vtkInformation*, bool& isUpdated);
-  virtual void FillMultiBlockDataSetInstance(vtkMultiBlockDataSet *output, double reqTS, ExportedTinyInfo *internalInfo=0);
-  vtkDataSet *RetrieveDataSetAtTime(double reqTS, ExportedTinyInfo *internalInfo);
- private:
-  //BTX
-  //ETX
-
-  class vtkMEDReaderInternal;
-  vtkMEDReaderInternal* Internal;
-
-  vtkNew<vtkDataArraySelection> FieldSelection;
-  vtkNew<vtkDataArraySelection> TimeFlagSelection;
-  std::string FileName;
-  //when false -> std, true -> mode. By default std (false).
-  bool IsStdOrMode = false;
-  //when false -> do nothing. When true cut off or extend to nbOfCompo=3 vector arrays.
-  bool GenerateVect = false;
-  bool GCGCP = true;
-  bool DistributeWithMPI = true;
-  bool RemoveDebugArrays = false;
-};
-
-#endif //__vtkMEDReader_h_
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkPVMetaDataInformation.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkPVMetaDataInformation.cxx
deleted file mode 100644 (file)
index 8f33f82..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "vtkPVMetaDataInformation.h"
-
-#include "vtkAlgorithm.h"
-#include "vtkAlgorithmOutput.h"
-#include "vtkClientServerStream.h"
-#include "vtkExecutive.h"
-#include "vtkDataObject.h"
-#include "vtkGenericDataObjectReader.h"
-#include "vtkGenericDataObjectWriter.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-#include "vtkInformation.h"
-#include "vtkObjectFactory.h"
-
-#include "vtkMEDReader.h"
-
-vtkStandardNewMacro(vtkPVMetaDataInformation)
-vtkCxxSetObjectMacro(vtkPVMetaDataInformation, InformationData, vtkDataObject)
-
-//----------------------------------------------------------------------------
-vtkPVMetaDataInformation::vtkPVMetaDataInformation()
-{
-  this->InformationData = NULL;
-}
-
-//----------------------------------------------------------------------------
-vtkPVMetaDataInformation::~vtkPVMetaDataInformation()
-{
-  this->SetInformationData(NULL);
-}
-
-//----------------------------------------------------------------------------
-void vtkPVMetaDataInformation::CopyFromObject(vtkObject* obj)
-{
-  this->SetInformationData(NULL);
-
-  vtkAlgorithmOutput* algOutput = vtkAlgorithmOutput::SafeDownCast(obj);
-  if (!algOutput)
-    {
-    vtkAlgorithm* alg = vtkAlgorithm::SafeDownCast(obj);
-    if (alg)
-      {
-      algOutput = alg->GetOutputPort(0);
-      }
-
-    }
-  if (!algOutput)
-    {
-    vtkErrorMacro("Information can only be gathered from a vtkAlgorithmOutput.");
-    return;
-    }
-
-  vtkAlgorithm* reader = algOutput->GetProducer();
-  vtkInformation* info = reader->GetExecutive()->GetOutputInformation(
-    algOutput->GetIndex());
-
-  if (info && info->Has(vtkMEDReader::META_DATA()))
-    {
-    this->SetInformationData(vtkDataObject::SafeDownCast(info->Get(vtkMEDReader::META_DATA())));
-    }
-}
-
-//----------------------------------------------------------------------------
-void vtkPVMetaDataInformation::CopyToStream(vtkClientServerStream* css)
-{
-  css->Reset();
-  if (!this->InformationData)
-    {
-    *css << vtkClientServerStream::Reply
-         << vtkClientServerStream::InsertArray(
-           static_cast<unsigned char*>(NULL), 0)
-         << vtkClientServerStream::End;
-    return;
-    }
-
-  vtkDataObject* clone = this->InformationData->NewInstance();
-  clone->ShallowCopy(this->InformationData);
-
-  vtkGenericDataObjectWriter* writer = vtkGenericDataObjectWriter::New();
-  writer->SetFileTypeToBinary();
-  writer->WriteToOutputStringOn();
-  writer->SetInputData(clone);
-  writer->Write();
-
-  *css << vtkClientServerStream::Reply
-       << vtkClientServerStream::InsertArray(
-         writer->GetBinaryOutputString(),
-         writer->GetOutputStringLength())
-       << vtkClientServerStream::End;
-  writer->RemoveAllInputs();
-  writer->Delete();
-  clone->Delete();
-}
-
-//----------------------------------------------------------------------------
-void vtkPVMetaDataInformation::CopyFromStream(const vtkClientServerStream* css)
-{
-  this->SetInformationData(0);
-  vtkTypeUInt32 length;
-  if (css->GetArgumentLength(0, 0, &length) && length > 0)
-    {
-    unsigned char* raw_data = new unsigned char[length];
-    css->GetArgument(0, 0, raw_data, length);
-    vtkGenericDataObjectReader* reader = vtkGenericDataObjectReader::New();
-    reader->SetBinaryInputString(reinterpret_cast<const char*>(raw_data), length);
-    reader->ReadFromInputStringOn();
-    delete []raw_data;
-    reader->Update();
-    this->SetInformationData(reader->GetOutput());
-    reader->Delete();
-    }
-}
-
-void vtkPVMetaDataInformation::AddInformation(vtkPVInformation*)
-{
-}
-
-//----------------------------------------------------------------------------
-void vtkPVMetaDataInformation::PrintSelf(ostream& os, vtkIndent indent)
-{
-  this->Superclass::PrintSelf(os, indent);
-  os << indent << "InformationData: " <<  this->InformationData << endl;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkPVMetaDataInformation.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkPVMetaDataInformation.h
deleted file mode 100644 (file)
index 4ed52d3..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __vtkPVMetaDataInformation_h
-#define __vtkPVMetaDataInformation_h
-
-#include "vtkPVInformation.h"
-
-class vtkDataObject;
-class vtkInformationDataObjectKey;
-
-class vtkPVMetaDataInformation : public vtkPVInformation
-{
-public:
-  static vtkPVMetaDataInformation* New();
-  vtkTypeMacro(vtkPVMetaDataInformation, vtkPVInformation)
-  void PrintSelf(ostream& os, vtkIndent indent);
-
-  // Description:
-  // Transfer information about a single object into this object.
-  virtual void CopyFromObject(vtkObject*);
-
-  //BTX
-  // Description:
-  // Manage a serialized version of the information.
-  virtual void CopyToStream(vtkClientServerStream*);
-  virtual void CopyFromStream(const vtkClientServerStream*);
-  virtual void AddInformation(vtkPVInformation*);
-  //ETX
-
-  // Description:
-  // Returns the Information Data.
-  vtkGetObjectMacro(InformationData, vtkDataObject);
-
-//BTX
-protected:
-  vtkPVMetaDataInformation();
-  ~vtkPVMetaDataInformation();
-  void SetInformationData(vtkDataObject*);
-  vtkDataObject* InformationData;
-
-private:
-  vtkPVMetaDataInformation(const vtkPVMetaDataInformation&); // Not implemented
-  void operator=(const vtkPVMetaDataInformation&); // Not implemented
-//ETX
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkUgSelectCellIds.cxx b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkUgSelectCellIds.cxx
deleted file mode 100644 (file)
index 729854c..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#include "vtkUgSelectCellIds.h"
-
-#include "vtkCellArray.h"
-#include "vtkUnstructuredGrid.h"
-#include "vtkInformationVector.h"
-#include "vtkUnsignedCharArray.h"
-#include "vtkInformation.h"
-#include "vtkCellData.h"
-#include "vtkPointData.h"
-
-vtkStandardNewMacro(vtkUgSelectCellIds)
-
-void vtkUgSelectCellIds::SetIds(vtkIdTypeArray *ids)
-{
-  _ids = ids;
-}
-
-int vtkUgSelectCellIds::RequestData(vtkInformation *vtkNotUsed(request), vtkInformationVector **inputVector, vtkInformationVector *outputVector)
-{
-  vtkInformation* inputInfo=inputVector[0]->GetInformationObject(0);
-  vtkUnstructuredGrid *ds(vtkUnstructuredGrid::SafeDownCast(inputInfo->Get(vtkDataObject::DATA_OBJECT())));
-  if(!ds)
-  {
-    vtkErrorMacro("vtkUgSelectCellIds::RequestData : input is expected to be an unstructuredgrid !");
-    return 0;
-  }
-  if( ! this->_ids.Get() )
-  {
-    vtkErrorMacro("vtkUgSelectCellIds::RequestData : not initialized array !");
-    return 0;
-  }
-  vtkInformation *outInfo(outputVector->GetInformationObject(0));
-  vtkUnstructuredGrid *output(vtkUnstructuredGrid::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT())));
-  output->SetPoints(ds->GetPoints());
-  vtkNew<vtkCellArray> outCellArray;
-  vtkNew<vtkIdTypeArray> outConn;
-  vtkCellData *inputCellData(ds->GetCellData());
-  vtkPointData *inputPointData(ds->GetPointData());
-  // Finish the parlote : feed data arrays
-  vtkCellData *outCellData(output->GetCellData());
-  vtkPointData *outPointData(output->GetPointData());
-  vtkIdType inpNbCells( ds->GetNumberOfCells() );
-  vtkIdType outputNbCells( _ids->GetNumberOfTuples() );
-  vtkNew<vtkIdTypeArray> outNodalConn;
-  vtkNew<vtkUnsignedCharArray> outCellTypes;
-  outCellTypes->SetNumberOfComponents(1); outCellTypes->SetNumberOfTuples(outputNbCells);
-  vtkNew<vtkIdTypeArray> outCellLocations;
-  outCellLocations->SetNumberOfComponents(1); outCellLocations->SetNumberOfTuples(outputNbCells);
-  vtkIdType outConnLgth(0);
-  for( const vtkIdType *cellId = _ids->GetPointer(0) ; cellId != _ids->GetPointer(outputNbCells) ; ++cellId )
-  {
-    if( *cellId >=0 && *cellId < inpNbCells )
-    {
-      vtkIdType npts;
-      const vtkIdType *pts;
-      ds->GetCellPoints(*cellId, npts, pts);
-      outConnLgth += 1+npts;
-    }
-    else
-    {
-      vtkErrorMacro(<< "vtkUgSelectCellIds::RequestData : presence of " << *cellId << " in array must be in [0," << inpNbCells << "[ !");
-      return 0;
-    } 
-  }
-  outNodalConn->SetNumberOfComponents(1); outNodalConn->SetNumberOfTuples(outConnLgth);
-  vtkIdType *outConnPt(outNodalConn->GetPointer(0)),*outCellLocPt(outCellLocations->GetPointer(0));
-  vtkIdType outCurCellLoc = 0;
-  unsigned char *outCellTypePt(outCellTypes->GetPointer(0));
-  for( const vtkIdType *cellId = _ids->GetPointer(0) ; cellId != _ids->GetPointer(outputNbCells) ; ++cellId )
-  {
-      outCellLocPt[0] = outCurCellLoc;
-      vtkIdType npts;
-      const vtkIdType *pts;
-      ds->GetCellPoints(*cellId, npts, pts);
-      *outConnPt++ = npts;
-      outConnPt = std::copy(pts,pts+npts,outConnPt);
-      *outCellTypePt++ = ds->GetCellType(*cellId);
-      outCurCellLoc += npts+1;//not sure
-  }
-  for( int cellFieldId = 0 ; cellFieldId < inputCellData->GetNumberOfArrays() ; ++cellFieldId )
-  {
-    vtkDataArray *array( inputCellData->GetArray(cellFieldId) );
-    vtkSmartPointer<vtkDataArray> outArray;
-    outArray.TakeReference( array->NewInstance() );
-    outArray->SetNumberOfComponents(array->GetNumberOfComponents()); outArray->SetNumberOfTuples(outputNbCells);
-    outArray->SetName(array->GetName());
-    vtkIdType pos(0);
-    for( const vtkIdType *cellId = _ids->GetPointer(0) ; cellId != _ids->GetPointer(outputNbCells) ; ++cellId )
-    {
-      outArray->SetTuple(pos++,*cellId,array);
-    }
-    outCellData->AddArray(outArray);
-  }
-  for( int pointFieldId = 0 ; pointFieldId < inputPointData->GetNumberOfArrays() ; ++pointFieldId )
-  {
-    vtkDataArray *array( inputPointData->GetArray(pointFieldId) );
-    vtkSmartPointer<vtkDataArray> outArray;
-    outArray.TakeReference( array->NewInstance() );
-    outArray->ShallowCopy(array);
-    outPointData->AddArray(outArray);
-  }
-  //
-  outCellArray->SetCells(outputNbCells,outNodalConn);
-  output->SetCells(outCellTypes,outCellLocations,outCellArray);
-  //
-  return 1;
-}
diff --git a/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkUgSelectCellIds.h b/src/Plugins/MEDReader/plugin/MEDReaderIO/vtkUgSelectCellIds.h
deleted file mode 100644 (file)
index 0c93bf3..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright (C) 2020-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay (EDF R&D)
-
-#pragma once
-
-#include <vtkUnstructuredGridAlgorithm.h>
-#include <vtkSmartPointer.h>
-#include <vtkIdTypeArray.h>
-
-/*!
- * Class taking only specified cellIds of input vtkUnstructuredGrid dataset
- * For performance reasons orphan nodes are not removed here.
- * The output vtkUnstructuredGrid is lying on the same points than input one.
- */
-class vtkUgSelectCellIds : public vtkUnstructuredGridAlgorithm
-{
-public:
-    static vtkUgSelectCellIds* New();
-    vtkTypeMacro(vtkUgSelectCellIds, vtkUnstructuredGridAlgorithm)
-    void SetIds(vtkIdTypeArray *ids);
-    vtkUgSelectCellIds() = default;
-    ~vtkUgSelectCellIds() override = default;
-protected:
-    int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
-private:
-    vtkSmartPointer<vtkIdTypeArray> _ids;
-};
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/CMakeLists.txt b/src/Plugins/MEDReader/plugin/ParaViewPlugin/CMakeLists.txt
deleted file mode 100644 (file)
index 28ecc7d..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright (C) 2010-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-set(interfaces)
-set(ui_files)
-set(sources)
-
-cmake_policy(SET CMP0071 OLD) # bug in ParaViewPlugin.cmake?
-
-if(PARAVIEW_USE_QT)
-  set(ui_resource_files
-    Resources/pqMEDReader.qrc)
-
-  set(ui_files
-    MEDReaderVectorsWidget.ui
-    MEDReaderTimeModeWidget.ui)
-
-  set(sources
-    pqAbstractFieldsWidget.cxx
-    VectBoolSpreadSheet.cxx
-    VectBoolWidget.cxx
-    pqExtractGroupFieldsWidget.cxx
-    pqMEDReaderGraphUtils.cxx
-    pqMEDReaderVectorsWidget.cxx
-    pqMEDReaderTimeModeWidget.cxx
-    pqMEDReaderReloadWidget.cxx
-    pqMEDReaderTimesFlagsWidget.cxx
-    pqMEDReaderFieldsWidget.cxx)
-
-  paraview_plugin_add_property_widget(
-    KIND WIDGET
-    TYPE "MEDReaderTimeModeWidgetType"
-    CLASS_NAME pqMEDReaderTimeModeWidget
-    INTERFACES property_interfaces
-    SOURCES property_sources)
-  list(APPEND interfaces
-    ${property_interfaces})
-  list(APPEND sources
-    ${property_sources})
-
-  paraview_plugin_add_property_widget(
-    KIND WIDGET
-    TYPE "MEDReaderReloadWidgetType"
-    CLASS_NAME pqMEDReaderReloadWidget
-    INTERFACES property_interfaces
-    SOURCES property_sources)
-  list(APPEND interfaces
-    ${property_interfaces})
-  list(APPEND sources
-    ${property_sources})
-
-  paraview_plugin_add_property_widget(
-    KIND WIDGET
-    TYPE "MEDReaderVectorsWidgetType"
-    CLASS_NAME pqMEDReaderVectorsWidget
-    INTERFACES property_interfaces
-    SOURCES property_sources)
-  list(APPEND interfaces
-    ${property_interfaces})
-  list(APPEND sources
-    ${property_sources})
-
-  paraview_plugin_add_property_widget(
-    KIND WIDGET
-    TYPE "MEDReaderTimesFlagsWidgetType"
-    CLASS_NAME pqMEDReaderTimesFlagsWidget
-    INTERFACES property_interfaces
-    SOURCES property_sources)
-  list(APPEND interfaces
-    ${property_interfaces})
-  list(APPEND sources
-    ${property_sources})
-
-  paraview_plugin_add_property_widget(
-    KIND WIDGET
-    TYPE "MEDReaderFieldsWidgetType"
-    CLASS_NAME pqMEDReaderFieldsWidget
-    INTERFACES property_interfaces
-    SOURCES property_sources)
-  list(APPEND interfaces
-    ${property_interfaces})
-  list(APPEND sources
-    ${property_sources})
-
-  paraview_plugin_add_property_widget(
-    KIND WIDGET
-    TYPE "ExtractGroupFieldsWidgetType"
-    CLASS_NAME pqExtractGroupFieldsWidget
-    INTERFACES property_interfaces
-    SOURCES property_sources)
-  list(APPEND interfaces
-    ${property_interfaces})
-  list(APPEND sources
-    ${property_sources})
-
-endif(PARAVIEW_USE_QT)
-
-paraview_add_plugin(MEDReader
-  VERSION "5.0"
-  UI_INTERFACES ${interfaces}
-  UI_FILES ${ui_files}
-  SOURCES ${sources}
-  UI_RESOURCES ${ui_resource_files}
-  SERVER_MANAGER_XML Resources/MEDReaderServer.xml
-  MODULES MEDReaderIO
-  MODULE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/../MEDReaderIO/vtk.module"
-  )
-
-install(TARGETS MEDReader
-  RUNTIME DESTINATION lib/paraview
-  LIBRARY DESTINATION lib/paraview
-  ARCHIVE DESTINATION lib/paraview
-  )
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/MEDReaderTimeModeWidget.ui b/src/Plugins/MEDReader/plugin/ParaViewPlugin/MEDReaderTimeModeWidget.ui
deleted file mode 100644 (file)
index 419d1e7..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>MEDReaderTimeModeWidget</class>
- <widget class="QWidget" name="widget">
-   <layout class="QGridLayout" name="layout">
-     <item>
-       <widget class="QGroupBox" name="groupBox">
-        <property name="enabled">
-         <bool>true</bool>
-        </property>
-        <property name="title">
-         <string/>
-        </property>
-        <layout class="QHBoxLayout" name="horizontalLayout">
-         <item>
-          <widget class="QRadioButton" name="stdMode">
-           <property name="text">
-            <string>Time</string>
-           </property>
-           <property name="checked">
-            <bool>true</bool>
-           </property>
-         </widget>
-         </item>
-         <item>
-          <widget class="QRadioButton" name="modeMode">
-           <property name="text">
-            <string>Mode</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-     </item>
-    </layout>
- </widget>
-</ui>
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/MEDReaderVectorsWidget.ui b/src/Plugins/MEDReader/plugin/ParaViewPlugin/MEDReaderVectorsWidget.ui
deleted file mode 100644 (file)
index c942427..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>MEDReaderVectorsWidget</class>
- <widget class="QWidget" name="widgetVectors">
-   <layout class="QGridLayout" name="layoutVectors">
-   <property name="topMargin">
-    <number>0</number>
-   </property>
-   <property name="bottomMargin">
-    <number>0</number>
-   </property>
-     <item>
-       <widget class="QGroupBox" name="groupBoxVectors">
-        <property name="enabled">
-         <bool>true</bool>
-        </property>
-        <property name="title">
-         <string/>
-        </property>
-        <layout class="QHBoxLayout" name="horizontalLayoutVectors">
-         <property name="topMargin">
-          <number>0</number>
-         </property>
-         <property name="bottomMargin">
-          <number>0</number>
-         </property>
-         <item>
-          <widget class="QCheckBox" name="GenerateVects">
-           <property name="text">
-            <string>GenerateVectors</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-     </item>
-    </layout>
- </widget>
-</ui>
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellData16.png b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellData16.png
deleted file mode 100644 (file)
index 8a6f2a6..0000000
Binary files a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellData16.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellDataForWholeMesh16.png b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellDataForWholeMesh16.png
deleted file mode 100644 (file)
index 93401f4..0000000
Binary files a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqCellDataForWholeMesh16.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqElnoData16.png b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqElnoData16.png
deleted file mode 100644 (file)
index e461810..0000000
Binary files a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqElnoData16.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqPointData16.png b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqPointData16.png
deleted file mode 100644 (file)
index 50367ea..0000000
Binary files a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqPointData16.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqQuadratureData16.png b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqQuadratureData16.png
deleted file mode 100644 (file)
index ff6e199..0000000
Binary files a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqQuadratureData16.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqReloadFile16.png b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqReloadFile16.png
deleted file mode 100644 (file)
index cc13970..0000000
Binary files a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/Icons/pqReloadFile16.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/MEDReaderServer.xml b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/MEDReaderServer.xml
deleted file mode 100644 (file)
index df9bb0e..0000000
+++ /dev/null
@@ -1,553 +0,0 @@
-<ServerManagerConfiguration>
-  <ProxyGroup name="internal_sources">
-    <SourceProxy name="MEDReaderInternal" class="vtkMEDReader">
-
-      <Hints>
-       <ReaderFactory extensions="med rmed"
-                      file_description="MED Files">
-       </ReaderFactory>
-      </Hints>
-
-      <Property name="Reload"
-                command="Reload"
-                panel_widget="MEDReaderReloadWidgetType"/>
-
-      <StringVectorProperty
-        name="FileName"
-        command="SetFileName"
-        number_of_elements="1"
-        panel_visibility="never"
-        animateable="0">
-        <FileListDomain name="files" />
-        <Documentation>
-          This property specifies the file name for the MED reader.
-        </Documentation>
-      </StringVectorProperty>
-
-      <!-- retrieves using GetNumberOf[FieldsTree]Arrays and GetFieldsTreeArrayName the keys used by FieldsStatus -->
-      <StringVectorProperty name="FieldsTreeInfo" information_only="1">
-        <ArraySelectionInformationHelper attribute_name="FieldsTree" />
-      </StringVectorProperty>
-
-      <StringVectorProperty
-        name="FieldsStatus"
-        command="SetFieldsStatus"
-        label="All Arrays"
-        number_of_elements="0"
-        repeat_command="1"
-        number_of_elements_per_command="2"
-        element_types="2 0"
-        information_property="FieldsTreeInfo"
-        immediate_update="1"
-        panel_widget="MEDReaderFieldsWidgetType">
-        <ArraySelectionDomain name="array_list">
-          <RequiredProperties>
-            <Property name="FieldsTreeInfo" function="ArrayList" />
-          </RequiredProperties>
-        </ArraySelectionDomain>
-        <Documentation>
-          This property lists all the fields sorted by time steps then by mesh then by common support.
-       </Documentation>
-      </StringVectorProperty>
-
-      <IntVectorProperty name="VectorsProperty"
-                         label="Generate Vectors"
-                         command="GenerateVectors"
-                         number_of_elements="1"
-                         default_values="0"
-                         panel_widget="MEDReaderVectorsWidgetType">
-        <Documentation>
-          This property define if the reader generate vectors.
-        </Documentation>
-        <BooleanDomain name="bool"/>
-      </IntVectorProperty>
-      <IntVectorProperty name="TimeModeProperty"
-                         label="Activate Mode"
-                         command="ChangeMode"
-                         number_of_elements="1"
-                         default_values="0"
-                         panel_widget="MEDReaderTimeModeWidgetType">
-        <Documentation>
-          This property define if the reader read time steps as modes or not.
-        </Documentation>
-        <BooleanDomain name="bool"/>
-      </IntVectorProperty>
-
-      <StringVectorProperty
-        name="Separator"
-        command="GetSeparator"
-        number_of_elements="1"
-        animateable="0"
-        information_only="1">
-        <Documentation>
-          This property specifies the file name for the MED reader.
-        </Documentation>
-      </StringVectorProperty>
-
-      <DoubleVectorProperty
-        name="TimestepValues"
-        repeatable="1"
-        information_only="1">
-        <TimeStepsInformationHelper />
-        <Documentation>
-          Available timestep values.
-        </Documentation>
-      </DoubleVectorProperty>
-
-      <StringVectorProperty name="TimesFlagsInfo" information_only="1">
-       <ArraySelectionInformationHelper attribute_name="TimesFlags" />
-     </StringVectorProperty>
-
-     <StringVectorProperty name="TimesFlagsStatus" command="SetTimesFlagsStatus"
-                           label="All TimeSteps"
-                           number_of_elements="0"
-                           repeat_command="1"
-                           number_of_elements_per_command="2"
-                           element_types="2 0"
-                           information_property="TimesFlagsInfo"
-                           panel_widget="MEDReaderTimesFlagsWidgetType">
-       <ArraySelectionDomain name="array_list">
-         <RequiredProperties>
-           <Property name="TimesFlagsInfo" function="ArrayList" />
-         </RequiredProperties>
-       </ArraySelectionDomain>
-        <Documentation>
-          This property define which time steps the reader should read.
-        </Documentation>
-        <Hints>
-          <PropertyWidgetDecorator type="ShowWidgetDecorator">
-            <Property name="TimeModeProperty" function="boolean" />
-          </PropertyWidgetDecorator>
-        </Hints>
-     </StringVectorProperty>
-
-     <IntVectorProperty name="GhostCellGeneratorCallForPara"
-                        label="Ghost Computation In Parallel Case"
-                        command="GhostCellGeneratorCallForPara"
-                        number_of_elements="1"
-                        default_values="1"
-                       panel_visibility="advanced">
-        <Documentation>
-          This property tells if ghost cell generator is applied in parallel mode right after MED file read. This call has a CPU cost but it avoids viz artefacts (interfaces inside dataset on domain borders) you can experiment during usage of filters sensitive to ghost cells in // mode (Ex transparency, contour...). 
-        </Documentation>
-        <BooleanDomain name="bool"/>
-      </IntVectorProperty>
-
-      <IntVectorProperty name="GetRidOffDebugArrays"
-                        label="Get Rid Off Debug Arrays"
-                        command="GetRidOffDebugArrays"
-                        number_of_elements="1"
-                        default_values="0"
-                                         panel_visibility="advanced">
-        <Documentation>
-          This property tells if arrays of mesh ids and number ids should be removed or not from output dataset. By default these arrays are present.
-        </Documentation>
-        <BooleanDomain name="bool"/>
-      </IntVectorProperty>
-
-   </SourceProxy>
-  </ProxyGroup>
-  <ProxyGroup name="sources">
-
-   <SourceProxy class="vtkFileSeriesGroupReader"
-                 file_name_method="SetFileName"
-                 label="MED Reader"
-                 name="MEDReader"
-                 si_class="vtkSIMetaReaderProxy">
-      <SubProxy>
-        <Proxy name="Reader"
-               proxygroup="internal_sources"
-               proxyname="MEDReaderInternal"></Proxy>
-        <ExposedProperties>
-          <Property name="Reload" />
-          <Property name="FieldsTreeInfo" />
-          <Property name="FieldsStatus" />
-          <Property name="VectorsProperty" />
-          <Property name="Separator" />
-          <Property name="TimeModeProperty" />
-          <Property name="TimesFlagsInfo" />
-          <Property name="TimesFlagsStatus" />
-          <Property name="GhostCellGeneratorCallForPara" />
-          <Property name="GetRidOffDebugArrays" />
-        </ExposedProperties>
-      </SubProxy>
-      <StringVectorProperty animateable="0"
-                            clean_command="RemoveAllFileNames"
-                            command="AddFileName"
-                            name="FileNames"
-                            number_of_elements="0"
-                            panel_visibility="never"
-                            repeat_command="1">
-        <FileListDomain name="files" />
-        <Documentation>The list of files to be read by the 
-        reader.</Documentation>
-      </StringVectorProperty>
-      <DoubleVectorProperty
-          information_only="1"
-          name="TimestepValues"
-          repeatable="1">
-        <TimeStepsInformationHelper />
-      </DoubleVectorProperty>
-
-      <Hints>
-             <ReaderFactory extensions="med rmed"
-                                  file_description="MED Files">
-        </ReaderFactory>
-      </Hints>
-   </SourceProxy>
-  </ProxyGroup>
-
-  <ProxyGroup name="filters">
-    <SourceProxy name="ExtractGroup" class="vtkExtractGroup" label="Extract Group">
-     <InputProperty name="Input" command="SetInputConnection">
-       <ProxyGroupDomain name="groups">
-         <Group name="sources"/>
-         <Group name="filters"/>
-       </ProxyGroupDomain>
-       <DataTypeDomain name="input_type">
-         <DataType value="vtkDataSet"/>
-       </DataTypeDomain>
-       <Documentation>
-         This property specifies the input to the Level Scalars filter.
-       </Documentation>
-     </InputProperty>
-
-     <StringVectorProperty name="GroupsFlagsInfo" information_only="1">
-       <ArraySelectionInformationHelper attribute_name="GroupsFlags" />
-     </StringVectorProperty>
-
-     <StringVectorProperty name="GroupsFlagsStatus" command="SetGroupsFlagsStatus"
-                           label="All Groups"
-                           number_of_elements="0"
-                           repeat_command="1"
-                           number_of_elements_per_command="2"
-                           element_types="2 0"
-                           information_property="GroupsFlagsInfo"
-                           panel_widget="ExtractGroupFieldsWidgetType">
-       <ArraySelectionDomain name="array_list">
-         <RequiredProperties>
-           <Property name="GroupsFlagsInfo" function="ArrayList" />
-         </RequiredProperties>
-       </ArraySelectionDomain>
-       <Documentation>
-          This property lists all groups and families to select.
-       </Documentation>
-     </StringVectorProperty>
-
-     <IntVectorProperty command="SetInsideOut" default_values="0" name="InsideOut" label="Extract Complementary" number_of_elements="1">
-       <BooleanDomain name="bool"/>
-       <Documentation>Choose which part of the dataset to keep regarding the selected Groups/Families. When 0 (default) the direct selection
-       is kept. When 1 the complementary part is selected.
-       </Documentation>
-      </IntVectorProperty>
-
-      <StringVectorProperty
-          name="MeshName"
-          command="GetMeshName"
-          number_of_elements="1"
-          animateable="0"
-          information_only="1">
-        <Documentation>
-          This property returns the name of the mesh.
-        </Documentation>
-      </StringVectorProperty>
-
-    </SourceProxy>
-
-    <SourceProxy name="GroupAsMultiBlock" class="vtkGroupAsMultiBlock" label="Groups As MultiBlocks">
-      <InputProperty name="Input" command="SetInputConnection">
-       <ProxyGroupDomain name="groups">
-         <Group name="sources"/>
-         <Group name="filters"/>
-       </ProxyGroupDomain>
-       <DataTypeDomain name="input_type">
-         <DataType value="vtkDataSet"/>
-       </DataTypeDomain>
-       <Documentation>
-         This property specifies the input to the Level Scalars filter.
-       </Documentation>
-     </InputProperty>
-    </SourceProxy>
-
-    <SourceProxy name="GroupsNames" class="vtkGroupsNames" label="Groups Names">
-      <InputProperty name="Input" command="SetInputConnection">
-       <ProxyGroupDomain name="groups">
-         <Group name="sources"/>
-         <Group name="filters"/>
-       </ProxyGroupDomain>
-       <DataTypeDomain name="input_type">
-         <DataType value="vtkDataSet"/>
-       </DataTypeDomain>
-       <Documentation>
-         This property specifies the input to the Level Scalars filter.
-       </Documentation>
-     </InputProperty>
-    </SourceProxy>
-
-
-  </ProxyGroup>
-
-  <ProxyGroup name="filters">
-    <SourceProxy name="ExtractCellType" class="vtkExtractCellType" label="Extract Cell Type">
-     <InputProperty name="Input" command="SetInputConnection">
-       <ProxyGroupDomain name="groups">
-         <Group name="sources"/>
-         <Group name="filters"/>
-       </ProxyGroupDomain>
-       <DataTypeDomain name="input_type">
-         <DataType value="vtkDataSet"/>
-       </DataTypeDomain>
-       <Documentation>
-         This property specifies the input to the Level Scalars filter.
-       </Documentation>
-     </InputProperty>
-
-     <StringVectorProperty name="GeoTypesInfo" information_only="1">
-       <ArraySelectionInformationHelper attribute_name="GeoTypes" />
-     </StringVectorProperty>
-
-     <StringVectorProperty name="GeoTypesStatus" command="SetGeoTypesStatus"
-                           label="All Geo Types"
-                           number_of_elements="0"
-                           repeat_command="1"
-                           number_of_elements_per_command="2"
-                           element_types="2 0"
-                           information_property="GeoTypesInfo">
-       <ArraySelectionDomain name="array_list">
-         <RequiredProperties>
-           <Property name="GeoTypesInfo" function="ArrayList" />
-         </RequiredProperties>
-       </ArraySelectionDomain>
-       <Documentation>
-          This property lists all the geometric types to select.
-       </Documentation>
-     </StringVectorProperty>
-     <IntVectorProperty command="SetInsideOut" label="Extract Complementary" default_values="0" name="InsideOut" number_of_elements="1">
-       <BooleanDomain name="bool"/>
-       <Documentation>Choose which part of the dataset to keep regarding the selected geometric types. When 0 (default) the direct selection
-       is kept. When 1 the complementary part is selected.
-       </Documentation>
-      </IntVectorProperty>
-    </SourceProxy>
-
-    <SourceProxy name="ELNOMesh" class="vtkELNOMeshFilter" label="ELNO field To Surface">
-      <Documentation
-          long_help="Create a Mesh with ELNO values mapped at each vertex."
-          short_help="Create a Mesh with ELNO values mapped at each vertex.">
-        "Create a Mesh with ELNO values mapped at each vertex."
-      </Documentation>
-
-      <InputProperty name="Input" command="SetInputConnection">
-        <ProxyGroupDomain name="groups">
-          <Group name="sources" />
-          <Group name="filters" />
-        </ProxyGroupDomain>
-        <DataTypeDomain name="input_type">
-          <DataType value="vtkUnstructuredGrid" />
-        </DataTypeDomain>
-        <InputArrayDomain name="input_array" attribute_type="cell" />
-      </InputProperty>
-
-      <DoubleVectorProperty animateable="1"
-                            command="SetShrinkFactor"
-                            default_values="0.9999"
-                            name="ShrinkFactor"
-                            number_of_elements="1">
-        <DoubleRangeDomain max="1" min="0" name="range" />
-        <Documentation>The value of this property determines how far the points
-        will move in the mesh before to be colored using ELNO fields on it. A value of 0 positions the points at the centroid of the cell; a value of 1 leaves them at their original positions.</Documentation>
-      </DoubleVectorProperty>
-      <Hints>
-        <ShowInMenu category="Mechanics" />
-      </Hints>
-    </SourceProxy>
-
-    <SourceProxy name="ELNOSurface" class="vtkELNOSurfaceFilter" label="ELNO field To Surface (skin only)">
-      <Documentation
-        long_help="Extract the surface of a dataset with ELNO values."
-        short_help="Extract the surface of a dataset with ELNO values.">
-        "Extract the surface of a dataset with ELNO values."
-      </Documentation>
-      <OutputPort name="ELNO Surface" index="0" />
-      <InputProperty name="Input" command="SetInputConnection">
-        <ProxyGroupDomain name="groups">
-          <Group name="sources" />
-          <Group name="filters" />
-        </ProxyGroupDomain>
-        <DataTypeDomain name="input_type">
-          <DataType value="vtkUnstructuredGrid" />
-        </DataTypeDomain>
-        <InputArrayDomain name="input_array" attribute_type="cell" />
-      </InputProperty>
-
-      <!-- Source Array -->
-      <StringVectorProperty
-        name="SelectSourceArray"
-        command="SetInputArrayToProcess"
-        number_of_elements="5"
-        element_types="0 0 0 0 2"
-        animateable="0">
-        <Documentation>
-          Specifies the offset array from which we generate ELNO points.
-        </Documentation>
-
-        <ArrayListDomain
-          name="array_list"
-          key_locations="MEDUtilities"
-          key_names="ELNO"
-          key_strategies="need_key">
-          <RequiredProperties>
-            <Property name="Input" function="Input" />
-          </RequiredProperties>
-        </ArrayListDomain>
-      </StringVectorProperty>
-      <Hints>
-        <Property name="SelectSourceArray" show="0"/>
-        <ShowInMenu category="Mechanics" />
-      </Hints>
-    </SourceProxy>
-
-    <SourceProxy name="GaussPoints" class="vtkMEDQuadraturePointsGenerator" label="ELGA field To Point Gaussian">
-      <Documentation
-        long_help="Create a point set with data at Gauss points."
-        short_help="Create a point set with data at Gauss points.">
-        "Create a point set with data at quadrature points."
-      </Documentation>
-
-      <OutputPort
-        name="Gauss Points"
-        index="0" />
-
-      <InputProperty
-        name="Input"
-        command="SetInputConnection">
-        <ProxyGroupDomain
-          name="groups">
-          <Group
-            name="sources" />
-          <Group
-            name="filters" />
-        </ProxyGroupDomain>
-        <DataTypeDomain
-          name="input_type">
-          <DataType
-            value="vtkUnstructuredGrid" />
-        </DataTypeDomain>
-        <InputArrayDomain
-          name="input_array"
-          attribute_type="cell" />
-      </InputProperty>
-
-      <!-- Source Array -->
-      <StringVectorProperty
-        name="SelectSourceArray"
-        command="SetInputArrayToProcess"
-        number_of_elements="5"
-        element_types="0 0 0 0 2"
-        animateable="0">
-        <Documentation>
-          Specifies the offset array from which we generate Gauss points.
-        </Documentation>
-
-        <ArrayListDomain
-          name="array_list"
-          key_locations="MEDUtilities"
-          key_names="ELGA"
-          key_strategies="need_key">
-          <RequiredProperties>
-            <Property
-              name="Input"
-              function="Input" />
-          </RequiredProperties>
-        </ArrayListDomain>
-      </StringVectorProperty>
-
-      <Hints>
-        <Property name="SelectSourceArray" show="1"/>
-        <ShowInMenu category="Mechanics" />
-      </Hints>
-
-    </SourceProxy>
-
-    <SourceProxy name="ELNOPoints" class="vtkELNOFilter" label="ELNO field To Point Gaussian">
-      <Documentation
-        long_help="Create a point set with data at ELNO points. Cells are shrinked by a given factor towards the cell center."
-        short_help="Create a point set with data at ELNO points. Cells are shrinked by a given factor towards the cell center.">
-        "Create a point set with data at quadrature points."
-      </Documentation>
-
-      <OutputPort name="ELNO Points" index="0" />
-
-      <InputProperty name="Input" command="SetInputConnection">
-        <ProxyGroupDomain name="groups">
-          <Group name="sources" />
-          <Group name="filters" />
-        </ProxyGroupDomain>
-        <DataTypeDomain
-          name="input_type">
-          <DataType value="vtkUnstructuredGrid" />
-        </DataTypeDomain>
-        <InputArrayDomain name="input_array" attribute_type="cell" />
-      </InputProperty>
-
-      <!-- Source Array -->
-      <StringVectorProperty
-        name="SelectSourceArray"
-        command="SetInputArrayToProcess"
-        number_of_elements="5"
-        element_types="0 0 0 0 2"
-        animateable="0">
-        <Documentation>
-          Specifies the offset array from which we generate ELNO points.
-        </Documentation>
-
-        <ArrayListDomain
-          name="array_list"
-          key_locations="MEDUtilities"
-          key_names="ELNO"
-          key_strategies="need_key"
-          input_domain_name="input_array">
-          <RequiredProperties>
-            <Property name="Input" function="Input" />
-          </RequiredProperties>
-        </ArrayListDomain>
-      </StringVectorProperty>
-
-      <DoubleVectorProperty
-        name="ShrinkFactor"
-        command="SetShrinkFactor"
-        label="Shrink Factor"
-        number_of_elements="1"
-        default_values="0.5">
-        <DoubleRangeDomain name="range" min="0" max="1" />
-      </DoubleVectorProperty>
-
-      <Hints>
-        <Property name="SelectSourceArray" show="0"/>
-        <ShowInMenu category="Mechanics" />
-      </Hints>
-    </SourceProxy>
-
-    <SourceProxy
-      name="GenerateStructuralElement"
-      class="vtkGenerateStructElement"
-      label="Generate Structural Element">
-
-     <InputProperty
-        name="Input"
-        command="SetInputConnection">
-           <ProxyGroupDomain name="groups">
-             <Group name="sources"/>
-             <Group name="filters"/>
-           </ProxyGroupDomain>
-           <DataTypeDomain name="input_type">
-             <DataType value="vtkUnstructuredGrid"/>
-           </DataTypeDomain>
-           <Documentation>
-             This property specifies the input to the Generate Structural Element filter.
-           </Documentation>
-     </InputProperty>
-
-    </SourceProxy>
-  </ProxyGroup>
-</ServerManagerConfiguration>
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/UI/MEDReaderTimeModeWidget.ui b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/UI/MEDReaderTimeModeWidget.ui
deleted file mode 100644 (file)
index 419d1e7..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>MEDReaderTimeModeWidget</class>
- <widget class="QWidget" name="widget">
-   <layout class="QGridLayout" name="layout">
-     <item>
-       <widget class="QGroupBox" name="groupBox">
-        <property name="enabled">
-         <bool>true</bool>
-        </property>
-        <property name="title">
-         <string/>
-        </property>
-        <layout class="QHBoxLayout" name="horizontalLayout">
-         <item>
-          <widget class="QRadioButton" name="stdMode">
-           <property name="text">
-            <string>Time</string>
-           </property>
-           <property name="checked">
-            <bool>true</bool>
-           </property>
-         </widget>
-         </item>
-         <item>
-          <widget class="QRadioButton" name="modeMode">
-           <property name="text">
-            <string>Mode</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-     </item>
-    </layout>
- </widget>
-</ui>
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/UI/MEDReaderVectorsWidget.ui b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/UI/MEDReaderVectorsWidget.ui
deleted file mode 100644 (file)
index c942427..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>MEDReaderVectorsWidget</class>
- <widget class="QWidget" name="widgetVectors">
-   <layout class="QGridLayout" name="layoutVectors">
-   <property name="topMargin">
-    <number>0</number>
-   </property>
-   <property name="bottomMargin">
-    <number>0</number>
-   </property>
-     <item>
-       <widget class="QGroupBox" name="groupBoxVectors">
-        <property name="enabled">
-         <bool>true</bool>
-        </property>
-        <property name="title">
-         <string/>
-        </property>
-        <layout class="QHBoxLayout" name="horizontalLayoutVectors">
-         <property name="topMargin">
-          <number>0</number>
-         </property>
-         <property name="bottomMargin">
-          <number>0</number>
-         </property>
-         <item>
-          <widget class="QCheckBox" name="GenerateVects">
-           <property name="text">
-            <string>GenerateVectors</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-     </item>
-    </layout>
- </widget>
-</ui>
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/pqMEDReader.qrc b/src/Plugins/MEDReader/plugin/ParaViewPlugin/Resources/pqMEDReader.qrc
deleted file mode 100644 (file)
index 1006ebf..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<RCC>
-    <qresource prefix="/ParaViewResources">
-        <file>Icons/pqCellData16.png</file>
-        <file>Icons/pqPointData16.png</file>
-        <file>Icons/pqQuadratureData16.png</file>
-        <file>Icons/pqElnoData16.png</file>
-        <file>Icons/pqReloadFile16.png</file>
-       <file>Icons/pqCellDataForWholeMesh16.png</file>
-    </qresource>
-</RCC>
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolSpreadSheet.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolSpreadSheet.cxx
deleted file mode 100644 (file)
index 6ac42ec..0000000
+++ /dev/null
@@ -1,300 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "VectBoolSpreadSheet.h"
-#include <QTableWidgetItem>
-#include <QHeaderView>
-#include <QTimeEdit>
-#include <QPainter>
-#include <iostream>
-
-VectBoolModel::VectBoolModel(int maxSize, int nbRows):_activated(maxSize,false),_nb_rows(nbRows)
-{
-  setCurSize(maxSize);
-}
-
-int VectBoolModel::rowCount(const QModelIndex &) const
-{
-  return _nb_rows;
-}
-
-int VectBoolModel::columnCount (const QModelIndex &) const
-{
-  int sz(curSize());
-  if(sz%_nb_rows==0)
-    return sz/_nb_rows;
-  else
-    return sz/_nb_rows+1;
-}
-
-QVariant VectBoolModel::headerData(int section, Qt::Orientation orientation, int role) const
-{
-  if(role==Qt::FontRole)
-    {
-      QFont serifFont("Arial",6, QFont::Bold);
-      return QVariant(serifFont);
-    }
-  else if(role==Qt::DisplayRole)
-    {
-      return QVariant(section);
-    }
-  else
-    return QAbstractTableModel::headerData(section,orientation,role);
-}
-
-bool VectBoolModel::setData(const QModelIndex& index, const QVariant& value, int role)
-{
-  if(role==Qt::UserRole)
-    {
-      int pos(index.column()*_nb_rows+index.row());
-      bool v(_activated[pos]);
-      _activated[pos]=!v;
-      emit nbOfTimeStepsOnChanged((int)getNbOfActivatedTimeSteps(),_dts.size());
-      return true;
-    }
-  else
-    return QAbstractTableModel::setData(index,value,role);
-}
-
-QVariant VectBoolModel::data(const QModelIndex &index, int role) const
-{
-  if(role==Qt::FontRole)
-    {
-      QFont serifFont("Arial",8);//, QFont::Bold);
-      return QVariant(serifFont);
-    }
-  else if(role==Qt::UserRole)
-    {
-      int pos(index.column()*_nb_rows+index.row());
-      return QVariant(_activated[pos]);
-    }
-  else if(role==Qt::DisplayRole)
-    {
-      int pos(index.column()*_nb_rows+index.row());
-      if(pos<curSize())
-        return QVariant(QString::number(pos));
-      else
-        return QVariant();
-    }
-  else if(role==Qt::TextAlignmentRole)
-    {
-      return QVariant(Qt::AlignHCenter | Qt::AlignVCenter);
-    }
-  else if(role==Qt::ToolTipRole)
-    {
-      QVariant v(data(index,Qt::DisplayRole));
-      QString v2(v.toString());
-      int pos(v2.toInt());
-      QString v3(_activated[pos]?QString("ON"):QString("OFF"));
-      QString v4(QString("time #%1 (it=%2 order=%3 t=%4) (%5)").arg(v2).arg(_dts[pos]).arg(_its[pos]).arg(_tts[pos]).arg(v3));
-      return QVariant(v4);
-    }
-  else if(role==Qt::BackgroundRole)
-    {
-      int pos(index.column()*_nb_rows+index.row());
-      if(pos>=curSize())
-        return QVariant();
-      if(_activated[pos])
-        {
-          QBrush b(QColor(0,255,0));
-          return QVariant(b);
-        }
-      else
-        {
-          QBrush b(QColor(255,0,0));
-          return QVariant(b);
-        }
-    }
-  else
-    return QVariant();
-}
-
-bool VectBoolModel::setCurrentItems(const QStringList& dts, const QStringList& its, const QStringList& tts)
-{
-  int oldSize(curSize());
-  if(oldSize!=dts.size())
-    {
-      emit layoutAboutToBeChanged();
-      _dts=dts; _its=its; _tts=tts;
-      emit layoutChanged();
-      return true;
-    }
-  else
-    {
-      _dts=dts; _its=its; _tts=tts;
-      return false; 
-    }
-  
-}
-
-void VectBoolModel::setNumberOfRows(int newNbOfRows)
-{
-  if(newNbOfRows!=_nb_rows)
-    {
-      emit beginResetModel();
-      _nb_rows=newNbOfRows;
-      emit endResetModel();
-    }
-}
-
-void VectBoolModel::selectUnselectAll()
-{
-  int nbOn(getNbOfActivatedTimeSteps()),sz(curSize()),signalVal(0);
-  emit layoutAboutToBeChanged();
-  if(nbOn>sz/2)
-    {
-      for(int ii=0;ii<sz;ii++)
-        _activated[ii]=false;
-      signalVal=0;
-    }
-  else
-    {
-      for(int ii=0;ii<sz;ii++)
-        _activated[ii]=true;
-      signalVal=(int)sz;
-    }
-  emit layoutChanged();
-  emit nbOfTimeStepsOnChanged(signalVal,_dts.size());
-}
-
-int VectBoolModel::getNbOfActivatedTimeSteps() const
-{
-  int sz(curSize()),nbOn(0);
-  for(int ii=0;ii<sz;ii++)
-    if(_activated[ii])
-      nbOn++;
-  return nbOn;
-}
-
-void VectBoolModel::setCurSize(int sz)
-{
-  _dts.clear(); _its.clear(); _tts.clear();
-  for(int i=0;i<sz;i++)
-    {
-      _dts.push_back(QString());
-      _its.push_back(QString());
-      _tts.push_back(QString());
-    }
-}
-
-int VectBoolModel::curSize() const
-{
-  return (int)_dts.size();
-}
-
-///////////////
-
-VectBoolSpreadSheet::VectBoolSpreadSheet(QWidget *parent):QTableView(parent),_delegate(new OnOffDelegate)
-{
-}
-
-VectBoolSpreadSheet::~VectBoolSpreadSheet()
-{
-  delete _delegate;
-}
-
-void VectBoolSpreadSheet::init()
-{
-  this->horizontalHeader()->setMinimumSectionSize(2);
-  this->horizontalHeader()->setDefaultSectionSize(2);
-  this->verticalHeader()->setMinimumSectionSize(2);
-  this->verticalHeader()->setDefaultSectionSize(2);
-  this->setItemDelegate(_delegate);
-  this->verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
-  this->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
-
-  this->resizeColumnsToContents();
-  this->resizeRowsToContents();
-  //this->verticalHeader()->hide();
-  //this->horizontalHeader()->hide();
-}
-
-void VectBoolSpreadSheet::selectionChanged(const QItemSelection & selected, const QItemSelection & deselected)
-{
-  QAbstractItemModel * m(model());
-  foreach(const QModelIndex& ind,selected.indexes())
-    {
-      m->setData(ind,QVariant(true),Qt::UserRole);
-    }
-  QTableView::selectionChanged(selected,deselected);
-  this->clearSelection();
-}
-
-void VectBoolSpreadSheet::nbOfRowsHasChanged(int newNbOfRows)
-{
-  VectBoolModel *zeModel(qobject_cast<VectBoolModel *>(model()));
-  if(!zeModel)
-    return ;
-  zeModel->setNumberOfRows(newNbOfRows);
-  this->verticalHeader()->setUpdatesEnabled(true);//please let this line. If not a refresh problem appear at EDF configuration.
-}
-
-void VectBoolSpreadSheet::selectUnselectAllFired()
-{
-  VectBoolModel *zeModel(qobject_cast<VectBoolModel *>(model()));
-  if(!zeModel)
-    return ;
-  zeModel->selectUnselectAll();
-}
-
-///////////////
-
-OnOffDelegate::OnOffDelegate(QObject *parent):QStyledItemDelegate(parent)
-{
-}
-
-void OnOffDelegate::paint(QPainter *painter, const QStyleOptionViewItem & option, const QModelIndex& index) const
-{
-  painter->save();
-  const QAbstractItemModel *zeModel(index.model());
-  QString cont(zeModel->data(index,Qt::DisplayRole).toString());
-  bool checked(zeModel->data(index,Qt::UserRole).toBool());
-  QFont font;
-  if(checked)
-    {
-      QFont zeFont(zeModel->data(index,Qt::FontRole).value<QFont>());
-      zeFont.setBold(true);
-      font=zeFont;
-    }
-  else
-    {
-      font=QFont("Arial",7);
-      font.setItalic(true);
-    }
-  painter->setFont(font);
-  Qt::Alignment al((Qt::Alignment)zeModel->data(index,Qt::TextAlignmentRole).toInt());
-  if(checked)
-    {//sizeHint
-      //painter->drawEllipse(option.rect);
-      //painter->setBrush(QBrush(Qt::lightGray,Qt::Dense6Pattern));
-      painter->setBrush(QBrush(QColor(230,230,255)));
-      painter->drawRect(option.rect);
-      //painter->drawLine(option.rect.topLeft(),option.rect.bottomRight());
-      //painter->drawLine(option.rect.topRight(),option.rect.bottomLeft());
-    }
-  else
-    {
-      painter->setBrush(QBrush(QColor(255,255,255)));
-      painter->drawRect(option.rect);
-      painter->setPen(Qt::lightGray);
-    }
-  painter->drawText(option.rect,cont,QTextOption(al));
-  painter->restore();
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolSpreadSheet.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolSpreadSheet.h
deleted file mode 100644 (file)
index a302a11..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include <QTableWidget>
-#include <QItemDelegate>
-#include <QStringListModel>
-#include <QAbstractTableModel>
-#include <QListView>
-#include <QStyledItemDelegate>
-
-class OnOffDelegate : public QStyledItemDelegate//QItemDelegate
-{
-  Q_OBJECT
-  public:
-  OnOffDelegate(QObject *parent=0);
-  void paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const;
-};
-
-class VectBoolSpreadSheet : public QTableView
-{
-  Q_OBJECT
-public:
-  VectBoolSpreadSheet(QWidget *parent);
-  ~VectBoolSpreadSheet();
-  void init();
-  void selectionChanged(const QItemSelection & selected, const QItemSelection & deselected);
-public slots:
-  void nbOfRowsHasChanged(int newNbOfRows);
-  void selectUnselectAllFired();
-private:
-  OnOffDelegate *_delegate;
-};
-
-class VectBoolModel : public QAbstractTableModel
-{
-  Q_OBJECT
-public:
-  VectBoolModel(int maxSize, int nbRows);
-  std::size_t getSize() const { return _activated.size(); }
-  bool getStatusAt(int pos) const { return _activated[pos]; }
-  void setStatusAt(int pos, bool val) { _activated[pos]=val; }
-  int rowCount( const QModelIndex & parent = QModelIndex() ) const;
-  int columnCount ( const QModelIndex & parent = QModelIndex() ) const;
-  bool setData(const QModelIndex & index, const QVariant & value, int role = Qt::EditRole );
-  QVariant data(const QModelIndex &index, int role) const;
-  QVariant headerData ( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const;
-  // non const methods.
-  bool setCurrentItems(const QStringList& dts, const QStringList& its, const QStringList& tts);
-  int getNbOfActivatedTimeSteps() const;
-public:
-  void setNumberOfRows(int newNbOfRows);
-  void selectUnselectAll();
-signals:
-  void nbOfTimeStepsOnChanged(int newNbOfTimeStepsOn, int totalNbOfTS);
-private:
-  void setCurSize(int sz);
-  int curSize() const;
-private:
-  std::vector<bool> _activated;
-  QStringList _dts,_its,_tts;
-  int _cur_size;
-  int _nb_rows;
-};
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolWidget.cxx
deleted file mode 100644 (file)
index 2978baa..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "VectBoolWidget.h"
-#include "VectBoolSpreadSheet.h"
-
-#include <QHBoxLayout>
-#include <QVBoxLayout>
-#include <QGridLayout>
-#include <QPushButton>
-#include <QLabel>
-#include <QGroupBox>
-#include <QSlider>
-
-#include <cmath>
-#include <iostream>
-
-NbOfActiveTSDisplay::NbOfActiveTSDisplay(QWidget *parent):QLabel(parent),_nb_of_items_on(0),_total_nb_of_items(0)
-{
-  setFont(QFont("Arial",8,QFont::Bold));
-  setTextFormat(Qt::AutoText);
-}
-
-  void NbOfActiveTSDisplay::display(int nbOfItemsOn, int totalNbOfItems)
-{
-  _nb_of_items_on=nbOfItemsOn;
-  _total_nb_of_items=totalNbOfItems;
-  setText(QString("%1/%2").arg(_nb_of_items_on).arg(_total_nb_of_items));
-}
-
-void NbOfActiveTSDisplay::totalNbOfItemsChanged(int totalNbOfItems)
-{
-  _total_nb_of_items=totalNbOfItems;
-  setText(QString("%1/%2").arg(_nb_of_items_on).arg(_total_nb_of_items));
-}
-
-VectBoolItem::VectBoolItem(QObject *parent, int pos, VectBoolModel *model):QObject(parent),_pos(pos),_old_status(true),_model(model)
-{
-}
-
-bool VectBoolItem::isActivated() const
-{
-  return _model->getStatusAt(_pos);
-}
-
-void VectBoolItem::activated(bool val)
-{
-  _model->setStatusAt(_pos,val);
-  _old_status=val;
-}
-
-void VectBoolItem::theModelHasChanged()
-{
-  bool val(isActivated());
-  if(val!=_old_status)
-    {
-      _old_status=val;
-      emit changed();
-    }
-}
-
-VectBoolWidget::VectBoolWidget(QWidget *parent, int nbOfItems):QFrame(parent)
-{
-  QSizePolicy sizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
-  sizePolicy.setHorizontalStretch(0);
-  sizePolicy.setVerticalStretch(0);
-  sizePolicy.setHeightForWidth(this->sizePolicy().hasHeightForWidth());
-  this->setSizePolicy(sizePolicy);
-  this->setFrameShape(QFrame::StyledPanel);
-  this->setFrameShadow(QFrame::Raised);
-  _horizontal_layout=new QHBoxLayout(this);
-  _horizontal_layout->setSpacing(6);
-  _horizontal_layout->setContentsMargins(11,11,11,11);
-  _spreadsheet_container=new QFrame(this);
-  QSizePolicy sizePolicy1(QSizePolicy::Expanding,QSizePolicy::Expanding);
-  sizePolicy1.setHorizontalStretch(0);
-  sizePolicy1.setVerticalStretch(0);
-  sizePolicy1.setHeightForWidth(_spreadsheet_container->sizePolicy().hasHeightForWidth());
-  _spreadsheet_container->setSizePolicy(sizePolicy1);
-  _grid_layout=new QGridLayout(_spreadsheet_container);
-  _grid_layout->setSpacing(6);
-  _grid_layout->setContentsMargins(11,11,11,11);
-  _horizontal_layout->addWidget(_spreadsheet_container);
-  _group_box=new QGroupBox(this);
-  QSizePolicy sizePolicy2(QSizePolicy::Minimum, QSizePolicy::Expanding);
-  sizePolicy2.setHorizontalStretch(0);
-  sizePolicy2.setVerticalStretch(0);
-  sizePolicy2.setHeightForWidth(_group_box->sizePolicy().hasHeightForWidth());
-  _group_box->setSizePolicy(sizePolicy2);
-  //
-  _vertical_layout=new QVBoxLayout(_group_box);
-  _vertical_layout->setSpacing(6);
-  _vertical_layout->setContentsMargins(11,11,11,11);
-  _nb_of_time_steps_on=new NbOfActiveTSDisplay(_group_box);
-  _nb_of_time_steps_on->setMaximumSize(QSize(40,16777215));
-  _vertical_layout->addWidget(_nb_of_time_steps_on);
-  _nb_of_rows_selecter=new QSlider(_group_box);
-  QSizePolicy sizePolicy3(QSizePolicy::Expanding,QSizePolicy::Expanding);
-  sizePolicy3.setHorizontalStretch(0);
-  sizePolicy3.setVerticalStretch(0);
-  sizePolicy3.setHeightForWidth(_nb_of_rows_selecter->sizePolicy().hasHeightForWidth());
-  _nb_of_rows_selecter->setSizePolicy(sizePolicy3);
-  _nb_of_rows_selecter->setOrientation(Qt::Vertical);
-  _vertical_layout->addWidget(_nb_of_rows_selecter);
-  _sel_unsel_all=new QPushButton(_group_box);
-  _sel_unsel_all->setMaximumSize(QSize(40,16777215));
-  _sel_unsel_all->setText(QString("Sel All"));
-  QFont font("Andale Mono");
-  font.setPointSize(5);
-  _sel_unsel_all->setFont(font);
-  _vertical_layout->addWidget(_sel_unsel_all);
-  //
-  _horizontal_layout->addWidget(_group_box);
-  //
-  _vbw=new VectBoolSpreadSheet(_spreadsheet_container);
-  QSizePolicy sizePolicy4(QSizePolicy::Expanding,QSizePolicy::Expanding);
-  sizePolicy4.setHorizontalStretch(0);
-  sizePolicy4.setVerticalStretch(0);
-  sizePolicy4.setHeightForWidth(_vbw->sizePolicy().hasHeightForWidth());
-  _vbw->setSizePolicy(sizePolicy4);
-  _nb_of_rows_selecter->setSizePolicy(sizePolicy3);
-  _nb_of_rows_selecter->setMinimum(1);
-  _nb_of_rows_selecter->setMaximum(GetMaxTickValueOfSlider(nbOfItems));
-  _nb_of_rows_selecter->setTickInterval(1);
-  _nb_of_rows_selecter->setTickPosition(QSlider::TicksRight);
-  connect(_nb_of_rows_selecter,SIGNAL(valueChanged(int)),_vbw,SLOT(nbOfRowsHasChanged(int)));
-  connect(_sel_unsel_all,SIGNAL(clicked()),_vbw,SLOT(selectUnselectAllFired()));
-  _grid_layout->addWidget(_vbw);
-  _vbw->init();
-  _vbm=new VectBoolModel(nbOfItems,1);
-  _vbw->setModel(_vbm);
-  connect(this->_vbm,SIGNAL(nbOfTimeStepsOnChanged(int,int)),_nb_of_time_steps_on,SLOT(display(int,int)));
-  _vbm->selectUnselectAll();
-  _nb_of_rows_selecter->setValue(_nb_of_rows_selecter->maximum());
-  //
-  for(int i=0;i<nbOfItems;i++)
-    {
-      VectBoolItem* item = new VectBoolItem(this,i,_vbm);
-      _items["000"+QString::number(i)]=item;
-      connect(_vbm, SIGNAL(nbOfTimeStepsOnChanged(int,int)), item, SLOT(theModelHasChanged()));
-    }
-}
-
-void VectBoolWidget::setItems(const QStringList& dts, const QStringList& its, const QStringList& tts)
-{
-  int curNbOfItems(dts.size());
-  if(curNbOfItems>getNumberOfBoolItems())
-    {
-      std::cerr << "ERROR ! Internal Error in VectBoolWidget::setItems ! Current number of items is bigger than the current one !" << std::endl;
-      std::cerr << curNbOfItems << " "<<getNumberOfBoolItems()<<std::endl;
-      return ;
-    }
-  if(_vbm->setCurrentItems(dts,its,tts))
-    {
-      _nb_of_rows_selecter->setMaximum(GetMaxTickValueOfSlider(curNbOfItems));
-      _nb_of_rows_selecter->setValue(_nb_of_rows_selecter->maximum());
-      _nb_of_time_steps_on->display(_vbm->getNbOfActivatedTimeSteps(),dts.size());
-    }
-}
-
-int VectBoolWidget::getNumberOfBoolItems() const
-{
-  return (int)_vbm->getSize();
-}
-
-int VectBoolWidget::GetMaxTickValueOfSlider(int val)
-{
-  double valf((double)val);
-  double ret(sqrt(valf));
-  int reti((int)ret);
-  if(reti*reti==val)
-    return reti;
-  else
-    return reti+1;
-}
-
-VectBoolWidget::~VectBoolWidget()
-{
-  delete _vbm;
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/VectBoolWidget.h
deleted file mode 100644 (file)
index 9bc4ef6..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __VECTBOOLWIDGET_H__
-#define __VECTBOOLWIDGET_H__
-
-#include <QFrame>
-#include <QLabel>
-#include <QMap>
-
-class QSlider;
-class QGroupBox;
-class QHBoxLayout;
-class QVBoxLayout;
-class QGridLayout;
-class QPushButton;
-class VectBoolModel;
-class VectBoolSpreadSheet;
-
-class NbOfActiveTSDisplay : public QLabel
-{
-Q_OBJECT
-public:
-  NbOfActiveTSDisplay(QWidget *parent=0);
-public slots:
-  void display(int nbOfItemsOn, int totalNbOfItems);
-  void totalNbOfItemsChanged(int totalNbOfItems);
-private:
-  int _nb_of_items_on;
-  int _total_nb_of_items;
-};
-
-class VectBoolItem : public QObject
-{
-Q_OBJECT
-Q_PROPERTY(bool activated READ isActivated WRITE activated)
-public:
-  VectBoolItem(QObject *parent, int pos, VectBoolModel *model);
-  bool isActivated() const;
-  void activated(bool val);
-public slots:
-  void theModelHasChanged();
-signals:
-  void changed();
-private:
-  int _pos;
-  mutable bool _old_status;
-  VectBoolModel *_model;
-};
-
-class VectBoolWidget : public QFrame
-{
-public:
-  VectBoolWidget(QWidget *parent, int nbOfItems);
-  ~VectBoolWidget();
-  int getNumberOfBoolItems() const;
-  void setItems(const QStringList& dts, const QStringList& its, const QStringList& tts);
-  const QMap<QString, VectBoolItem *>& getItems() const { return _items; }
-private:
-  static int GetMaxTickValueOfSlider(int val);
-private:
-  QMap<QString, VectBoolItem *> _items;
-  QHBoxLayout *_horizontal_layout;
-  QFrame *_spreadsheet_container;
-  QGridLayout *_grid_layout;
-  QGroupBox *_group_box;
-  QVBoxLayout *_vertical_layout;
-  NbOfActiveTSDisplay *_nb_of_time_steps_on;
-  QSlider *_nb_of_rows_selecter;
-  QPushButton *_sel_unsel_all;
-  VectBoolSpreadSheet *_vbw;
-  VectBoolModel *_vbm;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqAbstractFieldsWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqAbstractFieldsWidget.cxx
deleted file mode 100644 (file)
index 5ab569f..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqAbstractFieldsWidget.h"
-
-#include "pqArrayListDomain.h"
-#include "pqTreeWidget.h"
-#include "pqTreeWidgetItemObject.h"
-
-#include <QGridLayout>
-#include <QHeaderView>
-//-----------------------------------------------------------------------------
-pqAbstractFieldsWidget::pqAbstractFieldsWidget(
-  vtkSMProxy *smproxy, vtkSMProperty * /*smproperty*/, QWidget *parentObject)
-: Superclass(smproxy, parentObject)
-{
-  this->NItems = 0;
-  this->visibleHeader = true;
-  this->setShowLabel(false);
-
-  // Grid Layout
-  QGridLayout* gridLayout = new QGridLayout(this);
-
-  // Tree widget
-  this->TreeWidget = new pqTreeWidget(this);
-  gridLayout->addWidget(this->TreeWidget);
-}
-
-//-----------------------------------------------------------------------------
-pqAbstractFieldsWidget::~pqAbstractFieldsWidget()
-{
-  delete this->TreeWidget;
-}
-
-void pqAbstractFieldsWidget::initializeTreeWidget(vtkSMProxy *smproxy, vtkSMProperty *smproperty)
-{
-  // Load Tree Widget Items
-  this->loadTreeWidgetItems();
-
-  // Connect Property Domain to the fieldDomain property,
-  // so setFieldDomain is called when the domain changes.
-  vtkSMDomain* arraySelectionDomain = smproperty->GetDomain("array_list");
-  new pqArrayListDomain(this,"fieldsDomain", smproxy, smproperty, arraySelectionDomain);
-
-  // Connect property to field QProperty using a biderectionnal property link
-  this->addPropertyLink(this, "fields", SIGNAL(fieldsChanged()),
-                        smproxy, smproperty);
-
-  // Call slot when the tree is changed
-  QObject::connect(this->TreeWidget, SIGNAL(itemChanged(QTreeWidgetItem*, int)),
-                   this, SLOT(onItemChanged(QTreeWidgetItem*, int)));
-
-}
-
-//-----------------------------------------------------------------------------
-QSize pqAbstractFieldsWidget::sizeHint() const
-{
-  // TreeWidget sizeHintForRow is too low, correcting to +3.
-  int pix = (this->TreeWidget->sizeHintForRow(0) + 3) * this->NItems;
-  int margin[4];
-  this->TreeWidget->getContentsMargins(margin, margin + 1, margin + 2, margin + 3);
-  int h =  pix + margin[1] + margin[3];
-  if (this->visibleHeader)
-    {
-    h += this->TreeWidget->header()->frameSize().height();
-    } 
-  h = std::min(300, h);
-  return QSize(156, h);
-}
-
-//-----------------------------------------------------------------------------
-void pqAbstractFieldsWidget::onItemChanged(QTreeWidgetItem* /*item*/, int column) const
-{
-  if (column != 0)
-    {
-    return;
-    }
-  emit fieldsChanged();
-}
-
-//-----------------------------------------------------------------------------
-QList< QList< QVariant> > pqAbstractFieldsWidget::getFields() const
-{
-  // Put together a Field list, using ItemMap
-  QList< QList< QVariant> > ret;
-  QList< QVariant > field;
-  QMap<QString, pqTreeWidgetItemObject*>::const_iterator it;
-  for (it = this->ItemMap.begin(); it != this->ItemMap.end(); it++)
-    {
-    field.clear();
-    field.append(it.key());
-    field.append(it.value()->isChecked());
-    ret.append(field);
-    }
-  return ret;
-}
-
-//-----------------------------------------------------------------------------
-void pqAbstractFieldsWidget::setFields(QList< QList< QVariant> > fields)
-{
-  // Update each item checkboxes, using fields names and ItemMap
-  QMap<QString, pqTreeWidgetItemObject*>::iterator it;
-  foreach (QList< QVariant> field, fields)
-    {
-    it = this->ItemMap.find(field[0].toString());
-    if (it == this->ItemMap.end())
-      {
-      qDebug("Found an unknow Field in pqAbstractFieldsWidget::setFields, ignoring");
-      continue;
-      }
-    it.value()->setChecked(field[1].toBool());
-    }
-}
-
-//-----------------------------------------------------------------------------
-void pqAbstractFieldsWidget::setFieldsDomain(QList< QList< QVariant> > fields)
-{
-  // Block signals so the reloading does not trigger
-  // UncheckPropertyModified event
-  this->blockSignals(true);
-
-  // Load the tree widget
-  this->loadTreeWidgetItems();
-
-  // Set fields checkboxes
-  this->setFields(fields);
-
-  // Restore signals
-  this->blockSignals(false);
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqAbstractFieldsWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqAbstractFieldsWidget.h
deleted file mode 100644 (file)
index e4a42a2..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __pqAbstractFieldsWidget_h
-#define __pqAbstractFieldsWidget_h
-
-#include "pqPropertyWidget.h"
-
-class pqTreeWidget;
-class pqTreeWidgetItemObject;
-class QTreeWidgetItem;
-class vtkSMProxy;
-class vtkSMProperty;
-
-class pqAbstractFieldsWidget : public pqPropertyWidget
-{
-  typedef pqPropertyWidget Superclass;
-  Q_OBJECT
-
-  // Description
-  // Property Qt used to set/get the fields with the property link
-  Q_PROPERTY(QList< QList< QVariant> > fields READ getFields WRITE setFields)
-
-  // Description
-  // Property Qt used to set the gorup fields domain with the property link
-  Q_PROPERTY(QList< QList< QVariant> > fieldsDomain READ getFields WRITE setFieldsDomain)
-public:
-  pqAbstractFieldsWidget(
-  vtkSMProxy *smproxy, vtkSMProperty * smproperty, QWidget *parentObject = 0);
-  virtual ~pqAbstractFieldsWidget();
-
-  // Description
-  // Corrected size hint, +3 pixel on each line
-  virtual QSize sizeHint() const;
-
-signals:
-  // Description
-  // Signal emited when selected field changed
-  void fieldsChanged() const;
-
-protected:
-  // Description
-  // bidrectionnal property link setter/getter
-  virtual QList< QList< QVariant> > getFields() const;
-  virtual void setFields(QList< QList< QVariant> > fields);
-
-  // Description
-  // Update the domain, eg: reload
-  virtual void setFieldsDomain(QList< QList< QVariant> > fields);
-
-
-  // Description
-  // Initialize the widget items and connect it to property
-  // To be called by subclasses in constructor
-  virtual void initializeTreeWidget(vtkSMProxy *smproxy, vtkSMProperty *smproperty);
-
-  // Description
-  // (Re)Load the tree widget items using recovered meta data graph
-  virtual void loadTreeWidgetItems() = 0;
-
-  // Description
-  // Tree widget
-  pqTreeWidget* TreeWidget;
-
-  // Description
-  // Number of items, for graphic purpose
-  int NItems;
-
-  // Description
-  // Map of ItemPropertyName -> Item Pointer, contains only leaf.
-  QMap< QString, pqTreeWidgetItemObject*> ItemMap;
-
-  // Description
-  // Bug in qt, header->isVisible always return false, storing this info here
-  // https://bugreports.qt.io/browse/QTBUG-12939
-  bool visibleHeader;
-protected slots:
-  // Description
-  // Slot called when the tree widget changed
-  virtual void onItemChanged(QTreeWidgetItem* itemOrig, int column) const;
-
-private:
-  Q_DISABLE_COPY(pqAbstractFieldsWidget)
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqExtractGroupFieldsWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqExtractGroupFieldsWidget.cxx
deleted file mode 100644 (file)
index 98903d5..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqExtractGroupFieldsWidget.h"
-
-#include "vtkMEDReader.h"
-#include "vtkExtractGroup.h"
-#include "vtkPVMetaDataInformation.h"
-
-#include "pqTreeWidget.h"
-#include "pqTreeWidgetItemObject.h"
-#include "vtkGraph.h"
-#include "vtkNew.h"
-#include "vtkStringArray.h"
-#include "vtkDataSetAttributes.h"
-#include "vtkTree.h"
-
-#include <QStringList>
-
-//-----------------------------------------------------------------------------
-pqExtractGroupFieldsWidget::pqExtractGroupFieldsWidget(
-  vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject)
-: Superclass(smproxy, smproperty, parentObject)
-{
-  this->TreeWidget->setHeaderLabel("Groups And Families");
-  this->initializeTreeWidget(smproxy, smproperty);
-}
-
-//-----------------------------------------------------------------------------
-pqExtractGroupFieldsWidget::~pqExtractGroupFieldsWidget()
-{
-}
-
-//-----------------------------------------------------------------------------
-void pqExtractGroupFieldsWidget::loadTreeWidgetItems()
-{
-  // Recover Graph
-  vtkPVMetaDataInformation *info(vtkPVMetaDataInformation::New());
-  this->proxy()->GatherInformation(info);
-  vtkGraph* graph = vtkGraph::SafeDownCast(info->GetInformationData());
-  if(!graph)
-    {
-    return;
-    }
-
-  // Clear Tree Widget
-  this->TreeWidget->clear();
-
-  // Clear Item Map
-  this->ItemMap.clear();
-
-  // Create a tree
-  vtkNew<vtkTree> tree;
-  tree->CheckedShallowCopy(graph);
-  vtkStringArray* names = vtkStringArray::SafeDownCast(tree->GetVertexData()->GetAbstractArray("Names"));
-
-  vtkIdType root = tree->GetRoot();
-  vtkIdType mfg = tree->GetChild(root, 1); // MeshesFamsGrps
-
-  vtkIdType mesh = tree->GetChild(mfg, 0); // mesh
-  QString meshName = QString(names->GetValue(mesh));
-
-  this->NItems = 0;
-
-  vtkIdType grps = tree->GetChild(mesh, 0); // grps
-  pqTreeWidgetItemObject* grpsItem = new pqTreeWidgetItemObject(this->TreeWidget, QStringList());
-  this->NItems++;
-  grpsItem->setText(0, QString("Groups of \"" + meshName + "\""));
-
-  vtkIdType fams = tree->GetChild(mesh, 1); // fams
-  pqTreeWidgetItemObject* famsItem = new pqTreeWidgetItemObject(this->TreeWidget, QStringList());
-  this->NItems++;
-  famsItem->setText(0, QString("Families of \"" + meshName + "\""));
-
-  std::map<std::string, int> famDataTypeMap;
-
-  for (int i = 0; i < tree->GetNumberOfChildren(fams); i++)
-    {
-    // Familly Item
-    vtkIdType fam = tree->GetChild(fams, i);
-    pqTreeWidgetItemObject *famItem = new pqTreeWidgetItemObject(famsItem, QStringList());
-    this->NItems++;
-
-    // Familly name
-    std::string str = names->GetValue(fam);
-    const char* separator = vtkMEDReader::GetSeparator();
-    size_t pos = str.find(separator);
-    std::string name = str.substr(0, pos);
-    famItem->setText(0, QString(name.c_str()));
-
-    // Property Name
-    QString propertyName = QString(vtkExtractGroup::GetFamStart()) + QString(str.c_str());
-    this->ItemMap[propertyName] = famItem;
-
-    // Datatype flag
-    int dataTypeFlag = atoi(str.substr(pos + strlen(separator)).c_str());
-    famDataTypeMap[name] = dataTypeFlag;
-
-    // Checkbox
-    famItem->setFlags(famItem->flags() | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable);
-    famItem->setChecked(true);
-
-    // Tooltip
-    QString famToolTip(QString("%1 (%2)").arg(QString(name.c_str())).arg(dataTypeFlag));
-    famItem->setData(0, Qt::ToolTipRole, famToolTip);
-
-    // Pixmap
-    if (dataTypeFlag<0)
-      {
-      famItem->setData(0, Qt::DecorationRole,
-                       QPixmap(":/ParaViewResources/Icons/pqCellData16.png"));
-      }
-    if (dataTypeFlag>0)
-      {
-      famItem->setData(0, Qt::DecorationRole,
-                       QPixmap(":/ParaViewResources/Icons/pqPointData16.png"));
-      }
-    }
-
-  for (int i = 0; i < tree->GetNumberOfChildren(grps); i++)
-    {
-    // Grp Item
-    vtkIdType grp = tree->GetChild(grps, i);
-    pqTreeWidgetItemObject *grpItem = new pqTreeWidgetItemObject(grpsItem, QStringList());
-    this->NItems++;
-
-    // Group name
-    QString name = QString(names->GetValue(grp));
-    grpItem->setText(0, name);
-
-    // Property Name
-    QString propertyName = QString(vtkExtractGroup::GetGrpStart()) + name;
-    this->ItemMap[propertyName] = grpItem;
-
-    // Datatype flag
-    bool hasPoint = false;
-    bool hasCell = false;
-    int dataTypeFlag = 0;
-    for (int j = 0; j < tree->GetNumberOfChildren(grp); j++)
-      {
-      dataTypeFlag = famDataTypeMap[names->GetValue(tree->GetChild(grp, j))];
-      if (dataTypeFlag > 0)
-        {
-        hasPoint = true;
-        }
-      else if (dataTypeFlag < 0)
-        {
-        hasCell = true;
-        }
-      else
-        {
-        dataTypeFlag = 0;
-        break;
-        }
-
-      if (hasPoint && hasCell)
-        {
-        dataTypeFlag = 0;
-        break;
-        }
-      }
-
-    // Checkbox
-    grpItem->setFlags(grpItem->flags() | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable);
-    grpItem->setChecked(true);
-
-    // Tooltip
-    grpItem->setData(0, Qt::ToolTipRole, name);
-
-    // Pixmap
-    if (dataTypeFlag<0)
-      {
-      grpItem->setData(0, Qt::DecorationRole,
-                       QPixmap(":/ParaViewResources/Icons/pqCellData16.png"));
-      }
-    if (dataTypeFlag>0)
-      {
-      grpItem->setData(0, Qt::DecorationRole,
-                       QPixmap(":/ParaViewResources/Icons/pqPointData16.png"));
-      }
-    }
-
-  // Expand Widget
-  this->TreeWidget->expandAll();
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqExtractGroupFieldsWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqExtractGroupFieldsWidget.h
deleted file mode 100644 (file)
index 6b7b8a9..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __pqExtractGroupFieldsWidget_h
-#define __pqExtractGroupFieldsWidget_h
-
-#include "pqAbstractFieldsWidget.h"
-
-class vtkSMProxy;
-class vtkSMProperty;
-
-class pqExtractGroupFieldsWidget : public pqAbstractFieldsWidget
-{
-  typedef pqAbstractFieldsWidget Superclass;
-  Q_OBJECT
-
-public:
-  pqExtractGroupFieldsWidget(
-    vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject = 0);
-  virtual ~pqExtractGroupFieldsWidget();
-
-protected:
-  // Description
-  // Load the tree widget using recovered meta data graph
-  void loadTreeWidgetItems();
-
-private:
-  Q_DISABLE_COPY(pqExtractGroupFieldsWidget)
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderFieldsWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderFieldsWidget.cxx
deleted file mode 100644 (file)
index b5413de..0000000
+++ /dev/null
@@ -1,278 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqMEDReaderFieldsWidget.h"
-
-#include "vtkMEDReader.h"
-#include "vtkPVMetaDataInformation.h"
-
-#include "pqTreeWidget.h"
-#include "pqTreeWidgetItemObject.h"
-#include "vtkDataSetAttributes.h"
-#include "vtkGraph.h"
-#include "vtkNew.h"
-#include "vtkStringArray.h"
-#include "vtkTree.h"
-
-#include <QStringList>
-#include <QHeaderView>
-
-//-----------------------------------------------------------------------------
-pqMEDReaderFieldsWidget::pqMEDReaderFieldsWidget(
-  vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject)
-: Superclass(smproxy, smproperty, parentObject)
-{
-  this->TreeWidget->header()->hide();
-  this->visibleHeader = false;
-  this->TransmitToParent = true;
-  this->initializeTreeWidget(smproxy, smproperty);
-}
-
-//-----------------------------------------------------------------------------
-pqMEDReaderFieldsWidget::~pqMEDReaderFieldsWidget()
-{
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderFieldsWidget::loadTreeWidgetItems()
-{
-  //Clear Item Map
-  this->ItemMap.clear();
-
-  // Clear tree
-  this->TreeWidget->clear();
-
-  // Clear unique checked item vector
-  this->UniqueCheckedItems.clear();
-
-  // Recover meta data graph
-  vtkPVMetaDataInformation *info(vtkPVMetaDataInformation::New());
-  this->proxy()->GatherInformation(info);
-  vtkGraph* graph = vtkGraph::SafeDownCast(info->GetInformationData());
-
-  // Create a tree
-  vtkNew<vtkTree> tree;
-  tree->CheckedShallowCopy(graph);
-  vtkStringArray* names =
-    vtkStringArray::SafeDownCast(tree->GetVertexData()->GetAbstractArray("Names"));
-
-  if(!names)// In case of error right at the begining of loading process (empty MED file)
-    return ;
-
-  vtkIdType root = tree->GetRoot();
-  vtkIdType fst = tree->GetChild(root, 0); // FieldsStatusTree
-
-  this->NItems = 0;
-  int nLeaves = 0;
-  for (int i = 1; i < tree->GetNumberOfChildren(fst); i += 2)
-    {
-    // Browse all interessting tree node
-
-    // TSX Node
-    vtkIdType tsxId = tree->GetChild(fst, i);
-    vtkIdType tsId = tree->GetChild(fst, i - 1);
-    pqTreeWidgetItemObject *ts = new pqTreeWidgetItemObject(this->TreeWidget, QStringList());
-    this->NItems++;
-    QString tsxName = QString(names->GetValue(tsxId));
-    ts->setText(0, tsxName);
-    ts->setData(0, Qt::ToolTipRole, QString(names->GetValue(tsId)));
-
-    // MAIL Node
-    for (int maili = 0; maili < tree->GetNumberOfChildren(tsxId); maili++)
-      {
-      vtkIdType mailId = tree->GetChild(tsxId, maili);
-      pqTreeWidgetItemObject *mail = new pqTreeWidgetItemObject(ts, QStringList());
-      this->NItems++;
-      QString mailName = QString(names->GetValue(mailId));
-      mail->setText(0, mailName);
-      mail->setData(0, Qt::ToolTipRole, QString(names->GetValue(mailId)));
-
-      QString propertyBaseName = tsxName + "/" + mailName + "/";
-
-      // ComsupX node
-      for (int comsupi = 0; comsupi < tree->GetNumberOfChildren(mailId); comsupi++)
-        {
-        vtkIdType comSupId = tree->GetChild(mailId, comsupi);
-        pqTreeWidgetItemObject *comsup = new pqTreeWidgetItemObject(mail, QStringList());
-        this->NItems++;
-        QString comsupName = QString(names->GetValue(comSupId));
-        comsup->setText(0, comsupName);
-
-        // ComSup tooltip
-        vtkIdType geoTypeId = tree->GetChild(comSupId, 1);
-        QString comSupToolTipName(names->GetValue(comSupId));
-        for (int geoi = 0; geoi < tree->GetNumberOfChildren(geoTypeId); geoi++)
-          {
-          comSupToolTipName += QString("\n- %1").arg(
-            QString(names->GetValue(tree->GetChild(geoTypeId, geoi))));
-          }
-        comsup->setData(0, Qt::ToolTipRole, comSupToolTipName);
-
-        comsup->setFlags(comsup->flags() | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable);
-        comsup->setChecked(false);
-        QObject::connect(comsup, SIGNAL(checkedStateChanged(bool)), this, SLOT(updateChecks()));
-        this->UniqueCheckedItems.push_back(comsup);
-
-        QString fullComsupName = propertyBaseName + comsupName + "/";
-        // Arrs node
-        vtkIdType arrId = tree->GetChild(comSupId, 0);
-        for (int arri = 0; arri < tree->GetNumberOfChildren(arrId); arri++)
-          {
-          pqTreeWidgetItemObject *array = new pqTreeWidgetItemObject(comsup, QStringList());
-          this->NItems++;
-
-          vtkIdType arrayId = tree->GetChild(arrId, arri);
-          std::string str = names->GetValue(arrayId);
-          this->ItemMap[fullComsupName + QString(str.c_str())] = array;
-
-          const char* separator = vtkMEDReader::GetSeparator();
-          size_t pos = str.find(separator);
-          std::string name = str.substr(0, pos);
-
-          array->setText(0, QString(name.c_str()));
-          array->setFlags(array->flags() | Qt::ItemIsUserCheckable);
-          array->setChecked(false);
-
-          // Special Field
-          if (tree->GetNumberOfChildren(arrayId) != 0)
-            {
-            QFont font;
-            font.setItalic(true);
-            font.setUnderline(true);
-            array->setData(0, Qt::FontRole, QVariant(font));
-
-  array->setData(0, Qt::ToolTipRole,
-    QString("Whole \" %1\" mesh").arg(name.c_str()));
-  array->setData(0, Qt::DecorationRole,
-    QPixmap(":/ParaViewResources/Icons/pqCellDataForWholeMesh16.png"));
-            }
-          // Standard Field
-          else
-            {
-            std::string spatialDiscr = str.substr(pos + strlen(separator));
-            QString tooltip = QString(name.c_str() + QString(" (") +
-              spatialDiscr.c_str() + QString(")"));
-            array->setData(0, Qt::ToolTipRole, tooltip);
-
-            QPixmap pix;
-            if (spatialDiscr == "P0")
-              {
-              pix.load(":/ParaViewResources/Icons/pqCellData16.png");
-              }
-            else if (spatialDiscr == "P1")
-              {
-              pix.load(":/ParaViewResources/Icons/pqPointData16.png");
-              }
-            else if (spatialDiscr == "GAUSS")
-              {
-              pix.load(":/ParaViewResources/Icons/pqQuadratureData16.png");
-              }
-            else if (spatialDiscr == "GSSNE")
-              {
-              pix.load(":/ParaViewResources/Icons/pqElnoData16.png");
-              }
-            array->setData(0, Qt::DecorationRole, pix);
-            }
-
-          // Connection and updating checks for each item
-          QObject::connect(array, SIGNAL(checkedStateChanged(bool)), this, SLOT(updateChecks()));
-          nLeaves++;
-          }
-        }
-      }
-    }
-  // Expand tree
-  this->TreeWidget->expandAll();
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderFieldsWidget::uncheckOtherUniqueItems(pqTreeWidgetItemObject* item)
-{
-  // Uncheck all other items in vector
-  foreach (pqTreeWidgetItemObject* otherItems, this->UniqueCheckedItems)
-    {
-    if (otherItems != item)
-      {
-      otherItems->setCheckState(0, Qt::Unchecked);
-      }
-    }
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderFieldsWidget::updateChecks()
-{
-  // Call updateCheck on the sender
-  pqTreeWidgetItemObject* item = qobject_cast<pqTreeWidgetItemObject*>(QObject::sender());
-  this->updateChecks(item);
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderFieldsWidget::updateChecks(pqTreeWidgetItemObject* item)
-{
-  // When a Leaf item is checked, the parent will be checked (partially or not).
-  // Then other parents will be unchecked using uncheckOtherUniqueItems
-  // Then other parent leaf will be unchecked using updateChecks(parent)
-  //
-  // When a Parent item is checked, the leaf will be checked
-  // Then other parents will be unchecked using uncheckOtherUniqueItems
-  // Then other parent leaf will be unchecked using updateChecks(parent)
-
-  if (item->childCount() == 0)
-    {
-    // Only first level leaf will transmit checks to parent
-    if (this->TransmitToParent)
-      {
-      // Recover correct parent state
-      Qt::CheckState state = item->checkState(0);
-      pqTreeWidgetItemObject* parent =
-        dynamic_cast<pqTreeWidgetItemObject*>(item->QTreeWidgetItem::parent());
-      for (int i = 0; i < parent->childCount(); i++)
-        {
-        if (parent->child(i)->checkState(0) != state)
-          {
-          state = Qt::PartiallyChecked;
-          }
-        }
-      // Set Parent State
-      parent->setCheckState(0, state);
-      }
-    }
-  else
-    {
-    // Check/Uncheck childs, blocking looped call to slot
-    if (item->checkState(0) != Qt::PartiallyChecked)
-      {
-      this->TransmitToParent = false;
-      for (int i = 0; i < item->childCount(); i++)
-        {
-        pqTreeWidgetItemObject* leaf =
-          dynamic_cast<pqTreeWidgetItemObject*>(item->child(i));
-        leaf->setCheckState(0, item->checkState(0));
-        }
-      this->TransmitToParent = true;
-      }
-
-    // Uncheck other unique checked items
-    if (item->checkState(0) != Qt::Unchecked)
-      {
-      this->uncheckOtherUniqueItems(item);
-      }
-    }
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderFieldsWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderFieldsWidget.h
deleted file mode 100644 (file)
index e77dd1f..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __pqMEDReaderFieldsWidget_h
-#define __pqMEDReaderFieldsWidget_h
-
-#include "pqAbstractFieldsWidget.h"
-
-class vtkSMProxy;
-class vtkSMProperty;
-class pqMEDReaderFieldsWidget : public pqAbstractFieldsWidget
-{
-  typedef pqAbstractFieldsWidget Superclass;
-  Q_OBJECT
-
-public:
-  pqMEDReaderFieldsWidget(
-    vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject = 0);
-  virtual ~pqMEDReaderFieldsWidget();
-
-protected:
-  // Descritpion
-  // Load the tree widget using recovered meta data graph
-  // and connect each item to indexed property
-  void loadTreeWidgetItems();
-
-  // Description
-  // Uncheck other unique checked item
-  void uncheckOtherUniqueItems(pqTreeWidgetItemObject* item);
-
-  // Description
-  // Update check state of other items using provided item
-  void updateChecks(pqTreeWidgetItemObject* item);
-
-  // Description
-  // Vector of unique checked items
-  std::vector<pqTreeWidgetItemObject*> UniqueCheckedItems;
-
-  // Description
-  // Flag indicating if updateCheck method is recursivelly called,
-  // to avoid infinite loop
-  bool TransmitToParent;
-
-protected slots:
-  // Description
-  // Update check state of other items using the sender object
-  void updateChecks();
-
-private:
-  Q_DISABLE_COPY(pqMEDReaderFieldsWidget)
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderGraphUtils.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderGraphUtils.cxx
deleted file mode 100644 (file)
index 0cdf952..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqMEDReaderGraphUtils.h"
-
-#include "vtkGraph.h"
-#include "vtkTree.h"
-#include "vtkNew.h"
-#include "vtkStringArray.h"
-#include "vtkDataSetAttributes.h"
-
-namespace pqMedReaderGraphUtils
-{
-void getCurrentTS(vtkGraph* graph, vtkIdType id, QStringList& dts, QStringList& its,
-                  QStringList& tts)
-{
-  vtkNew<vtkTree> tree;
-  tree->CheckedShallowCopy(graph);
-  vtkStringArray* names = vtkStringArray::SafeDownCast(
-    tree->GetVertexData()->GetAbstractArray("Names"));
-  vtkIdType root = tree->GetRoot();
-  vtkIdType fst = tree->GetChild(root, 0); // FieldsStatusTree
-  vtkIdType tsr = tree->GetChild(tree->GetChild(fst, id*2), 0); //Time Step root node
-  vtkIdType tmp;
-  for (int i = 0; i < tree->GetNumberOfChildren(tsr); i++)
-    {
-    // Each Time Step
-    // Recover step
-    tmp = tree->GetChild(tsr, i);
-    dts << QString(names->GetValue(tmp));
-
-    // Recover mode
-    tmp = tree->GetChild(tmp, 0);
-    its << QString(names->GetValue(tmp));
-
-    // Recover value
-    tmp = tree->GetChild(tmp, 0);
-    tts << QString(names->GetValue(tmp));
-    }
-}
-
-int getMaxNumberOfTS(vtkGraph* graph)
-{
-  vtkNew<vtkTree> tree;
-  tree->CheckedShallowCopy(graph);
-  vtkStringArray* names = vtkStringArray::SafeDownCast(
-    tree->GetVertexData()->GetAbstractArray("Names"));
-  vtkIdType root = tree->GetRoot();
-  vtkIdType fst = tree->GetChild(root, 0); // FieldsStatusTree
-  vtkIdType tmp;
-  int nbTS = 0;
-  for (int i = 0; i < tree->GetNumberOfChildren(fst); i += 2)
-    {
-    // Look for max time steps
-    tmp = tree->GetChild(tree->GetChild(fst, i), 0);
-    nbTS = std::max(nbTS, names->GetVariantValue(tmp).ToInt());
-    }
-  return nbTS;
-}
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderGraphUtils.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderGraphUtils.h
deleted file mode 100644 (file)
index 4cad151..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef _pqMEDReaderGraphUtils_h
-#define _pqMEDReaderGraphUtils_h
-
-#include "vtkType.h"
-
-#include <QStringList>
-
-class vtkGraph;
-class pqTreeWidget;
-
-namespace pqMedReaderGraphUtils
-{
-  // Description
-  // Extract Current Time Step from a meta data graph
-  void getCurrentTS(vtkGraph* graph, vtkIdType id, QStringList& dts,
-                    QStringList& its, QStringList& tts);
-
-  // Description
-  // Extract the maximum number of timestep from a meta data graph
-  int getMaxNumberOfTS(vtkGraph* graph);
-}
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderReloadWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderReloadWidget.cxx
deleted file mode 100644 (file)
index e19a460..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqMEDReaderReloadWidget.h"
-
-#include "vtkSMProxy.h"
-#include "vtkSMSourceProxy.h"
-#include "vtkSMProperty.h"
-#include "pqUndoStack.h"
-#include "vtkSMReaderReloadHelper.h"
-
-#include <QPushButton>
-#include <QGridLayout>
-
-pqMEDReaderReloadWidget::pqMEDReaderReloadWidget(vtkSMProxy *smProxy,
-                                                 vtkSMProperty *proxyProperty,
-                                                 QWidget *pWidget)
-: pqPropertyWidget(smProxy, pWidget),
-  Property(proxyProperty)
-{
-  this->setShowLabel(false);
-
-  // Grid Layout
-  QGridLayout* gridLayout = new QGridLayout(this);
-  gridLayout->setAlignment(Qt::AlignRight);
-
-  // Reload Button
-  QPushButton *button = new QPushButton();
-  button->setIcon(QIcon(":/ParaViewResources/Icons/pqReloadFile16.png"));
-  button->setFixedSize(button->sizeHint());
-  gridLayout->addWidget(button);
-
-  // Connection
-  connect(button, SIGNAL(clicked()), this, SLOT(buttonClicked()));
-}
-
-pqMEDReaderReloadWidget::~pqMEDReaderReloadWidget()
-{
-}
-
-void pqMEDReaderReloadWidget::buttonClicked()
-{
-  // code adapted from ParaView/Qt/ApplicationComponents/pqReloadFilesReaction.cxx
-  // which corresponds to right-click reload files
-
-  vtkNew<vtkSMReaderReloadHelper> helper;
-
-  vtkSMSourceProxy* sourceProxy = vtkSMSourceProxy::SafeDownCast(this->proxy());
-
-  if (!helper->SupportsReload(sourceProxy))
-  {
-    return;
-  }
-
-  BEGIN_UNDO_EXCLUDE();
-  // as MEDReader support FileSeries, we can either reload files or extend file series
-  // (the right-click reload files allows to choose it from a dialog box)
-  // as single med file is the main use case, we choose to reload it
-  // (instead of extending file series)
-  helper->ReloadFiles(sourceProxy);
-//  helper->ExtendFileSeries(sourceProxy);
-  pqApplicationCore::instance()->render();
-  END_UNDO_EXCLUDE();
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderReloadWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderReloadWidget.h
deleted file mode 100644 (file)
index ac5a9c2..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef _pqMEDReaderReloadWidget_h
-#define _pqMEDReaderReloadWidget_h
-
-#include "pqPropertyWidget.h"
-
-class pqMEDReaderReloadWidget : public pqPropertyWidget
-{
-  Q_OBJECT
-
-public:
-  explicit pqMEDReaderReloadWidget(vtkSMProxy *proxy,
-                                   vtkSMProperty *property,
-                                   QWidget *parent = 0);
-  ~pqMEDReaderReloadWidget();
-
-private slots:
-  // Description
-  // Called when button is clicked
-  // Reload the med reader
-  void buttonClicked();
-
-private:
-  vtkSMProperty* Property;
-};
-
-#endif // _pqMEDReaderReloadWidget_h
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimeModeWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimeModeWidget.cxx
deleted file mode 100644 (file)
index 4eb5db8..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "ui_MEDReaderTimeModeWidget.h"
-#include "pqMEDReaderTimeModeWidget.h"
-
-#include "pqCoreUtilities.h"
-//-----------------------------------------------------------------------------
-// Internals
-class pqMEDReaderTimeModeWidget::pqInternals : public Ui::MEDReaderTimeModeWidget
-{
-public:
-  pqInternals(pqMEDReaderTimeModeWidget* self)
-    {
-    this->setupUi(self);
-    }
-};
-
-//-----------------------------------------------------------------------------
-pqMEDReaderTimeModeWidget::pqMEDReaderTimeModeWidget(
-  vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject)
-: Superclass(smproxy, parentObject), Internals(new pqMEDReaderTimeModeWidget::pqInternals(this))
-{
-  this->setShowLabel(false);
-  this->ModeEnabled = false;
-
-  this->addPropertyLink(this, "ModeEnabled" , SIGNAL(modeEnabled(bool)), smproperty);
-  QObject::connect(this->Internals->modeMode, SIGNAL(toggled(bool)),
-                   this, SLOT(setModeEnabled(bool)));
-}
-
-//-----------------------------------------------------------------------------
-pqMEDReaderTimeModeWidget::~pqMEDReaderTimeModeWidget()
-{
-}
-
-//-----------------------------------------------------------------------------
-bool pqMEDReaderTimeModeWidget::isModeEnabled() const
-{
-  return this->ModeEnabled;
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderTimeModeWidget::setModeEnabled(bool enable)
-{
-  this->ModeEnabled = enable;
-  this->Internals->modeMode->setChecked(enable);
-  this->Internals->stdMode->setChecked(!enable);
-  emit modeEnabled(enable);
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimeModeWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimeModeWidget.h
deleted file mode 100644 (file)
index 81d80fa..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __pqMEDReaderTimeModeWidget_h
-#define __pqMEDReaderTimeModeWidget_h
-
-#include "pqPropertyWidget.h"
-
-class pqMEDReaderTimeModeWidget : public pqPropertyWidget
-{
-  Q_OBJECT
-
-  // Qt property to link to vtk property
-  Q_PROPERTY(bool ModeEnabled READ isModeEnabled WRITE setModeEnabled)
-
-  typedef pqPropertyWidget Superclass;
-public:
-  pqMEDReaderTimeModeWidget(
-    vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject = 0);
-  virtual ~pqMEDReaderTimeModeWidget();
-
-  // Description
-  // Qt property getter
-  bool isModeEnabled() const;
-
-public slots:
-  // Description
-  // Qt Property setter
-  void setModeEnabled(bool enable);
-
-signals:
-  // Description
-  // Qt Property signal
-  void modeEnabled(bool enable);
-
-private:
-  Q_DISABLE_COPY(pqMEDReaderTimeModeWidget)
-
-  // Description
-  // Qt property value
-  bool ModeEnabled;
-
-  // Description
-  // UI Internals
-  class pqInternals;
-  pqInternals* Internals;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimesFlagsWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimesFlagsWidget.cxx
deleted file mode 100644 (file)
index 503d70b..0000000
+++ /dev/null
@@ -1,227 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqMEDReaderTimesFlagsWidget.h"
-
-#include "VectBoolWidget.h"
-#include "pqMEDReaderGraphUtils.h"
-#include "vtkMEDReader.h"
-#include "vtkPVMetaDataInformation.h"
-
-#include "pqCoreUtilities.h"
-#include "pqArrayListDomain.h"
-#include "pqPropertiesPanel.h"
-#include "vtkGraph.h"
-#include "vtkGraphWriter.h"
-#include "vtkInformationDataObjectMetaDataKey.h"
-#include "vtkNew.h"
-#include "vtkSMDoubleVectorProperty.h"
-#include "vtkSMStringVectorProperty.h"
-#include "vtkTree.h"
-
-#include <QGridLayout>
-#include <QStringList>
-
-//-----------------------------------------------------------------------------
-pqMEDReaderTimesFlagsWidget::pqMEDReaderTimesFlagsWidget(
-  vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject)
-: Superclass(smproxy, parentObject)
-{
-  this->CachedTsId = -1;
-  this->TimesVectWidget = NULL;
-  this->setShowLabel(false);
-
-  // Grid Layout
-  this->TimesVectLayout = new QGridLayout(this);
-
-  // VectBoolWidget
-  this->CreateTimesVectWidget();
-  this->UpdateTimeSteps();
-
-  // Connect timeStepStatus property to update time steps method
-  vtkSMProperty* prop = smproxy? smproxy->GetProperty("FieldsStatus") : NULL;
-  if (!prop)
-    {
-    qDebug("Could not locate property named 'FieldsStatus'. "
-           "pqMEDReaderTimesFlagsWidget will have no updated labels.");
-    }
-  else
-    {
-    pqCoreUtilities::connect(prop, vtkCommand::UncheckedPropertyModifiedEvent,
-                             this, SLOT(UpdateTimeSteps()));
-    }
-
-  // Connect Property Domain to the timeStepDomain property,
-  // so setTimeStepDomain is called when the domain changes.
-  vtkSMDomain* arraySelectionDomain = smproperty->GetDomain("array_list");
-  new pqArrayListDomain(this,"timeStepsDomain", smproxy, smproperty, arraySelectionDomain);
-
-  // Connect property to timeStep QProperty using a biderectionnal property link
-  this->addPropertyLink(this, "timeSteps", SIGNAL(timeStepsChanged()),
-                        smproxy, smproperty);
-
-  if(!this->TimesVectWidget) // In case of error right at the begining of loading process (empty MED file)
-    return ;
-
-  const QMap<QString, VectBoolItem*>& items(this->TimesVectWidget->getItems());
-  QMap<QString, VectBoolItem*>::const_iterator it;
-  for (it = items.begin(); it != items.end(); it++)
-    {
-    QObject::connect(it.value(), SIGNAL(changed()), this, SLOT(onItemChanged()));
-    }
-}
-
-//-----------------------------------------------------------------------------
-pqMEDReaderTimesFlagsWidget::~pqMEDReaderTimesFlagsWidget()
-{
-  delete this->TimesVectWidget;
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderTimesFlagsWidget::onItemChanged() const
-{
-  emit timeStepsChanged();
-}
-
-//-----------------------------------------------------------------------------
-QList< QList< QVariant> > pqMEDReaderTimesFlagsWidget::getTimeSteps() const
-{
-  // Put together a TimeStep list, using ItemMap
-  QList< QList< QVariant> > ret;
-  QList< QVariant > timeStep;
-  if(!this->TimesVectWidget) // In case of error right at the begining of loading process (empty MED file)
-    return ret;
-  const QMap<QString, VectBoolItem*>& items(this->TimesVectWidget->getItems());
-  QMap<QString, VectBoolItem*>::const_iterator it;
-  for (it = items.begin(); it != items.end(); it++)
-    {
-    timeStep.clear();
-    timeStep.append(it.key());
-    timeStep.append(it.value()->isActivated());
-    ret.append(timeStep);
-    }
-  return ret;
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderTimesFlagsWidget::setTimeSteps(QList< QList< QVariant> > timeSteps)
-{
-  // Update each item checkboxes, using timeSteps names and ItemMap
-  const QMap<QString, VectBoolItem *>& items(this->TimesVectWidget->getItems());
-  QMap<QString, VectBoolItem*>::const_iterator it;
-  foreach (QList< QVariant> timeStep, timeSteps)
-    {
-    it = items.find(timeStep[0].toString());
-    if (it == items.end())
-      {
-      qDebug("Found an unknow TimeStep in pqMEDReaderTimesFlagsWidget::setTimeSteps, ignoring");
-      continue;
-      }
-    it.value()->activated(timeStep[1].toBool());
-    }
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderTimesFlagsWidget::setTimeStepsDomain(QList< QList< QVariant> > timeSteps)
-{
-  cout<<"TimeStepsDomai"<<endl;
-  // Block signals so the reloading does not trigger
-  // UncheckPropertyModified event
-  this->blockSignals(true);
-
-  // Load the tree widget
-  this->CreateTimesVectWidget();
-
-  // Set timeSteps checkboxes
-  this->setTimeSteps(timeSteps);
-
-  // Restore signals
-  this->blockSignals(false);
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderTimesFlagsWidget::CreateTimesVectWidget()
-{
-  // Recover Graph
-  vtkPVMetaDataInformation *info(vtkPVMetaDataInformation::New());
-  this->proxy()->GatherInformation(info);
-  vtkGraph* graph = vtkGraph::SafeDownCast(info->GetInformationData());
-
-  // Delete the widget
-  if (this->TimesVectWidget != NULL)
-    {
-    delete this->TimesVectWidget;
-    }
-
-  if(!graph)
-    return ;// In case of error right at the begining of loading process (empty MED file)
-
-  // (Re)cretate widget
-  this->TimesVectWidget = new VectBoolWidget(this,
-    pqMedReaderGraphUtils::getMaxNumberOfTS(graph));
-  this->TimesVectLayout->addWidget(this->TimesVectWidget);
-}
-
-//-----------------------------------------------------------------------------
-void pqMEDReaderTimesFlagsWidget::UpdateTimeSteps()
-{
-  // Recover property
-  vtkSMStringVectorProperty* prop = this->proxy()?
-    vtkSMStringVectorProperty::SafeDownCast(this->proxy()->GetProperty("FieldsStatus")) : NULL;
-  vtkIdType tsId = -1;
-  if (prop)
-    {
-    // Searching first activated leaf id
-    for (unsigned int i = 1; i < prop->GetNumberOfElements(); i += 2)
-      {
-      if (prop->GetElement(i)[0] == '1')
-        {
-        const char* leafString = prop->GetElement(i - 1);
-        const char* tmp = strchr(leafString, '/');
-        if (tmp)
-        {
-          size_t num = tmp - leafString;
-          char* dest = new char[num+1];
-          strncpy(dest, leafString, num);
-          dest[num] = '\0';
-          tsId = (vtkIdType)strtol(dest + 2, NULL, 10);
-          delete [] dest;
-        }
-        break;
-        }
-      }
-    }
-
-  if (tsId != -1 && tsId != this->CachedTsId)
-    {
-    // Recovering graph
-    this->CachedTsId = tsId;
-    vtkPVMetaDataInformation *info(vtkPVMetaDataInformation::New());
-    this->proxy()->GatherInformation(info);
-    vtkGraph* g = vtkGraph::SafeDownCast(info->GetInformationData());
-
-    // Updating times steps using leaf id
-    QStringList dts, its, tts;
-    if(g)
-      pqMedReaderGraphUtils::getCurrentTS(g, tsId, dts, its, tts);
-    if(this->TimesVectWidget)
-      this->TimesVectWidget->setItems(dts, its, tts);
-    }
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimesFlagsWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderTimesFlagsWidget.h
deleted file mode 100644 (file)
index 41b0ffc..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __pqMEDReaderTimesFlagsWidget_h
-#define __pqMEDReaderTimesFlagsWidget_h
-
-#include "pqPropertyWidget.h"
-
-class VectBoolWidget;
-class QGridLayout;
-
-class pqMEDReaderTimesFlagsWidget : public pqPropertyWidget
-{
-  
-  typedef pqPropertyWidget Superclass;
-  Q_OBJECT
-  // Description
-  // Property Qt used to set/get the times steps with the property link
-  Q_PROPERTY(QList< QList< QVariant> > timeSteps READ getTimeSteps WRITE setTimeSteps)
-  // Description
-  // Property Qt used to set the gorup time steps  domain with the property link
-  Q_PROPERTY(QList< QList< QVariant> > timeStepsDomain READ getTimeSteps WRITE setTimeStepsDomain)
-public:
-  pqMEDReaderTimesFlagsWidget(
-    vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject = 0);
-  virtual ~pqMEDReaderTimesFlagsWidget();
-
-signals:
-  // Description
-  // Signal emited when selected field changed
-  void timeStepsChanged() const;
-
-protected slots:
-  // Description
-  // Slot called when item is changed
-  virtual void onItemChanged() const;
-
-protected slots:
-  // Description
-  // bidrectionnal property link setter/getter
-  virtual QList< QList< QVariant> > getTimeSteps() const;
-  virtual void setTimeSteps(QList< QList< QVariant> > timeSteps);
-
-  // Description
-  // Update the domain, eg: reload
-  virtual void setTimeStepsDomain(QList< QList< QVariant> > timeSteps);
-
-
-  // Description
-  // Called when field status changed and reload the time steps
-  void UpdateTimeSteps();
-
-  // Description
-  // Called to create the vect widget, on creation or for a reload
-  void CreateTimesVectWidget();
-
-protected:
-  // Description
-  // The Vect time widget
-  VectBoolWidget* TimesVectWidget;
-
-  // Description
-  // The grid layout contian the vect times widget
-  QGridLayout* TimesVectLayout;
-
-  // Description
-  // Id of current time step, for caching purpose
-  vtkIdType CachedTsId;
-
-private:
-  Q_DISABLE_COPY(pqMEDReaderTimesFlagsWidget)
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderVectorsWidget.cxx b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderVectorsWidget.cxx
deleted file mode 100644 (file)
index 1783596..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#include "pqMEDReaderVectorsWidget.h"
-#include "ui_MEDReaderVectorsWidget.h"
-
-//-----------------------------------------------------------------------------
-// Internals
-class pqMEDReaderVectorsWidget::pqInternals : public Ui::MEDReaderVectorsWidget
-{
-public:
-  pqInternals(pqMEDReaderVectorsWidget* self)
-    {
-    this->setupUi(self);
-    }
-};
-
-//-----------------------------------------------------------------------------
-pqMEDReaderVectorsWidget::pqMEDReaderVectorsWidget(
-  vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject)
-: Superclass(smproxy, parentObject), Internals(new pqMEDReaderVectorsWidget::pqInternals(this))
-{
-  this->setShowLabel(false);
-  this->addPropertyLink(this->Internals->GenerateVects, "checked" ,
-                        SIGNAL(toggled(bool)), smproperty);
-}
-
-//-----------------------------------------------------------------------------
-pqMEDReaderVectorsWidget::~pqMEDReaderVectorsWidget()
-{
-}
diff --git a/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderVectorsWidget.h b/src/Plugins/MEDReader/plugin/ParaViewPlugin/pqMEDReaderVectorsWidget.h
deleted file mode 100644 (file)
index 280c8b7..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright (C) 2010-2024  CEA, EDF
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-// Author : Anthony Geay
-
-#ifndef __pqMEDReaderVectorsWidget_h
-#define __pqMEDReaderVectorsWidget_h
-
-#include "pqPropertyWidget.h"
-
-class pqMEDReaderVectorsWidget : public pqPropertyWidget
-{
-  Q_OBJECT
-  typedef pqPropertyWidget Superclass;
-public:
-  pqMEDReaderVectorsWidget(
-    vtkSMProxy *smproxy, vtkSMProperty *smproperty, QWidget *parentObject = 0);
-  virtual ~pqMEDReaderVectorsWidget();
-
-private:
-  Q_DISABLE_COPY(pqMEDReaderVectorsWidget)
-
-  class pqInternals;
-  pqInternals* Internals;
-};
-
-#endif
diff --git a/src/Plugins/MEDReader/plugin/TODO.txt b/src/Plugins/MEDReader/plugin/TODO.txt
deleted file mode 100644 (file)
index 7c59855..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-TODO :
-------
-
-
-
-3 - propagate the update of filters connected directly or not (typically ExtractGroup) to the MEDReader when the groups have been updated.
-UC : ForMEDReader16.med, then extractgroup, then return to MEDReader properties and select zeField3_1 & zeField4_1 -> ExtractGroup filter is out of date and "Apply" button not green.
-
-
-Known bug :
------------
-
-
-Warning for users :
--------------------
-
-Try to avoid to change the localization along time on a same field
-because it leads to an unfriendly behavior when playing. (bug seen in EDF2420 in ssnp121.rmed when applying GaussPoint filter and running different time steps.
-
-
-TODO in MED:
-------------
-
-- Manage degenerated cases.
-
-DONE
-----
-
-0- Sur le time quand tout a echouer prendre le plus grand < (07/01/2014)
-
-1 - Load ForMEDReader8.med, Load ForMEDReader17.med
--> throw because of missynchronization of time. -> Alejandro (07/01/2014)
-
-1 - ELNO to be added only once not for each GAUSS_NE -> To test a file having > 1 field with GAUSS_NE
-
-1 - Keep tracks of built support to accelerate rendering in MEDFileFieldRepresentation. 
-
-2 - in branch EDF1 : adm_local_without_kernel to put in install of MED_SRC
-when in STANDALONE mode.
-
-0 - test22 doit etre sur les seg2 et tri3
-
-1 - When Reload Applied it is possible with gui to unselect all !
-
-0 - protect ExtractGroup against throw
-
-0 - protect ExctractCellType against throw
-
-0 - Extract cell type + Extract Group
-
-0 - bug client side when the field having the max number of TS is not first.
-
-0 - ELGA arrays choice of GaussPoints filter
-
-0 - Manage file containing only cartesian meshes.
-
-0 - Bug on vtkExtractGroup when attempting to extract on empty group. Previously, it led to SIGSEGV.
-
-0 - Add the frequency information in mode mode in the name of arrays in DataSet.
-
-0 - Addition of MeshName property in ExtractGroup (see testMEDReader9.py)
-
-0 - Bug when fields contains @
-
-1 - Bug on reload the first leaf is not systematically activated.
\ No newline at end of file
diff --git a/src/Plugins/MEDReader/plugin/Test/CMakeLists.txt b/src/Plugins/MEDReader/plugin/Test/CMakeLists.txt
deleted file mode 100644 (file)
index 47e4092..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright (C) 2010-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-if (CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
-  
-  ###########################
-  # Tests for standalone mode
-  ###########################
-
-  if (PARAVIEW_ENABLE_PYTHON)
-    file(GLOB pythonTests *.py)
-    list(FILTER pythonTests EXCLUDE REGEX ".*MEDReaderHelper.py$")
-    list(FILTER pythonTests EXCLUDE REGEX ".*medreadertestlauncher.py$")
-    foreach(testFullPath ${pythonTests})
-      get_filename_component(testFile ${testFullPath} NAME)
-      paraview_add_test_python(NO_RT DIRECT_DATA ${testFile})
-      get_filename_component(testName ${testFile} NAME_WE)
-      set_tests_properties(Python-${testName} PROPERTIES ENVIRONMENT "PARAVIEW_DATA_ROOT=${CMAKE_CURRENT_SOURCE_DIR}/Data;LD_LIBRARY_PATH=${QT5_ROOT_DIR}/lib/:${MEDCOUPLING_ROOT_DIR}/lib/:${MEDFILE_ROOT_DIR}/lib/:${HDF5_ROOT_DIR}/lib:${PYTHON_ROOT_DIR}/lib;PYTHONPATH=${MEDCOUPLING_ROOT_DIR}/lib/python3.6/site-packages/;PV_PLUGIN_PATH=${CMAKE_BINARY_DIR}/lib/paraview-5.7/plugins/MEDReader;PARAVIEW_BIN_DIR=${ParaView_DIR}/bin/")
-    endforeach()
-  endif()
-
-  if(PARAVIEW_USE_QT)
-    file(GLOB xmlTests *.xml)
-    foreach(testFullPath ${xmlTests})
-      get_filename_component(testFile ${testFullPath} NAME)
-      get_filename_component(testName ${testFile} NAME_WE)
-      set (${testName}_USES_DIRECT_DATA ON)
-      paraview_add_client_tests(
-        LOAD_PLUGIN MEDReader
-        PLUGIN_PATH $<TARGET_FILE_DIR:MEDReader>
-        BASELINE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Data/Baseline
-        TEST_SCRIPTS ${testFile})
-        set_tests_properties(pv.${testName} PROPERTIES ENVIRONMENT "PARAVIEW_DATA_ROOT=${CMAKE_CURRENT_SOURCE_DIR}/Data;LD_LIBRARY_PATH=${QT5_ROOT_DIR}/lib/:${MEDCOUPLING_ROOT_DIR}/lib/:${MEDFILE_ROOT_DIR}/lib/:${HDF5_ROOT_DIR}/lib:${PYTHON_ROOT_DIR}/lib")
-    endforeach()
-  endif()
-
-else()
-
-  ########################
-  # Tests for PARAVIS mode
-  ########################
-
-  include(tests.set)
-
-  salome_generate_tests_environment(tests_env)
-  list(APPEND tests_env "PARAVIEW_DATA_ROOT=${CMAKE_CURRENT_SOURCE_DIR}/Data")
-
-  set(_helper_script ${CMAKE_CURRENT_SOURCE_DIR}/medreadertestlauncher.py)
-  set(_baseline_dir ${CMAKE_CURRENT_SOURCE_DIR}/Data/Baseline)
-  IF(SALOME_PARAVIS_NO_VISU_TESTS)
-    SET(_other_options "-D")
-  ENDIF()
-
-  foreach(tfile ${TEST_NUMBERS})
-    add_test(Python-testMEDReader${tfile}
-             ${PYTHON_EXECUTABLE}
-             ${CMAKE_CURRENT_SOURCE_DIR}/testMEDReader${tfile}.py
-             -B ${_baseline_dir} ${_other_options})
-    set_tests_properties(Python-testMEDReader${tfile} PROPERTIES ENVIRONMENT "${tests_env}")
-  endforeach()
-
-  # Application tests
-  set(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test/MEDReader)
-  foreach(tfile ${TEST_NUMBERS})
-    install(FILES testMEDReader${tfile}.py
-            DESTINATION ${TEST_INSTALL_DIRECTORY})
-  endforeach()
-  
-  install(FILES MEDReaderHelper.py tests.set
-          DESTINATION ${TEST_INSTALL_DIRECTORY})
-  install(FILES CTestTestfileInstall.cmake
-          DESTINATION ${TEST_INSTALL_DIRECTORY}
-          RENAME CTestTestfile.cmake)
-  install(DIRECTORY Data/Baseline DESTINATION ${TEST_INSTALL_DIRECTORY})
-
-endif()
diff --git a/src/Plugins/MEDReader/plugin/Test/CTestTestfileInstall.cmake b/src/Plugins/MEDReader/plugin/Test/CTestTestfileInstall.cmake
deleted file mode 100644 (file)
index 2629dfd..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (C) 2015-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-INCLUDE(tests.set)
-
-SET(COMPONENT_NAME MEDREADER)
-SET(TIMEOUT        60)
-
-set(BASELINE_DIR "Baseline")
-
-FOREACH(tfile ${TEST_NUMBERS_WITHOUTRENDERING})
-  SET(TEST_NAME MEDREADER_${tfile})
-  ADD_TEST(${TEST_NAME} python testMEDReader${tfile}.py -B ${BASELINE_DIR})
-  SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES LABELS "${COMPONENT_NAME}" TIMEOUT ${TIMEOUT})
-ENDFOREACH()
-
-SET(COMPONENT_NAME MDREADER)
-
-FOREACH(tfile ${TEST_NUMBERS_WITHRENDERING})
-  SET(TEST_NAME MEDREADER_${tfile})
-  ADD_TEST(${TEST_NAME} python testMEDReader${tfile}.py -B ${BASELINE_DIR})
-  SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES LABELS "${COMPONENT_NAME};REQUIRE_X_SERVER" TIMEOUT ${TIMEOUT})
-ENDFOREACH()
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Barreau_Elga_V11.rmed b/src/Plugins/MEDReader/plugin/Test/Data/Barreau_Elga_V11.rmed
deleted file mode 100755 (executable)
index 3bc8649..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Barreau_Elga_V11.rmed and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestDataAnalysis.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestDataAnalysis.png
deleted file mode 100644 (file)
index bcc29ee..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestDataAnalysis.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractCell.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractCell.png
deleted file mode 100644 (file)
index 3819c62..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractCell.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractGroup.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractGroup.png
deleted file mode 100644 (file)
index 6fefac4..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestExtractGroup.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGUIPerf.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGUIPerf.png
deleted file mode 100644 (file)
index 8531a9d..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGUIPerf.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGaussPoints.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGaussPoints.png
deleted file mode 100644 (file)
index f8c12eb..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestGaussPoints.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestMultiMesh.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestMultiMesh.png
deleted file mode 100644 (file)
index c8202d1..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestMultiMesh.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestPythonTrace.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestPythonTrace.png
deleted file mode 100644 (file)
index 3eebe44..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestPythonTrace.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestScalarBar.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestScalarBar.png
deleted file mode 100644 (file)
index 7307b7c..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestScalarBar.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWarpColorBar.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWarpColorBar.png
deleted file mode 100644 (file)
index 2a969e5..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWarpColorBar.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisation.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisation.png
deleted file mode 100644 (file)
index dab8132..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisation.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisationBiDir.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisationBiDir.png
deleted file mode 100644 (file)
index 6250869..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/TestWidgetsPropertySynchronisationBiDir.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader0.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader0.png
deleted file mode 100644 (file)
index 86ef73d..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader0.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader10.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader10.png
deleted file mode 100644 (file)
index 4f0907d..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader10.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader13.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader13.png
deleted file mode 100644 (file)
index ea4ebe9..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader13.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader14.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader14.png
deleted file mode 100644 (file)
index dea5f2d..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader14.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader15.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader15.png
deleted file mode 100644 (file)
index 4af9e7e..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader15.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader19.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader19.png
deleted file mode 100644 (file)
index f05519f..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader19.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader2.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader2.png
deleted file mode 100644 (file)
index 3489d12..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader2.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader20.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader20.png
deleted file mode 100644 (file)
index 71cbf86..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader20.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader21.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader21.png
deleted file mode 100644 (file)
index 6421dbc..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader21.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader3.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader3.png
deleted file mode 100644 (file)
index 8b6031d..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader3.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader4.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader4.png
deleted file mode 100644 (file)
index 17c6a9b..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader4.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader5.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader5.png
deleted file mode 100644 (file)
index 5b3d99b..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader5.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader6.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader6.png
deleted file mode 100644 (file)
index 64b8247..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader6.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader7.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader7.png
deleted file mode 100644 (file)
index a6df19e..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader7.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader8.png b/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader8.png
deleted file mode 100644 (file)
index ebbd4f7..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/Baseline/testMEDReader8.png and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/L15_R2_Temp.med b/src/Plugins/MEDReader/plugin/Test/Data/L15_R2_Temp.med
deleted file mode 100644 (file)
index 8777711..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/L15_R2_Temp.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/MultiTS.med b/src/Plugins/MEDReader/plugin/Test/Data/MultiTS.med
deleted file mode 100644 (file)
index 96eba16..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/MultiTS.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/barreau2.med b/src/Plugins/MEDReader/plugin/Test/Data/barreau2.med
deleted file mode 100644 (file)
index e6aa000..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/barreau2.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/japonlight.med b/src/Plugins/MEDReader/plugin/Test/Data/japonlight.med
deleted file mode 100644 (file)
index 6964a1a..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/japonlight.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/rosette_am.med b/src/Plugins/MEDReader/plugin/Test/Data/rosette_am.med
deleted file mode 100644 (file)
index 55141dd..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/rosette_am.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/testGUIPerf.med b/src/Plugins/MEDReader/plugin/Test/Data/testGUIPerf.med
deleted file mode 100644 (file)
index e2b2bf5..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/testGUIPerf.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/Data/testWidgetSync.med b/src/Plugins/MEDReader/plugin/Test/Data/testWidgetSync.med
deleted file mode 100644 (file)
index 5260d26..0000000
Binary files a/src/Plugins/MEDReader/plugin/Test/Data/testWidgetSync.med and /dev/null differ
diff --git a/src/Plugins/MEDReader/plugin/Test/MEDReaderHelper.py b/src/Plugins/MEDReader/plugin/Test/MEDReaderHelper.py
deleted file mode 100644 (file)
index 699e987..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2019-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-def WriteInTmpDir(func):
-    def decoratedFunc(*args,**kwargs):
-        import tempfile,os
-        ret = None
-        with tempfile.TemporaryDirectory() as tmpdirname:
-            os.chdir(tmpdirname)
-            ret = func(*args,**kwargs)
-            pass
-        return ret
-    return decoratedFunc
-
-def RetriveBaseLine(imgFile):
-    import os,sys
-    try:
-        baselineIndex = sys.argv.index('-B')+1
-        baselinePath = sys.argv[baselineIndex]
-    except:
-        print("Could not get baseline directory. Test failed.")
-        exit(1)
-    baseline_file = os.path.join(baselinePath, imgFile)
-    return os.path.abspath(baseline_file)
-
diff --git a/src/Plugins/MEDReader/plugin/Test/TestDataAnalysis.py b/src/Plugins/MEDReader/plugin/Test/TestDataAnalysis.py
deleted file mode 100644 (file)
index 6ea52cc..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-# -*- coding: iso-8859-1 -*-
-# Script de visualisation rosette et contrainte normale/tangeantielle
-
-# Donnees utilisateur
-#
-# MEDFILE : Fichier de resultat MED
-# MAILLAGE : Nom du maillage
-# GROUPE_FACE : Liste  groupes de face de post-traitement
-# COEFF_T1T2 : facteur scale rosette
-# COEFF_TN : facteur scale normale/cisaillement
-#
-# T1 : Nom du champ SIRO_ELEM_T1
-# T2 : Nom du champ SIRO_ELEM_T2
-# T  : Nom du champ SIRO_ELEM_SIGT
-# N  : Nom du champ SIRO_ELEM_SIGN
-#
-# ROSETTE : True/False
-
-from paraview.simple import *
-
-import os
-dataRoot = os.getenv('PARAVIEW_DATA_ROOT', "")
-MEDFILE = dataRoot+'/rosette_am.med'
-MAILLAGE='mail'
-GROUPE_FACE = ['SURF_AM',]
-COEFF_T1T2 = 0.00003
-COEFF_TN = 0.003
-
-T='RESUNL__SIRO_ELEM_TANGENT_Vector'
-N='RESUNL__SIRO_ELEM_NORMAL_Vector'
-T1 = 'RESUNL__SIRO_ELEM_T1_Vector'
-T2 = 'RESUNL__SIRO_ELEM_T2_Vector'
-
-ROSETTE = True
-
-# Fin données utilisateurs
-
-
-
-#%==================== Importing MED file====================%
-
-print ("**** Importing MED file")
-
-myResult0 = MEDReader(FileNames=[MEDFILE])
-if myResult0 is None : raise "Erreur de fichier MED"
-
-# Imposition VectorsProperty à faire
-myResult0.VectorsProperty=1
-
-NB_ORDRE = myResult0.GetPropertyValue('TimestepValues')
-
-#extraction groupes et visualisation du maillage
-listeg=[]
-for g in GROUPE_FACE :
-    listeg.append('GRP_'+g)
-
-myResult = ExtractGroup()
-myResult.AllGroups=listeg
-#myResult.Groups = listeg
-
-
-CellCenters1 = CellCenters()
-if len(NB_ORDRE) > 1 :
-    animation = GetAnimationScene()
-    #animation.AnimationTime = NB_ORDRE[2]
-view2 = GetRenderView()
-
-
-#%====================Displaying rosette====================%
-
-if ROSETTE : 
-     CMAX = 0.0
-     T_MAX = 0.0
-     print ("****  Displaying rosette")
-
-     view2.Background=[1.0,1.0,1.0]
-     SetActiveSource(myResult)
-     Display0 = Show()
-     Display0.Texture=[]
-     Display0.Representation = 'Wireframe'
-     Display0.AmbientColor=[0.0,0.0,0.0]
-     SetActiveSource(CellCenters1)
-     Glyph1 = Glyph()
-     Glyph1.OrientationArray = ['POINTS', T1]
-     Glyph1.GlyphType ='Line'
-     Glyph1.GlyphMode = 'All Points'
-
-     pd1 = Glyph1.PointData
-
-     for i in range(len(pd1)):
-           if pd1.values()[i-1].GetName()== T1 :
-                    NUM = i-1
-                    NB_CMP = pd1.values()[i-1].GetNumberOfComponents()
-                    NOM_CMP = pd1.values()[i-1].GetComponentName(NB_CMP)
-                    RANGE_CMP = pd1.values()[i-1].GetRange(NB_CMP-1)
-                    MAX_CMP = max(abs(RANGE_CMP[0]),abs(RANGE_CMP[1]))
-                    if RANGE_CMP[0] < 0.0 :
-                         C_MAX = -RANGE_CMP[0]
-                    else :
-                         C_MAX = 0.
-                    if RANGE_CMP[1] > 0.0 :
-                         T_MAX = RANGE_CMP[1]
-                    else :
-                         T_MAX = 0.
-     Render()
-
-     Glyph1.ScaleArray = ['POINTS', T1]
-     Glyph1.VectorScaleMode = 'Scale by Magnitude'
-     Glyph1.ScaleFactor = COEFF_T1T2
-
-     Display1=Show()
-
-     PVLookupTable1 = GetLookupTableForArray( T1, NB_CMP, VectorMode = 'Component',VectorComponent=NB_CMP-1, NumberOfTableValues=2, RGBPoints=[-MAX_CMP, 0.0, 0.0, 1.0, MAX_CMP, 1.0, 0.0, 0.0], AutomaticRescaleRangeMode=-1, ScalarRangeInitialized = 1.0)
-     
-     scalarbar1 = CreateScalarBar(Title =T1, ComponentTitle = NOM_CMP, LookupTable=PVLookupTable1, TitleFontSize=12 , LabelFontSize=12, TitleColor=[0.0,0.0,0.0],LabelColor=[0.0,0.0,0.0])
-
-     view2.Representations.append(scalarbar1)
-     Display1.ColorArrayName = T1
-     Display1.LookupTable = PVLookupTable1
-     Display1.Representation = 'Surface'
-
-     SetActiveSource(CellCenters1)
-     Glyph2 = Glyph()
-     Glyph2.OrientationArray = ['POINTS', T2]
-     Glyph2.GlyphType ='Line'
-     Glyph2.ScaleArray = ['POINTS', T2]
-     Glyph2.VectorScaleMode = 'Scale by Magnitude'
-     Glyph2.ScaleFactor = COEFF_T1T2
-
-     Glyph2.GlyphMode = 'All Points'
-
-     pd2 = Glyph2.PointData
-
-     for i in range(len(pd2)):
-            if pd2.values()[i-1].GetName()== T2 :
-                    NB_CMP = pd2.values()[i-1].GetNumberOfComponents()
-                    NOM_CMP = pd2.values()[i-1].GetComponentName(NB_CMP-1)
-                    RANGE_CMP = pd2.values()[i-1].GetRange(NB_CMP-1)
-                    MAX_CMP = max(abs(RANGE_CMP[0]),abs(RANGE_CMP[1]))
-                    if RANGE_CMP[0] < 0.0 :
-                         C_MAX = max(C_MAX,-RANGE_CMP[0])
-                    if RANGE_CMP[1] > 0.0 : 
-                         T_MAX = max(T_MAX,RANGE_CMP[1])
-
-     Display2=Show()
-
-     PVLookupTable2 = GetLookupTableForArray( T2, NB_CMP, VectorMode = 'Component',VectorComponent=NB_CMP-1, NumberOfTableValues=2, RGBPoints=[-MAX_CMP, 0.0, 0.0, 1.0, MAX_CMP, 1.0, 0.0, 0.0], AutomaticRescaleRangeMode=-1)
-     scalarbar2 = CreateScalarBar(Title =T2, ComponentTitle = NOM_CMP, LookupTable=PVLookupTable2, TitleFontSize=12 , LabelFontSize=12,TitleColor=[0.0,0.0,0.0],LabelColor=[0.0,0.0,0.0])
-     #view2.Representations.append(scalarbar2)
-     Display2.ColorArrayName = T2
-     Display2.LookupTable = PVLookupTable2
-     Display2.Representation = 'Surface'
-
-     Text2 = Text()
-     Texte = 'COMPRESSION MAX = '+str(C_MAX)+' MPa \nTRACTION MAX = '+str(T_MAX)+' Mpa'
-     Text2.Text = Texte
-     DisplayT = Show()
-     DisplayT.FontSize = 12
-     DisplayT.Color=[0.0, 0.0, 0.0]
-
-     Render()
-     view2.CameraPosition = [-524.450475200065, -34.2470779418945, 572.968383789062]
-     view2.CameraFocalPoint = [9.7492516040802, -34.2470779418945, 572.968383789062]
-     view2.CameraViewUp = [0.0, 0.0, 1.0]
-     ResetCamera()
-
-     import sys
-     try:
-       baselineIndex = sys.argv.index('-B')+1
-       baselinePath = sys.argv[baselineIndex]
-     except:
-       print ("Could not get baseline directory. Test failed.")
-     baseline_file = os.path.join(baselinePath, "TestDataAnalysis.png")
-     from paraview.vtk.test import Testing
-     from paraview.vtk.util.misc import vtkGetTempDir
-     Testing.VTK_TEMP_DIR = vtkGetTempDir()
-     Testing.compareImage(view2.GetRenderWindow(), baseline_file, threshold=10)
-     Testing.interact()
diff --git a/src/Plugins/MEDReader/plugin/Test/TestExtractCell.xml b/src/Plugins/MEDReader/plugin/Test/TestExtractCell.xml
deleted file mode 100644 (file)
index 1957b42..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menu_File" command="activate" arguments="actionFileOpen" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/barreau2.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mousePress" arguments="(0.31045,0.412596,1,1,0)" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mouseMove" arguments="(0.172387,0.475578,1,0,0)" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mouseRelease" arguments="(0.172387,0.475578,1,0,0)" />
-  <pqevent object="pqClientMainWindow/menubar" command="activate" arguments="menuFilters" />
-  <pqevent object="pqClientMainWindow/menubar/menuFilters/Alphabetical" command="activate" arguments="ExtractCellType" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GeoTypesStatus/ArraySelectionWidget" command="setCheckState" arguments="1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/representationToolbar/displayRepresentation/comboBox" command="set_string" arguments="Surface With Edges" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="RESU____DEPL____________________" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestExtractGroup.xml b/src/Plugins/MEDReader/plugin/Test/TestExtractGroup.xml
deleted file mode 100644 (file)
index 2c8cfe6..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menu_File" command="activate" arguments="actionFileOpen" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/L15_R2_Temp.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/menubar/menuFilters/Alphabetical" command="activate" arguments="ExtractGroup" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.2.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/cameraToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="&amp;RESUR1_TEMP____________________" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestGUIPerf.xml b/src/Plugins/MEDReader/plugin/Test/TestGUIPerf.xml
deleted file mode 100644 (file)
index cb87885..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/MainControlsToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/testGUIPerf.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/menubar" command="activate" arguments="menuFilters" />
-  <pqevent object="pqClientMainWindow/menubar/menuFilters/Alphabetical" command="activate" arguments="ExtractGroup" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCurrent" arguments="0.0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/GroupsFlagsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.1.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="mesh" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-  <pqevent object="pqClientMainWindow/cameraToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/cameraToolbar/1QToolButton0" command="activate" arguments="" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestGaussPoints.xml b/src/Plugins/MEDReader/plugin/Test/TestGaussPoints.xml
deleted file mode 100644 (file)
index aeff14b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menu_File" command="activate" arguments="actionFileOpen" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/Barreau_Elga_V11.rmed" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mousePress" arguments="(0.226812,0.262745,1,1,0)" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mouseMove" arguments="(0.116667,0.326797,1,0,0)" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mouseRelease" arguments="(0.116667,0.326797,1,0,0)" />
-  <pqevent object="pqClientMainWindow/menubar/menuFilters/Mechanics" command="activate" arguments="GaussPoints" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/representationToolbar/displayRepresentation/comboBox" command="activated" arguments="Point Gaussian" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="activated" arguments="RESU____EPSI_ELGA" />
-  <pqevent object="pqClientMainWindow/pipelineBrowserDock/pipelineBrowser" command="mousePress" arguments="1,1,0,13,8,/0:0/0:1" />
-  <pqevent object="pqClientMainWindow/pipelineBrowserDock/pipelineBrowser" command="mouseRelease" arguments="1,0,0,13,8,/0:0/0:1" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/DisplayFrame/ProxyPanel/Opacity/DoubleRangeWidget/Slider" command="set_int" arguments="25" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestMultiMesh.xml b/src/Plugins/MEDReader/plugin/Test/TestMultiMesh.xml
deleted file mode 100644 (file)
index 6d4b985..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menu_File" command="activate" arguments="actionFileOpen" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/MultiTS.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="1.0.0.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="1.0.1.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="2.0.0.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="1.0.1.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/cameraToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/menubar" command="activate" arguments="menuTools" />
-  <pqevent object="pqClientMainWindow/menubar/menuTools" command="activate" arguments="actionTesting_Window_Size" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestPythonTrace.xml b/src/Plugins/MEDReader/plugin/Test/TestPythonTrace.xml
deleted file mode 100644 (file)
index e6e33c5..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menuTools" command="activate" arguments="actionToolsStartStopTrace" />
-  <pqevent object="TraceOptionsDialog/widget/OKButton" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/MainControlsToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/testWidgetSync.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.1.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.1.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.0.0,2" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="ACellField" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Components" command="set_string" arguments="bbb" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-  <pqevent object="pqClientMainWindow/menubar/menuTools" command="activate" arguments="actionToolsStartStopTrace" />
-  <pqevent object="pqClientMainWindow/1pqPythonScriptEditor0/PythonScriptEditorMenuBar/File" command="activate" arguments="Save &amp;As..." />
-  <pqevent object="pqClientMainWindow/1pqPythonScriptEditor0/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_TEST_ROOT/dummy.py" />
-  <pqevent object="pqClientMainWindow/1pqPythonScriptEditor0/PythonScriptEditorMenuBar/File" command="activate" arguments="C&amp;lose" />
-  <pqevent object="pqClientMainWindow/menubar/menu_Edit" command="activate" arguments="actionDelete_All" />
-  <pqevent object="pqClientMainWindow/menubar/menu_View" command="activate" arguments="Python Shell" />
-  <pqevent object="pqClientMainWindow/pythonShellDock/pythonShell/runScriptButton" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/pythonShellDock/pythonShell/PythonShellRunScriptDialog" command="filesSelected" arguments="$PARAVIEW_TEST_ROOT/dummy.py" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestScalarBar.xml b/src/Plugins/MEDReader/plugin/Test/TestScalarBar.xml
deleted file mode 100644 (file)
index e4e3f26..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menu_File" command="activate" arguments="actionFileOpen" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/Barreau_Elga_V11.rmed" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.0.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.1.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.2.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.3.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.5.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/FieldsStatus/1pqTreeWidget0" command="setCheckState" arguments="0.0.0.0.0.0.6.0,0" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mousePress" arguments="(0.364607,0.415167,1,1,0)" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mouseMove" arguments="(0.237223,0.448586,1,0,0)" />
-  <pqevent object="pqClientMainWindow/centralwidget/MultiViewWidget/CoreWidget/qt_tabwidget_stackedwidget/MultiViewWidget1/Container/Frame.0/CentralWidgetFrame/Viewport" command="mouseRelease" arguments="(0.237223,0.448586,1,0,0)" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="RESU____DEPL" />
-  <pqevent object="pqClientMainWindow/variableToolbar/1QToolButton1" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/colorMapEditorDock/colorMapEditorPanel/EditScalarBar" command="activate" arguments="" />
-  <pqevent object="ColorLegendEditor" command="key" arguments="16777248" />
-  <pqevent object="ColorLegendEditor/scrollArea/qt_scrollarea_viewport/Container/ProxyWidget/Title/Title" command="set_string" arguments="DEPLACEMENT" />
-  <pqevent object="ColorLegendEditor/scrollArea/qt_scrollarea_viewport/Container/ProxyWidget/Title/Title" command="key" arguments="16777248" />
-  <pqevent object="ColorLegendEditor/scrollArea/qt_scrollarea_viewport/Container/ProxyWidget/FontEditor/FontSize" command="set_int" arguments="8" />
-  <pqevent object="ColorLegendEditor/scrollArea/qt_scrollarea_viewport/Container/ProxyWidget/FontEditor/FontSize" command="set_int" arguments="9" />
-  <pqevent object="ColorLegendEditor/scrollArea/qt_scrollarea_viewport/Container/ProxyWidget/FontEditor/Bold" command="set_boolean" arguments="true" />
-  <pqevent object="ColorLegendEditor/widget/ApplyButton" command="activate" arguments="" />
-  <pqevent object="ColorLegendEditor/widget/OKButton" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/colorMapEditorDock/colorMapEditorPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/Properties/ColorOpacityEditor/ChoosePreset" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/gradients" command="setCurrent" arguments="7.0" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/gradients" command="activate" arguments="7.0" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/apply" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/close" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/colorMapEditorDock/qt_dockwidget_closebutton" command="activate" arguments="" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestWarpColorBar.xml b/src/Plugins/MEDReader/plugin/Test/TestWarpColorBar.xml
deleted file mode 100644 (file)
index e7faac6..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/menubar/menu_File" command="activate" arguments="actionFileOpen" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/japonlight.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/VectorsProperty/groupBoxVectors/GenerateVects" command="set_boolean" arguments="true" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/Common/1QToolButton8" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/ScaleFactor/DoubleRangeWidget/DoubleLineEdit" command="set_string" arguments="1" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="RESU____DEPL_Vector" />
-  <pqevent object="pqClientMainWindow/variableToolbar/1QToolButton1" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/colorMapEditorDock/colorMapEditorPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/Properties/ColorOpacityEditor/ChoosePreset" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/gradients" command="setCurrent" arguments="7.0" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/gradients" command="activate" arguments="7.0" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/apply" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/pqPresetDialog/close" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/colorMapEditorDock/qt_dockwidget_closebutton" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionRescaleCustomRange" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/pqRescaleRangeDialog/MaximumScalar" command="set_string" arguments="260" />
-  <pqevent object="pqClientMainWindow/pqRescaleRangeDialog/RescaleOnlyButton" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/VCRToolbar/1QToolButton2" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/cameraToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestWidgetsPropertySynchronisation.xml b/src/Plugins/MEDReader/plugin/Test/TestWidgetsPropertySynchronisation.xml
deleted file mode 100644 (file)
index 71766d7..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/MainControlsToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/testWidgetSync.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/VectorsProperty/groupBoxVectors/GenerateVects" command="set_boolean" arguments="true" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="ACellField_Vector" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/TestWidgetsPropertySynchronisationBiDir.xml b/src/Plugins/MEDReader/plugin/Test/TestWidgetsPropertySynchronisationBiDir.xml
deleted file mode 100644 (file)
index 7b5a5cc..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" ?>
-<pqevents>
-  <pqevent object="pqClientMainWindow/MainControlsToolbar/1QToolButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/FileOpenDialog" command="filesSelected" arguments="$PARAVIEW_DATA_ROOT/testWidgetSync.med" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/VectorsProperty/groupBoxVectors/GenerateVects" command="set_boolean" arguments="true" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/Accept" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/displayColor/Variables" command="set_string" arguments="ACellField_Vector" />
-  <pqevent object="pqClientMainWindow/propertiesDock/propertiesPanel/scrollArea/qt_scrollarea_viewport/scrollAreaWidgetContents/PropertiesFrame/ProxyPanel/Reload/1QPushButton0" command="activate" arguments="" />
-  <pqevent object="pqClientMainWindow/variableToolbar/actionScalarBarVisibility" command="set_boolean" arguments="false" />
-</pqevents>
diff --git a/src/Plugins/MEDReader/plugin/Test/checkParaview.py b/src/Plugins/MEDReader/plugin/Test/checkParaview.py
deleted file mode 100644 (file)
index 4457d45..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-import os
-import os.path
-paraviewBinDir = os.getenv('PARAVIEW_BIN_DIR', "")
-paraviewFile = paraviewBinDir + "/paraview"
-pvserverFile = paraviewBinDir + "/pvserver"
-assert(os.access(paraviewFile, os.X_OK))
-assert(os.access(pvserverFile, os.X_OK))
diff --git a/src/Plugins/MEDReader/plugin/Test/medreadertestlauncher.py b/src/Plugins/MEDReader/plugin/Test/medreadertestlauncher.py
deleted file mode 100644 (file)
index eeb88b9..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-import subprocess as sp
-import re,sys
-
-def LaunchMEDReaderTest(fn,baseLineDir):
-    """
-    Tuleap 18933 : wrapper over MEDReader tests. Waiting for better solution.
-    """
-    p = sp.Popen(["python3",fn,"-B",baseLineDir],stdout=sp.PIPE,stderr=sp.PIPE)
-    a,b = p.communicate()
-    if p.returncode == 0:
-        return
-
-    stringToAnalyze = a.decode("utf-8")
-    linesOfStringToAnalyze = stringToAnalyze.split('\n')
-    pat = re.compile("<DartMeasurement name=\"ImageError\" type=\"numeric/double\">[\s+]([\S]+)[\s]*</DartMeasurement>")
-    zeLine = [elt for elt in linesOfStringToAnalyze if pat.match(elt)]
-    if len(zeLine) != 1:
-        raise RuntimeError("Error for test {}".format(fn))
-    delta = float(pat.match(zeLine[0]).group(1))
-    if delta > 1:
-        raise RuntimeError("Image comparison failed : {} > 1".format(delta))
-
-def LaunchAllTests(baseLineDir):
-    from glob import glob
-    fis = glob("testMEDReader*.py")
-    for fi in fis:
-        print(fi)
-        LaunchMEDReaderTest(fi,baseLineDir)
-
-if __name__ == "__main__":
-    LaunchMEDReaderTest(sys.argv[1],sys.argv[2])
-
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader0.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader0.py
deleted file mode 100644 (file)
index 02c9b79..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-    fname="testMEDReader0.med"
-    #########
-    mz=MEDCoupling1SGTUMesh("mesh",NORM_QUAD9)
-    mz.setNodalConnectivity(DataArrayInt([0,6,37,12,76,112,113,82,205,12,37,38,13,113,114,115,83,206,13,38,9,1,115,116,79,84,207,6,7,39,37,77,117,118,112,208,37,39,40,38,118,119,120,114,209,38,40,10,9,120,121,80,116,210,7,8,41,39,78,122,123,117,211,39,41,42,40,123,124,125,119,212,40,42,11,10,125,126,81,121,213,1,9,43,17,79,127,128,88,214,17,43,44,18,128,129,130,89,215,18,44,14,2,130,131,85,90,216,9,10,45,43,80,132,133,127,217,43,45,46,44,133,134,135,129,218,44,46,15,14,135,136,86,131,219,10,11,47,45,81,137,138,132,220,45,47,48,46,138,139,140,134,221,46,48,16,15,140,141,87,136,222,1,9,49,22,79,142,143,94,223,22,49,50,23,143,144,145,95,224,23,50,51,24,145,146,147,96,225,24,51,52,25,147,148,149,97,226,25,52,53,26,149,150,151,98,227,26,53,19,3,151,152,91,99,228,9,10,54,49,80,153,154,142,229,49,54,55,50,154,155,156,144,230,50,55,56,51,156,157,158,146,231,51,56,57,52,158,159,160,148,232,52,57,58,53,160,161,162,150,233,53,58,20,19,162,163,92,152,234,10,11,59,54,81,164,165,153,235,54,59,60,55,165,166,167,155,236,55,60,61,56,167,168,169,157,237,56,61,62,57,169,170,171,159,238,57,62,63,58,171,172,173,161,239,58,63,21,20,173,174,93,163,240,4,27,64,30,100,175,176,103,241,30,64,65,31,176,177,178,104,242,31,65,19,3,178,179,91,105,243,27,28,66,64,101,180,181,175,244,64,66,67,65,181,182,183,177,245,65,67,20,19,183,184,92,179,246,28,29,68,66,102,185,186,180,247,66,68,69,67,186,187,188,182,248,67,69,21,20,188,189,93,184,249,3,19,70,35,91,190,191,109,250,35,70,71,36,191,192,193,110,251,36,71,32,5,193,194,106,111,252,19,20,72,70,92,195,196,190,253,70,72,73,71,196,197,198,192,254,71,73,33,32,198,199,107,194,255,20,21,74,72,93,200,201,195,256,72,74,75,73,201,202,203,197,257,73,75,34,33,203,204,108,199,258]))
-    coords=DataArrayDouble([-0.04,0.015,0.,0.,0.015,0.,0.04,0.015,0.,0.,0.105,0.,-0.04,0.105,0.,0.04,0.105,0.,-0.04,0.015,0.015,-0.04,0.015,0.03,-0.04,0.015,0.045,0.,0.015,0.015,0.,0.015,0.03,0.,0.015,0.045,-0.026666666666666665,0.015,0.,-0.013333333333333329,0.015,0.,0.04,0.015,0.015,0.04,0.015,0.03,0.04,0.015,0.045,0.013333333333333336,0.015,0.,0.026666666666666672,0.015,0.,0.,0.105,0.015,0.,0.105,0.03,0.,0.105,0.045,0.,0.03,0.,0.,0.045,0.,0.,0.06,0.,0.,0.075,0.,0.,0.09,0.,-0.04,0.105,0.015,-0.04,0.105,0.03,-0.04,0.105,0.045,-0.026666666666666665,0.105,0.,-0.013333333333333329,0.105,0.,0.04,0.105,0.015,0.04,0.105,0.03,0.04,0.105,0.045,0.013333333333333336,0.105,0.,0.026666666666666672,0.105,0.,-0.026666666666666665,0.015,0.015,-0.013333333333333326,0.015,0.015,-0.026666666666666665,0.015,0.03,-0.013333333333333326,0.015,0.03,-0.026666666666666665,0.015,0.045,-0.013333333333333329,0.015,0.045,0.013333333333333338,0.015,0.015,0.026666666666666675,0.015,0.015,0.013333333333333338,0.015,0.03,0.026666666666666675,0.015,0.03,0.013333333333333336,0.015,0.045,0.026666666666666672,0.015,0.045,0.,0.03,0.015,0.,0.045,0.015,0.,0.06,0.015,0.,0.07500000000000001,0.015,0.,0.09,0.015,0.,0.03,0.03,0.,0.045,0.03,0.,0.06,0.03,0.,0.075,0.03,0.,0.09,0.03,0.,0.03,0.045,0.,0.045,0.045,0.,0.06,0.045,0.,0.075,0.045,0.,0.09,0.045,-0.026666666666666665,0.105,0.015,-0.013333333333333326,0.105,0.015,-0.026666666666666665,0.105,0.03,-0.013333333333333326,0.105,0.03,-0.026666666666666665,0.105,0.045,-0.013333333333333329,0.105,0.045,0.013333333333333338,0.105,0.015,0.026666666666666675,0.105,0.015,0.013333333333333338,0.105,0.03,0.026666666666666675,0.105,0.03,0.013333333333333336,0.105,0.045,0.026666666666666672,0.105,0.045,-0.04,0.015,0.0075,-0.04,0.015,0.0225,-0.04,0.015,0.0375,0.,0.015,0.0075,0.,0.015,0.0225,0.,0.015,0.0375,-0.03333333333333333,0.015,0.,-0.02,0.015,0.,-0.0066666666666666645,0.015,0.,0.04,0.015,0.0075,0.04,0.015,0.0225,0.04,0.015,0.0375,0.006666666666666668,0.015,0.,0.02,0.015,0.,0.03333333333333334,0.015,0.,0.,0.105,0.0075,0.,0.105,0.0225,0.,0.105,0.0375,0.,0.0225,0.,0.,0.0375,0.,0.,0.0525,0.,0.,0.0675,0.,0.,0.0825,0.,0.,0.0975,0.,-0.04,0.105,0.0075,-0.04,0.105,0.0225,-0.04,0.105,0.0375,-0.03333333333333333,0.105,0.,-0.02,0.105,0.,-0.0066666666666666645,0.105,0.,0.04,0.105,0.0075,0.04,0.105,0.0225,0.04,0.105,0.0375,0.006666666666666668,0.105,0.,0.02,0.105,0.,0.03333333333333334,0.105,0.,-0.03333333333333333,0.015,0.015,-0.026666666666666665,0.015,0.0075,-0.02,0.015,0.015,-0.013333333333333327,0.015,0.0075,-0.006666666666666663,0.015,0.015,-0.03333333333333333,0.015,0.03,-0.026666666666666665,0.015,0.0225,-0.02,0.015,0.03,-0.013333333333333326,0.015,0.0225,-0.006666666666666663,0.015,0.03,-0.03333333333333333,0.015,0.045,-0.026666666666666665,0.015,0.0375,-0.02,0.015,0.045,-0.013333333333333327,0.015,0.0375,-0.0066666666666666645,0.015,0.045,0.006666666666666669,0.015,0.015,0.013333333333333336,0.015,0.0075,0.020000000000000007,0.015,0.015,0.026666666666666672,0.015,0.0075,0.03333333333333334,0.015,0.015,0.006666666666666669,0.015,0.03,0.013333333333333338,0.015,0.0225,0.02,0.015,0.03,0.026666666666666675,0.015,0.0225,0.03333333333333334,0.015,0.03,0.006666666666666668,0.015,0.045,0.013333333333333336,0.015,0.0375,0.02,0.015,0.045,0.026666666666666672,0.015,0.0375,0.03333333333333334,0.015,0.045,0.,0.0225,0.015,0.,0.03,0.0075,0.,0.0375,0.015,0.,0.045,0.0075,0.,0.0525,0.015,0.,0.06,0.0075,0.,0.0675,0.015,0.,0.07500000000000001,0.0075,0.,0.0825,0.015,0.,0.09,0.0075,0.,0.0975,0.015,0.,0.0225,0.03,0.,0.03,0.0225,0.,0.0375,0.03,0.,0.045,0.0225,0.,0.0525,0.03,0.,0.06,0.0225,0.,0.0675,0.03,0.,0.07500000000000001,0.0225,0.,0.08249999999999999,0.03,0.,0.09,0.0225,0.,0.0975,0.03,0.,0.0225,0.045,0.,0.03,0.0375,0.,0.0375,0.045,0.,0.045,0.0375,0.,0.0525,0.045,0.,0.06,0.0375,0.,0.0675,0.045,0.,0.075,0.0375,0.,0.08249999999999999,0.045,0.,0.09,0.0375,0.,0.0975,0.045,-0.03333333333333333,0.105,0.015,-0.026666666666666665,0.105,0.0075,-0.02,0.105,0.015,-0.013333333333333327,0.105,0.0075,-0.006666666666666663,0.105,0.015,-0.03333333333333333,0.105,0.03,-0.026666666666666665,0.105,0.0225,-0.02,0.105,0.03,-0.013333333333333326,0.105,0.0225,-0.006666666666666663,0.105,0.03,-0.03333333333333333,0.105,0.045,-0.026666666666666665,0.105,0.0375,-0.02,0.105,0.045,-0.013333333333333327,0.105,0.0375,-0.0066666666666666645,0.105,0.045,0.006666666666666669,0.105,0.015,0.013333333333333336,0.105,0.0075,0.020000000000000007,0.105,0.015,0.026666666666666672,0.105,0.0075,0.03333333333333334,0.105,0.015,0.006666666666666669,0.105,0.03,0.013333333333333338,0.105,0.0225,0.020000000000000007,0.105,0.03,0.026666666666666675,0.105,0.0225,0.03333333333333334,0.105,0.03,0.006666666666666668,0.105,0.045,0.013333333333333336,0.105,0.0375,0.02,0.105,0.045,0.026666666666666672,0.105,0.0375,0.03333333333333334,0.105,0.045,-0.03333333333333333,0.015,0.0075,-0.02,0.015,0.0075,-0.006666666666666664,0.015,0.0075,-0.03333333333333333,0.015,0.0225,-0.02,0.015,0.0225,-0.006666666666666663,0.015,0.0225,-0.03333333333333333,0.015,0.0375,-0.02,0.015,0.0375,-0.006666666666666662,0.015,0.0375,0.006666666666666668,0.015,0.0075,0.02,0.015,0.0075,0.03333333333333334,0.015,0.0075,0.006666666666666669,0.015,0.0225,0.020000000000000007,0.015,0.0225,0.03333333333333334,0.015,0.0225,0.006666666666666668,0.015,0.0375,0.02,0.015,0.0375,0.03333333333333334,0.015,0.0375,0.,0.0225,0.0075,0.,0.0375,0.0075,0.,0.0525,0.0075,0.,0.0675,0.0075,0.,0.0825,0.0075,0.,0.0975,0.0075,0.,0.0225,0.0225,0.,0.0375,0.0225,0.,0.0525,0.0225,0.,0.0675,0.0225,0.,0.0825,0.0225,0.,0.0975,0.0225,0.,0.0225,0.0375,0.,0.0375,0.0375,0.,0.0525,0.0375,0.,0.0675,0.0375,0.,0.08249999999999999,0.0375,0.,0.0975,0.0375,-0.03333333333333333,0.105,0.0075,-0.02,0.105,0.0075,-0.006666666666666664,0.105,0.0075,-0.03333333333333333,0.105,0.0225,-0.02,0.105,0.0225,-0.006666666666666663,0.105,0.0225,-0.03333333333333333,0.105,0.0375,-0.02,0.105,0.0375,-0.006666666666666662,0.105,0.0375,0.006666666666666668,0.105,0.0075,0.02,0.105,0.0075,0.03333333333333334,0.105,0.0075,0.006666666666666669,0.105,0.0225,0.020000000000000007,0.105,0.0225,0.03333333333333334,0.105,0.0225,0.006666666666666668,0.105,0.0375,0.02,0.105,0.0375,0.03333333333333334,0.105,0.0375],259,3)
-    coords.setInfoOnComponents(['X [INCONNUE]','Y [INCONNUE]','Z [INCONNUE]'])
-    mz.setCoords(coords)
-    mz=mz.buildUnstructured()
-    #
-    arr0=DataArrayDouble()
-    vals0=9*[-3593.,85220.,-15343.,-438.,11985.,-15343.,2716.,-61248.,-15343.,5488.,101072.,-16250.,549.,13186.,-16250.,-4389.,-74699.,-16250.,9988.,101646.,-17156.,1537.,14386.,-17156.,-6913.,-72874.,-17156.,22178.,120238.,-19521.,2342.,14222.,-19521.,-17493.,-91793.,-19521.,37737.,139840.,-21887.,3147.,14059.,-21887.,-31443.,-111722.,-21887.,34350.,140668.,-18690.,3714.,16214.,-18690.,-26922.,-108238.,-18690.,34563.,153494.,-15493.,4281.,18370.,-15493.,-26000.,-116753.,-15493.,2147.,115356.,-15418.,1921.,15178.,-15418.,1695.,-84999.,-15418.,12408.,118616.,-17470.,2131.,14700.,-17470.,-8144.,-89215.,-17470.,15624.,100983.,-16718.,2286.,15441.,-16718.,-11050.,-70101.,-16718.,19381.,102680.,-17191.,2505.,16813.,-17191.,-14370.,-69054.,-17191.,22911.,103615.,-17665.,2725.,18184.,-17665.,-17461.,-67245.,-17665.,32377.,125140.,-20005.,4011.,17741.,-20005.,-24353.,-89657.,-20005.,43183.,147067.,-22345.,5298.,17297.,-22345.,-32586.,-112472.,-22345.,41570.,144664.,-22105.,4896.,15874.,-22105.,-31778.,-112915.,-22105.,40070.,142637.,-21866.,4493.,14451.,-21866.,-31083.,-113734.,-21866.,25367.,121066.,-19292.,3390.,14946.,-19292.,-18587.,-91173.,-19292.,28901.,123199.,-19648.,3701.,16343.,-19648.,-21499.,-90512.,-19648.,23716.,103481.,-17470.,2234.,18509.,-17470.,-19247.,-66463.,-17470.,22561.,104808.,-17142.,1238.,20732.,-17142.,-20084.,-63343.,-17142.,21499.,106443.,-16813.,242.,22956.,-16813.,-21014.,-60531.,-16813.,32906.,133441.,-20775.,3873.,26633.,-20775.,-25158.,-80173.,-20775.,45801.,160885.,-24737.,7505.,30311.,-24737.,-30791.,-100262.,-24737.,44184.,154705.,-23601.,5922.,24329.,-23601.,-32340.,-106046.,-23601.,42566.,148521.,-22465.,4338.,18347.,-22465.,-33888.,-111825.,-22465.,32545.,125822.,-19968.,3286.,18428.,-19968.,-25972.,-88965.,-19968.,32703.,129556.,-20371.,3580.,22531.,-20371.,-25542.,-84493.,-20371.,-580.,50781.,-14878.,-188.,10419.,-14878.,203.,-29941.,-14878.,974.,53486.,-13087.,-197.,11696.,-13087.,-1370.,-30094.,-13087.,2154.,54941.,-11297.,-206.,12972.,-11297.,-2567.,-28996.,-11297.,4921.,72039.,-13221.,709.,13770.,-13221.,-3503.,-44499.,-13221.,6472.,88772.,-15144.,1624.,14567.,-15144.,-3223.,-59637.,-15144.,4104.,85353.,-15580.,600.,13047.,-15580.,-2903.,-59258.,-15580.,1258.,80341.,-16016.,-423.,11526.,-16016.,-2105.,-57288.,-16016.,-822.,65212.,-15447.,-306.,10973.,-15447.,210.,-43266.,-15447.,2262.,69336.,-14334.,201.,12371.,-14334.,-1859.,-44593.,-14334.,4047.,55415.,-11562.,137.,13264.,-11562.,-3772.,-28887.,-11562.,6455.,56737.,-11164.,80.,14219.,-11164.,-6294.,-28298.,-11164.,8701.,57516.,-10766.,23.,15175.,-10766.,-8653.,-27166.,-10766.,12843.,74210.,-13196.,662.,16118.,-13196.,-11519.,-41972.,-13196.,17837.,91160.,-15627.,1300.,17062.,-15627.,-15237.,-57034.,-15627.,14573.,90279.,-15674.,1166.,15841.,-15674.,-12240.,-58596.,-15674.,11497.,90026.,-15722.,1033.,14619.,-15722.,-9431.,-60786.,-15722.,7014.,72493.,-13642.,585.,13941.,-13642.,-5844.,-44609.,-13642.,9922.,73330.,-13419.,623.,15030.,-13419.,-8675.,-43270.,-13419.,9608.,58062.,-10666.,-408.,15882.,-10666.,-10425.,-26297.,-10666.,10622.,58358.,-9978.,-497.,16431.,-9978.,-11617.,-25496.,-9978.,11722.,58941.,-9290.,-587.,16979.,-9290.,-12896.,-24981.,-9290.,14386.,76411.,-12130.,-417.,19190.,-12130.,-15221.,-38029.,-12130.,18009.,94168.,-14969.,-248.,21401.,-14969.,-18505.,-51365.,-14969.,19049.,93091.,-15325.,999.,19998.,-15325.,-17050.,-53095.,-15325.,20242.,92527.,-15681.,2246.,18594.,-15681.,-15748.,-55338.,-15681.,14435.,75147.,-13174.,919.,17238.,-13174.,-12597.,-40670.,-13174.,14351.,75579.,-12652.,250.,18214.,-12652.,-13849.,-39150.,-12652.0]
-    arr0.setValues(vals0,1458,3)
-    arr0.setInfoOnComponents(['SIXX','SIYY','SIYZ'])
-    f0z=MEDCouplingFieldDouble(ON_GAUSS_PT)
-    f0z.setMesh(mz)
-    f0z.setArray(arr0)
-    f0z.setGaussLocalizationOnType(NORM_QUAD9,[-1,-1,1,-1,1,1,-1,1,0,-1,1,0,0,1,-1,0,0,0],[-0.774597,-0.774597,0.774597,-0.774597,0.774597,0.774597,-0.774597,0.774597,0,-0.774597,0.774597,0,0,0.774597,-0.774597,0,0,0,-0.774597,-0.774597,0.774597,-0.774597,0.774597,0.774597,-0.774597,0.774597,0,-0.774597,0.774597,0,0,0.774597,-0.774597,0,0,0,-0.774597,-0.774597,0.774597,-0.774597,0.774597,0.774597,-0.774597,0.774597,0,-0.774597,0.774597,0,0,0.774597,-0.774597,0,0,0],[0.308642,0.308642,0.308642,0.308642,0.493827,0.493827,0.493827,0.493827,0.790123,0.308642,0.308642,0.308642,0.308642,0.493827,0.493827,0.493827,0.493827,0.790123,0.308642,0.308642,0.308642,0.308642,0.493827,0.493827,0.493827,0.493827,0.790123])
-    f0z.setName("SolutionSIEF_ELGA")
-    f0z.checkConsistencyLight()
-    ff0z=MEDFileField1TS()
-    ff0z.setFieldNoProfileSBT(f0z)
-    #
-    arr1=DataArrayDouble([158663.,171562.,32597.,37341.,118998.,128979.,88846.,94935.,28786.,32250.,67038.,71287.,102742.,108939.,32907.,37716.,0.,0.,138922.,155768.,41391.,47731.,114491.,128395.,94101.,100197.,31445.,35939.,67322.,71913.,94031.,103701.,34833.,39475.,0.,0.,142412.,160086.,42700.,49041.,113826.,128551.,92705.,102386.,34032.,38580.,61698.,69417.,96177.,104283.,38223.,40570.,0.,0.,87935.,89674.,30482.,34419.,66325.,69150.,53964.,55380.,28306.,32157.,37909.,40395.,53662.,55355.,22264.,24611.,0.,0.,94013.,100457.,31768.,36134.,68065.,73681.,53358.,55305.,23341.,26188.,32996.,35203.,52496.,56792.,23849.,26556.,0.,0.,92797.,102692.,33656.,38268.,61244.,68735.,52594.,56740.,24539.,27146.,29157.,33011.,52853.,57683.,25671.,28315.,0.,0.,53581.,55745.,27972.,31820.,37174.,39935.,29236.,31416.,22475.,25354.,20531.,23672.,25557.,26298.,15741.,17492.,0.,0.,53385.,55725.,23224.,25998.,32556.,35093.,25809.,26619.,16518.,18338.,18447.,21219.,23343.,26173.,16948.,19353.,0.,0.,52384.,56725.,24293.,26951.,29491.,33373.,23510.,26382.,17117.,19543.,19649.,22252.,26670.,30680.,19554.,22512.,0.,0.,158781.,178651.,54413.,62227.,103151.,116693.,96177.,104283.,38223.,40570.,56254.,64331.,92705.,102386.,34032.,38580.,0.,0.,142873.,161033.,43285.,49854.,113088.,127440.,94031.,103701.,34833.,39475.,61888.,69552.,94101.,100197.,31445.,35939.,0.,0.,132908.,149284.,42933.,49391.,109280.,123481.,102742.,108939.,32907.,37716.,75662.,80547.,88846.,94935.,28786.,32250.,0.,0.,96505.,105010.,37990.,40710.,56669.,64741.,52853.,57683.,25671.,28315.,26824.,30727.,52594.,56740.,24539.,27146.,0.,0.,92360.,101577.,33582.,37900.,61559.,69237.,52496.,56792.,23849.,26556.,29094.,32746.,53358.,55305.,23341.,26188.,0.,0.,95615.,101326.,31440.,36083.,69356.,73116.,53662.,55355.,22264.,24611.,31957.,34376.,53964.,55380.,28306.,32157.,0.,0.,53029.,58077.,25636.,28363.,27182.,31122.,26670.,30680.,19554.,22512.,20758.,22139.,23510.,26382.,17117.,19543.,0.,0.,52348.,56723.,23922.,26648.,29286.,32993.,23343.,26173.,16948.,19353.,19615.,22178.,25809.,26619.,16518.,18338.,0.,0.,53623.,55229.,22321.,24800.,32700.,34971.,25557.,26298.,15741.,17492.,18986.,21836.,29236.,31416.,22475.,25354.,0.,0.,64897.,69997.,64897.,69997.,64897.,69997.,81086.,90448.,81086.,90448.,81086.,90448.,85289.,98323.,85289.,98323.,0.,0.,71712.,82585.,71712.,82585.,71712.,82585.,83868.,96651.,83868.,96651.,83868.,96651.,86266.,99505.,86266.,99505.,0.,0.,77671.,89574.,77671.,89574.,77671.,89574.,86057.,99277.,86057.,99277.,86057.,99277.,86664.,99373.,86664.,99373.,0.,0.,80105.,91799.,80105.,91799.,80105.,91799.,86589.,99313.,86589.,99313.,86589.,99313.,85997.,97609.,85997.,97609.,0.,0.,79826.,90350.,79826.,90350.,79826.,90350.,86438.,98180.,86438.,98180.,86438.,98180.,85995.,95152.,85995.,95152.,0.,0.,75137.,82756.,75137.,82756.,75137.,82756.,88617.,98610.,88617.,98610.,88617.,98610.,79961.,83623.,79961.,83623.,0.,0.,79241.,88756.,79241.,88756.,79241.,88756.,84552.,97374.,84552.,97374.,84552.,97374.,93024.,107413.,93024.,107413.,0.,0.,85301.,98315.,85301.,98315.,85301.,98315.,92453.,106752.,92453.,106752.,92453.,106752.,93783.,108035.,93783.,108035.,0.,0.,86813.,100152.,86813.,100152.,86813.,100152.,93530.,107737.,93530.,107737.,93530.,107737.,92512.,106099.,92512.,106099.,0.,0.,87195.,100044.,87195.,100044.,87195.,100044.,92527.,106109.,92527.,106109.,92527.,106109.,90156.,102760.,90156.,102760.,0.,0.,87342.,99233.,87342.,99233.,87342.,99233.,90384.,103001.,90384.,103001.,90384.,103001.,85458.,96494.,85458.,96494.,0.,0.,90428.,100728.,90428.,100728.,90428.,100728.,85454.,96396.,85454.,96396.,85454.,96396.,70692.,78323.,70692.,78323.,0.,0.,84617.,97440.,84617.,97440.,84617.,97440.,83973.,96607.,83973.,96607.,83973.,96607.,92886.,106795.,92886.,106795.,0.,0.,92294.,106564.,92294.,106564.,92294.,106564.,92515.,106364.,92515.,106364.,92515.,106364.,94158.,108033.,94158.,108033.,0.,0.,93639.,107861.,93639.,107861.,93639.,107861.,93950.,107796.,93950.,107796.,93950.,107796.,91874.,105168.,91874.,105168.,0.,0.,92701.,106313.,92701.,106313.,92701.,106313.,91869.,105167.,91869.,105167.,91869.,105167.,87044.,99369.,87044.,99369.,0.,0.,90450.,103104.,90450.,103104.,90450.,103104.,87236.,99605.,87236.,99605.,87236.,99605.,78375.,89211.,78375.,89211.,0.,0.,84833.,95787.,84833.,95787.,84833.,95787.,78665.,89521.,78665.,89521.,78665.,89521.,63448.,71985.,63448.,71985.,0.,0.,9194.,10306.,41521.,44441.,79431.,85178.,8946.,9792.,22335.,23886.,51736.,54740.,7726.,8300.,30477.,32533.,0.,0.,25028.,27404.,28235.,31471.,75379.,84132.,7236.,8309.,29539.,31536.,54052.,58395.,22577.,23370.,39152.,41429.,0.,0.,37235.,42691.,35353.,38183.,100490.,111738.,23433.,25843.,36759.,39109.,53411.,59694.,57437.,65025.,61345.,68878.,0.,0.,6377.,6683.,22457.,23448.,49503.,50751.,10380.,10835.,19266.,19610.,28417.,28750.,20732.,22044.,26521.,27276.,0.,0.,10131.,11681.,28482.,29670.,52601.,56753.,20722.,21728.,25680.,25959.,30780.,31657.,32161.,33290.,33096.,34633.,0.,0.,21380.,22651.,37121.,39923.,54598.,60751.,34744.,36379.,35111.,37417.,35939.,39080.,46708.,51426.,44384.,48624.,0.,0.,10952.,11418.,19643.,20167.,28488.,29118.,20182.,20242.,18359.,18431.,16718.,16900.,24621.,25169.,20737.,21234.,0.,0.,20251.,21309.,25725.,26026.,31355.,32256.,24539.,25102.,20991.,21593.,17889.,18639.,31588.,32417.,27170.,29235.,0.,0.,33431.,35174.,34427.,36736.,35916.,38926.,31741.,32451.,27148.,29040.,23993.,27214.,38993.,40689.,36596.,40772.,0.,0.,41907.,48128.,77947.,87844.,152033.,169876.,57437.,65025.,61345.,68878.,74154.,85533.,23433.,25843.,36759.,39109.,0.,0.,33932.,38310.,36200.,40713.,99297.,111743.,22577.,23370.,39152.,41429.,57432.,62292.,7236.,8309.,29539.,31536.,0.,0.,22968.,26297.,27645.,30092.,72463.,80413.,7726.,8300.,30477.,32533.,57469.,61055.,8946.,9792.,22335.,23886.,0.,0.,48710.,53918.,59260.,65402.,77350.,87781.,46708.,51426.,44384.,48624.,50354.,58143.,34744.,36379.,35111.,37417.,0.,0.,20908.,22670.,38133.,39669.,56332.,59453.,32161.,33290.,33096.,34633.,34367.,36793.,20722.,21728.,25680.,25959.,0.,0.,7404.,8010.,30073.,32272.,55210.,58955.,20732.,22044.,26521.,27276.,32434.,32943.,10380.,10835.,19266.,19610.,0.,0.,45425.,49667.,44460.,48383.,51014.,58851.,38993.,40689.,36596.,40772.,38865.,44837.,31741.,32451.,27148.,29040.,0.,0.,31595.,32602.,33322.,34837.,35379.,37698.,31588.,32417.,27170.,29235.,24035.,27311.,24539.,25102.,20991.,21593.,0.,0.,19475.,20577.,25384.,25965.,31447.,32050.,24621.,25169.,20737.,21234.,17759.,18414.,20182.,20242.,18359.,18431.,0.,0.],486,2)
-    arr1.setInfoOnComponents(['VMIS','TRESCA'])
-    f1z=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f1z.setName("SolutionSIEQ_ELNO")
-    f1z.setArray(arr1)
-    f1z.setMesh(mz)
-    f1z.checkConsistencyLight()
-    ff1z=MEDFileField1TS()
-    ff1z.setFieldNoProfileSBT(f1z)
-    #
-    arr2=DataArrayDouble([4.938269266683534e-28,-6.232001151245993e-28,1.0602290566170399e-27,4.029857051193646e-29,-1.1103217240985741e-27,-1.5536615528327828e-27,1.5241233363338648e-28,-3.015674201798923e-30,-1.02980203874559e-30,2.72351596604712e-29,-1.1888246600739933e-29,-2.69937196846485e-29,-4.7437993223547586e-07,1.3496193329105202e-07,-7.295395086913946e-07,7.054959528904149e-08,-8.433644218153947e-07,-1.3140517414252605e-08,-4.6699282590396373e-07,-4.307881601165781e-21,-7.181557182928824e-07,-8.028640214851634e-21,-8.231757491716489e-07,-1.2311604671716488e-20,6.500213859021137e-28,-5.36425415550288e-29,2.082592789783471e-28,1.3252863207712998e-28,-4.743799322354692e-07,-1.3496193329105909e-07,-7.295395086913853e-07,-7.054959528905818e-08,-8.433644218153849e-07,1.3140517414226876e-08,6.058451752097371e-28,5.632466863278024e-28,2.208810534618833e-28,2.2876966251409342e-28,-6.120655339318954e-07,1.623023866978208e-20,-7.136250920460284e-07,4.359903572644498e-20,-6.995066975751433e-07,7.373674095935513e-20,0.0,1.4598897976731362e-43,0.0,5.997557427310217e-43,0.0,1.156071233067974e-43,0.0,6.726232628759122e-44,0.0,1.0089348943138683e-43,-4.76082153061813e-07,1.7635130038063272e-07,-7.252650834474581e-07,1.797684522608815e-07,-7.726301925249592e-07,1.3593814652780474e-07,1.28713440720985e-28,8.66262871593868e-30,-1.7918024758329104e-28,1.9633850833341234e-29,-4.7608215306193535e-07,-1.7635130038060178e-07,-7.252650834476241e-07,-1.797684522607695e-07,-7.726301925251186e-07,-1.3593814652760442e-07,-3.0106055763582786e-29,-3.568658720396775e-29,-2.2739766223848432e-29,-1.6603258665331888e-29,-4.741010514018535e-07,5.448590612379579e-08,-4.701818411901992e-07,1.6663000490694165e-08,-7.453102534678627e-07,2.7357217239441644e-08,-7.279540615613018e-07,3.4371113890668217e-09,-8.579330208754989e-07,-2.6008405171390205e-08,-8.357526525453042e-07,-2.5729239758795502e-08,-4.701818411901952e-07,-1.6663000490702818e-08,-4.741010514018457e-07,-5.448590612380402e-08,-7.279540615612966e-07,-3.4371113890835274e-09,-7.45310253467852e-07,-2.7357217239458564e-08,-8.357526525452993e-07,2.572923975877074e-08,-8.579330208754882e-07,2.6008405171364682e-08,0.0,-3.689838846534034e-21,0.0,-3.4057248282497575e-21,0.0,-2.389474304570763e-21,0.0,1.1849907150798524e-21,0.0,7.728930340233592e-21,0.0,-9.409753747161713e-21,0.0,-9.27355993916331e-21,0.0,-5.9005465375222355e-21,0.0,3.45820724462685e-21,0.0,2.0021147143626658e-20,0.0,-1.6042705688202718e-20,0.0,-1.541762360721681e-20,0.0,-8.827856096357078e-21,0.0,6.3984676397065826e-21,0.0,3.396409774956617e-20,-5.21059344905059e-07,1.0785416831218214e-07,-5.942832234061152e-07,1.1284412735292002e-07,-7.291198556954883e-07,1.5975182005082218e-07,-7.29419534669376e-07,1.4146009988497262e-07,-7.536819640264805e-07,1.388363757438669e-07,-7.212688685979149e-07,1.1197909398607218e-07,-5.94283223406162e-07,-1.1284412735287996e-07,-5.210593449051535e-07,-1.0785416831213956e-07,-7.294195346694393e-07,-1.4146009988486582e-07,-7.291198556956173e-07,-1.5975182005070884e-07,-7.212688685979762e-07,-1.1197909398589052e-07,-7.536819640266044e-07,-1.3883637574367513e-07,-2.8576578578864835e-07,1.301140611795876e-07,-6.228581335977658e-07,1.1144407150470386e-07,-8.014360278229913e-07,2.882237382538957e-08,-2.6588034168431343e-07,-2.345549761149889e-21,-6.148909793824232e-07,-5.981322827533954e-21,-7.85277352863385e-07,-1.0225807644204478e-20,3.1049565229499025e-27,-4.196740015775783e-28,-2.887230913108903e-28,-4.403551231441193e-28,4.812051521848172e-29,3.851635443793833e-28,-2.857657857886445e-07,-1.301140611795897e-07,-6.228581335977572e-07,-1.1144407150471579e-07,-8.01436027822981e-07,-2.8822373825410947e-08,-1.5635223141480454e-27,-9.802651538976083e-29,3.278505922098525e-27,-6.797558254135845e-28,4.1020767071492614e-27,5.932234007262009e-28,-4.410314084022777e-07,7.268022452197178e-21,-6.915240267186082e-07,2.9979998916103056e-20,-7.135613152026231e-07,5.968769864060137e-20,0.0,1.793662034335766e-43,0.0,1.793662034335766e-43,0.0,8.96831017167883e-43,0.0,-5.6519283938616335e-43,0.0,1.0761972206014595e-42,0.0,9.269247757898544e-43,-2.627131752301911e-07,1.3274214899302934e-07,-6.329945799890571e-07,1.9265484727832687e-07,-7.677771910976133e-07,1.6184720841148966e-07,1.5146129380243427e-28,-5.494056542378401e-29,1.0988346067719275e-50,3.891714187734575e-29,2.524354896707238e-28,1.6407579324035087e-28,-2.62713175230267e-07,-1.3274214899303003e-07,-6.329945799892127e-07,-1.9265484727825895e-07,-7.677771910977852e-07,-1.6184720841133102e-07,-1.5146129380243427e-28,6.686637000472881e-29,-1.5146129380243427e-28,5.412840523535707e-29,5.048709949123486e-29,-1.0255191767873153e-29,-4.801584184334589e-07,9.447106112382042e-08,-2.646155245804423e-07,4.165624981437424e-08,-4.7283844479037397e-07,3.112099903692373e-08,-2.656912190102633e-07,1.2633757629192664e-08,-4.6803908104000066e-07,8.091752496288301e-09,-7.484767456103177e-07,4.8063930505815753e-08,-6.342336387597463e-07,4.783223809223803e-08,-7.371756425756432e-07,1.2491484933343017e-08,-6.217198644652372e-07,1.3160740615455145e-08,-7.210619794360716e-07,-6.140998451021678e-11,-8.616398069136549e-07,-2.0279767975595878e-08,-8.174867338143947e-07,1.761743718501197e-09,-8.474965025861739e-07,-2.8360688201075687e-08,-7.969390370704656e-07,-1.0156396041453297e-08,-8.26809188564297e-07,-1.6608029814857525e-08,-4.6803908103999843e-07,-8.091752496296909e-09,-2.6569121901026077e-07,-1.2633757629197396e-08,-4.72838444790368e-07,-3.112099903693232e-08,-2.6461552458043755e-07,-4.165624981437841e-08,-4.801584184334501e-07,-9.447106112382803e-08,-7.210619794360687e-07,6.140998449395655e-11,-6.217198644652322e-07,-1.3160740615467643e-08,-7.37175642575635e-07,-1.2491484933360037e-08,-6.342336387597367e-07,-4.783223809225061e-08,-7.484767456103061e-07,-4.8063930505832595e-08,-8.268091885642944e-07,1.6608029814832955e-08,-7.969390370704601e-07,1.015639604143253e-08,-8.474965025861654e-07,2.836068820105083e-08,-8.174867338143834e-07,-1.7617437185225845e-09,-8.616398069136434e-07,2.02797679755703e-08,0.0,-3.435877556189529e-21,0.0,-1.3776771401529971e-21,0.0,-3.403994495899553e-21,0.0,-1.3185754926235634e-21,0.0,-2.7680254878980847e-21,0.0,-1.1103673324958778e-21,0.0,-9.900107724251277e-22,0.0,4.77602156134974e-22,0.0,3.959146546409973e-21,0.0,3.776411006916986e-21,0.0,1.2124392797414627e-20,0.0,-8.731709783191639e-21,0.0,-6.144329300702704e-21,0.0,-8.89968038381516e-21,0.0,-5.404653063609732e-21,0.0,-7.547524363424233e-21,0.0,-3.3206893791145496e-21,0.0,-1.6246546029348425e-21,0.0,1.9854969588545943e-21,0.0,1.1317236337409485e-20,0.0,1.3983874347413824e-20,0.0,3.098996503833694e-20,0.0,-1.407865292807831e-20,0.0,-1.1626000835692668e-20,0.0,-1.533412146384094e-20,0.0,-1.1018823571603408e-20,0.0,-1.2512374860235445e-20,0.0,-6.514267779823197e-21,0.0,-2.4719015385819347e-21,0.0,4.858859984935085e-21,0.0,1.881348220188166e-20,0.0,2.740874292245713e-20,0.0,5.211376231395407e-20,-4.864225626157067e-07,1.3296728230814142e-07,-3.076586015279749e-07,6.740802636874205e-08,-5.594534933091086e-07,1.1066583698276748e-07,-3.841186138586638e-07,7.559745482599735e-08,-6.098267681100678e-07,9.875238991849593e-08,-7.2970765755297e-07,1.669225383108583e-07,-6.573316628421653e-07,1.465581454371536e-07,-7.316181481946474e-07,1.5542337568784254e-07,-6.912676702186072e-07,1.3829023572925456e-07,-7.20589385417476e-07,9.666451163676767e-08,-7.723884127434406e-07,1.3857930563622999e-07,-7.569169347428396e-07,1.547516335925935e-07,-7.383025429990218e-07,1.3271074092312e-07,-7.350854918831709e-07,1.2994146610617741e-07,-7.0646090437235e-07,6.938656131041383e-08,-6.098267681100908e-07,-9.875238991845998e-08,-3.841186138586908e-07,-7.559745482597872e-08,-5.594534933091803e-07,-1.1066583698272561e-07,-3.0765860152803245e-07,-6.740802636872275e-08,-4.864225626158294e-07,-1.329672823081032e-07,-7.20589385417508e-07,-9.666451163666813e-08,-6.912676702186662e-07,-1.3829023572918171e-07,-7.316181481947439e-07,-1.5542337568773118e-07,-6.573316628422832e-07,-1.4655814543707692e-07,-7.297076575531353e-07,-1.6692253831074535e-07,-7.064609043723808e-07,-6.938656131024667e-08,-7.350854918832338e-07,-1.2994146610603196e-07,-7.383025429991161e-07,-1.3271074092293177e-07,-7.56916934742969e-07,-1.5475163359243975e-07,-7.723884127435972e-07,-1.3857930563603445e-07,-2.6225523866596743e-07,7.368618860781533e-08,-2.6483901297419715e-07,2.3043552983380804e-08,-2.6569368384400127e-07,6.351605004005378e-09,-6.372294401265312e-07,7.723333950374213e-08,-6.279151194946851e-07,2.6473214771574048e-08,-6.169026138715963e-07,5.559932643680484e-09,-8.206671947434617e-07,1.419786412636469e-08,-8.077626999789484e-07,-6.830966026358984e-09,-7.886512424652054e-07,-7.805683188152915e-09,-2.6569368384400005e-07,-6.351605004010108e-09,-2.648390129741935e-07,-2.3043552983385364e-08,-2.622552386659623e-07,-7.36861886078186e-08,-6.169026138715935e-07,-5.559932643692688e-09,-6.279151194946777e-07,-2.647321477158676e-08,-6.372294401265209e-07,-7.723333950375434e-08,-7.886512424652024e-07,7.805683188132495e-09,-8.077626999789395e-07,6.830966026337777e-09,-8.2066719474345e-07,-1.4197864126386033e-08,0.0,-1.528080794868089e-21,0.0,-1.5426894495622164e-21,0.0,-1.1495211961775125e-21,0.0,-4.441807280413718e-22,0.0,1.9784166326767865e-21,0.0,5.420802477152069e-21,0.0,-6.12858914756041e-21,0.0,-6.197208509921192e-21,0.0,-4.895012827081806e-21,0.0,-1.2104071985400557e-21,0.0,7.207223659623184e-21,0.0,2.1139789648778443e-20,0.0,-1.178112680978544e-20,0.0,-1.2361618534325795e-20,0.0,-9.332953007651742e-21,0.0,-2.4549106998298197e-21,0.0,1.5192320364423287e-20,0.0,4.128606459003346e-20,-2.6179012371741095e-07,8.492155525093568e-08,-3.431936650750607e-07,6.526689580555302e-08,-4.206987870183037e-07,7.275786337707596e-08,-6.39565352471141e-07,1.6214246375922057e-07,-6.76924119958337e-07,1.4588367240696607e-07,-6.94035042843604e-07,1.042901908413762e-07,-7.689004953903582e-07,1.574343097081281e-07,-7.476782438785353e-07,1.489103868358007e-07,-7.209785981316606e-07,8.394206942691553e-08,-4.2069878701831687e-07,-7.275786337705938e-08,-3.431936650751034e-07,-6.52668958055331e-08,-2.617901237174839e-07,-8.492155525092188e-08,-6.940350428436335e-07,-1.0429019084130907e-07,-6.769241199584262e-07,-1.458836724068901e-07,-6.39565352471292e-07,-1.6214246375914686e-07,-7.209785981316918e-07,-8.394206942678136e-08,-7.476782438786325e-07,-1.4891038683565012e-07,-7.68900495390525e-07,-1.574343097079712e-07],259,2)
-    arr2.setInfoOnComponents(['DRX','DRZ'])
-    f2z=MEDCouplingFieldDouble(ON_NODES) ; f2z.setName("SolutionDEPL") ; f2z.setArray(arr2)
-    f2z.setMesh(mz)
-    f2z.checkConsistencyLight()
-    ff2z=MEDFileField1TS()
-    ff2z.setFieldNoProfileSBT(f2z)
-    #
-    mm2=MEDFileUMesh()
-    mm2.setMeshAtLevel(0,mz)
-    mm2.setFamilyFieldArr(0,DataArrayInt([-1,-1,-1,-1,-1,-1,-1,-1,-1,-2,-2,-2,-2,-2,-2,-2,-2,-2,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-4,-4,-4,-4,-4,-4,-4,-4,-4,-5,-5,-5,-5,-5,-5,-5,-5,-5]))
-    mm2.setFamilyFieldArr(1,DataArrayInt([1,2,3,4,5,6,0,0,0,0,0,0,1,1,0,0,0,3,3,0,0,0,7,7,7,7,7,0,0,0,5,5,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,3,3,3,0,0,0,7,7,7,7,7,7,0,0,0,5,5,5,0,0,0,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]))
-    for famName,famId in [('FAMILLE_ZERO',0),('ba1_beam',-1),('ba2_beam',-2),('h1',6),('h1_h2_h3',4),('h2',5),('h3',7),('h3_h4_h5',2),('h4',3),('h5',1),('to1_beam',-4),('to2_beam',-5),('web_beam',-3)]:
-        mm2.setFamilyId(famName,famId)
-        pass
-    for grName,famsOnGrp in [('ba1',['ba1_beam']),('ba2',['ba2_beam']),('beam',['ba1_beam','ba2_beam','to1_beam','to2_beam','web_beam']),('h1',['h1','h1_h2_h3']),('h2',['h1_h2_h3','h2']),('h3',['h1_h2_h3','h3','h3_h4_h5']),('h4',['h3_h4_h5','h4']),('h5',['h3_h4_h5','h5']),('to1',['to1_beam']),('to2',['to2_beam']),('web',['web_beam'])]:
-        mm2.setFamiliesOnGroup(grName,famsOnGrp)
-        pass
-    #
-    mm2.write(fname,2)
-    ff0z.write(fname,0)
-    ff1z.write(fname,0)
-    ff2z.write(fname,0)
-    return fname
-
-@WriteInTmpDir
-def test0(baseline_file):
-    fname = GenerateCase()
-    ################### MED write is done -> Go to MEDReader
-
-    myMedReader=MEDReader(FileNames=[fname])
-
-    myMedReader.FieldsStatus = ['TS0/mesh/ComSup0/SolutionDEPL@@][@@P1', 'NotAValidName']
-    myMedReader.UpdatePipeline()
-    myMedReader.FieldsStatus = ['TS0/mesh/ComSup0/SolutionDEPL@@][@@P1', 'TS0/mesh/ComSup0/SolutionSIEF_ELGA@@][@@GAUSS', 'TS0/mesh/ComSup0/SolutionSIEQ_ELNO@@][@@GSSNE', 'TS0/mesh/ComSup0/mesh@@][@@P0']
-    myMedReader.UpdatePipeline()
-    assert(myMedReader.CellData.GetNumberOfArrays()==5) # vtkGhostType
-
-    keys=myMedReader.GetProperty("FieldsTreeInfo")[::2]
-    # list all the names of arrays that can be seen (including their spatial discretization)
-    arr_name_with_dis=[elt.split("/")[-1] for elt in keys]
-    # list all the names of arrays (Equal to those in the MED File)
-    arr_name=[elt.split(myMedReader.GetProperty("Separator").GetData())[0] for elt in arr_name_with_dis]
-    myMedReader.FieldsStatus=keys
-
-    if '-D' not in sys.argv:
-        RenderView1 = GetRenderView()
-        ELNOfieldToSurface1=ELNOfieldToSurface(Input=myMedReader)
-        ExtractGroup1=ExtractGroup(Input=ELNOfieldToSurface1)
-        #ExtractGroup1.UpdatePipelineInformation()
-        ExtractGroup1.AllGroups=['GRP_ba2','GRP_to1','GRP_web']
-        assert(isinstance(ExtractGroup1.GetProperty("MeshName")[0],str))
-        assert(ExtractGroup1.GetProperty("MeshName")[0]=="mesh")
-        #
-        DataRepresentation3 = Show()
-        DataRepresentation3.ScaleFactor = 0.008999999705702066
-        DataRepresentation3.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-        DataRepresentation3.SelectionPointFieldDataArrayName = 'SolutionSIEF_ELNO'
-        a2_SolutionSIEQ_ELNO_PiecewiseFunction = CreatePiecewiseFunction(Points=[0.0, 0.0, 0.5, 0.0, 1.0, 1.0, 0.5, 0.0])
-        #VectorMode='Magnitude' or VectorMode='Component'
-        a2_SolutionSIEQ_ELNO_PVLookupTable = GetLookupTableForArray("SolutionSIEQ_ELNO",2,RGBPoints=[0.0, 0.23, 0.299, 0.754, 239013.7773476667, 0.706, 0.016, 0.15], VectorMode='Component', VectorComponent=1, NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0, AllowDuplicateScalars=1 )
-        DataRepresentation3.ScalarOpacityFunction = a2_SolutionSIEQ_ELNO_PiecewiseFunction
-        DataRepresentation3.ColorArrayName = 'SolutionSIEQ_ELNO'
-        DataRepresentation3.LookupTable = a2_SolutionSIEQ_ELNO_PVLookupTable
-        DataRepresentation3.Visibility = 1
-        #
-        ELGAfieldToPointGaussian1=ELGAfieldToPointGaussian(Input=ELNOfieldToSurface1)
-        ELGAfieldToPointGaussian1.SelectSourceArray=['CELLS','ELGA@0']
-        DataRepresentation4 = Show()
-        DataRepresentation4.ScaleFactor = 0.008999999705702066
-        DataRepresentation4.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-        DataRepresentation4.SelectionPointFieldDataArrayName = 'SolutionSIEF_ELGA'
-        DataRepresentation4.ColorArrayName = 'SolutionSIEF_ELGA'
-        ########
-        RenderView1.CameraViewUp = [-0.19545466285945437, 0.837274140321886, -0.5106559396646081]
-        RenderView1.CameraPosition = [0.11797550069274401, 0.20119836056342144, 0.20885419432082736]
-        RenderView1.CameraFocalPoint = [1.0170565790969026e-18, 0.0599999981932342, 0.022500000894069675]
-        RenderView1.ViewSize =[300,300]
-        Render()
-
-        # compare with baseline image
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                    threshold=1)
-        vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-    outImgName="testMEDReader0.png"
-    baseline_file = RetriveBaseLine(outImgName)
-    test0(baseline_file)
-    pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader1.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader1.py
deleted file mode 100644 (file)
index f820ab5..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-from medcoupling import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-@WriteInTmpDir
-def GenerateCase():
-    """
-    This test focused on ELNO. Here a 2 QUAD4 cells and a single ELNO field
-    is defined.
-    """
-    fname="testMEDReader1.med"
-    coords=DataArrayDouble([(0,0,0),(2,1,0),(1,0,0),(1,1,0),(2,0,0),(0,1,0)])
-    m=MEDCouplingUMesh("mesh",2) ; m.setCoords(coords)
-    m.allocateCells()
-    m.insertNextCell(NORM_QUAD4,[0,5,3,2])
-    m.insertNextCell(NORM_QUAD4,[4,2,3,1])
-    m.finishInsertingCells()
-    WriteMesh(fname,m,True)
-    #
-    f0=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f0.setMesh(m) ; f0.setTimeUnit("ms")
-    f0.setTime(1.1,1,1)
-    f0.setName("myELNOField")
-    arr=DataArrayDouble([7,5,3,1,5,3,1,7]) ; arr.setInfoOnComponent(0,"Comp0")
-    f0.setArray(arr)
-    WriteFieldUsingAlreadyWrittenMesh(fname,f0)
-    #
-    f0.setTime(2.2,2,1)
-    arr=DataArrayDouble([1,7,5,3,7,5,3,1]) ; arr.setInfoOnComponent(0,"Comp0")
-    f0.setArray(arr)
-    WriteFieldUsingAlreadyWrittenMesh(fname,f0)
-    #
-    f0.setTime(3.3,3,1)
-    arr=DataArrayDouble([3,1,7,5,1,7,5,3]) ; arr.setInfoOnComponent(0,"Comp0")
-    f0.setArray(arr)
-    WriteFieldUsingAlreadyWrittenMesh(fname,f0)
-    #
-    f0.setTime(4.4,4,1)
-    arr=DataArrayDouble([5,3,1,7,3,1,7,5]) ; arr.setInfoOnComponent(0,"Comp0")
-    f0.setArray(arr)
-    WriteFieldUsingAlreadyWrittenMesh(fname,f0)
-
-
-if __name__ == "__main__":
-    GenerateCase()
-    pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader10.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader10.py
deleted file mode 100644 (file)
index 6ebfe48..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-  """ This test focuses on GenerateVector part.
-  """
-  fname="testMEDReader10.med"
-  ##############
-  coo=DataArrayDouble([(0.,0.,0.),(1.,0.,0.),(2.,0.,0.),(3.,0.,0.),(0.,1.,0.),(1.,1.,0.),(2.,1.,0.),(3.,1.,0.),(0.,0.,1.),(1.,0.,1.),(2.,0.,1.),(3.,0.,1.),(0.,1.,1.),(1.,1.,1.),(2.,1.,1.),(3.,1.,1.)])
-  m=MEDCouplingUMesh("myMesh",3) ; m.setCoords(coo)
-  m.allocateCells()
-  m.insertNextCell(NORM_HEXA8,[0,4,5,1,8,12,13,9]) ; m.insertNextCell(NORM_HEXA8,[1,5,6,2,9,13,14,10]) ; m.insertNextCell(NORM_HEXA8,[2,6,7,3,10,14,15,11])
-  f0=MEDCouplingFieldDouble(ON_NODES) ; f0.setName("f0NbComp1") ; f0.setMesh(m) ;
-  arr=DataArrayDouble(8) ; arr.iota() ; arr=DataArrayDouble.Aggregate(arr,arr+8) ; arr.setInfoOnComponents(["1st"])
-  f0.setArray(arr)
-  f1=MEDCouplingFieldDouble(ON_NODES) ; f1.setName("f1NbComp2") ; f1.setMesh(m) ;
-  arr=DataArrayDouble([(-1.,-1.),(0.,0.5),(0.,0.5),(1.,-1.),(-1.,1.),(0.,-0.5),(0.,-0.5),(1.,1.)]) ; arr=DataArrayDouble.Aggregate(arr,arr) ; arr.setInfoOnComponents(["1st","2nd"])
-  f1.setArray(arr)
-  f2=MEDCouplingFieldDouble(ON_NODES) ; f2.setName("f2NbComp3") ; f2.setMesh(m) ;
-  arr=DataArrayDouble([(-1.,-1.,-1.),(0.,0.5,0.),(0.,0.5,0.),(1.,-1.,-1.),(-1.,1.,-1.),(0.,-0.5,0.),(0.,-0.5,0.),(1.,1.,-1)]) ; arr2=arr[:] ; arr2[[0,3,4,7],2]=1.
-  arr=DataArrayDouble.Aggregate(arr,arr2) ; arr.setInfoOnComponents(["1st","2nd","3rd"])
-  f2.setArray(arr)
-  f3=MEDCouplingFieldDouble(ON_NODES) ; f3.setName("f3NbComp4") ; f3.setMesh(m) ;
-  arr=DataArrayDouble([(-1.,-1.,-1.),(0.,0.5,0.),(0.,0.5,0.),(1.,-1.,-1.),(-1.,1.,-1.),(0.,-0.5,0.),(0.,-0.5,0.),(1.,1.,-1)]) ; arr2=arr[:] ; arr2[[0,3,4,7],2]=1.
-  arr=DataArrayDouble.Aggregate(arr,arr2) ; arr3=DataArrayDouble(16) ; arr3.iota() ; arr=DataArrayDouble.Meld([arr,arr3])
-  arr.setInfoOnComponents(["1st","2nd","3rd","4th"])
-  f3.setArray(arr)
-  #
-  WriteMesh(fname,m,True)
-  WriteFieldUsingAlreadyWrittenMesh(fname,f0)
-  WriteFieldUsingAlreadyWrittenMesh(fname,f1)
-  WriteFieldUsingAlreadyWrittenMesh(fname,f2)
-  WriteFieldUsingAlreadyWrittenMesh(fname,f3)
-  return fname
-
-
-@WriteInTmpDir
-def test(baseline_file):
-  fname = GenerateCase()
-  ################### MED write is done -> Go to MEDReader
-  myMedReader=MEDReader(FileNames=[fname])
-  keys=myMedReader.GetProperty("FieldsTreeInfo")[::2]
-  # list all the names of arrays that can be seen (including their spatial discretization)
-  arr_name_with_dis=[elt.split("/")[-1] for elt in keys]
-  # list all the names of arrays (Equal to those in the MED File)
-  arr_name=[elt.split(myMedReader.GetProperty("Separator").GetData())[0] for elt in arr_name_with_dis]
-  myMedReader.FieldsStatus=keys
-  myMedReader.VectorsProperty=1
-
-  if '-D' not in sys.argv:
-    RenderView1=GetRenderView()
-    DataRepresentation1 = Show()
-    DataRepresentation1.EdgeColor = [0.0, 0.0, 0.5]
-    DataRepresentation1.SelectionPointFieldDataArrayName='f0NbComp1'
-    DataRepresentation1.ScalarOpacityUnitDistance = 2.299619191183727
-    #DataRepresentation1.ExtractedBlockIndex = 1
-    DataRepresentation1.ScaleFactor = 0.3
-    RenderView1.CenterOfRotation = [1.5, 0.5, 0.5]
-    RenderView1.CameraPosition = [1.5, 0.5, 6.907227082229696]
-    RenderView1.CameraFocalPoint = [1.5, 0.5, 0.5]
-    RenderView1.CameraParallelScale = 1.6583123951777
-    DataRepresentation1.Representation = 'Wireframe'
-    #
-    wbv=WarpByVector(Input=myMedReader)
-    wbv.ScaleFactor=0.1
-    wbv.Vectors=['POINTS','f3NbComp4_Vector']
-    print( list(wbv.PointData.keys()) )
-    assert(list(wbv.PointData.keys())==['f0NbComp1','f1NbComp2','f1NbComp2_Vector','f2NbComp3','f3NbComp4','f3NbComp4_Vector','vtkGhostType'])
-    #
-    DataRepresentation2 = Show()
-    DataRepresentation2.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-    DataRepresentation2.SelectionPointFieldDataArrayName = 'f0NbComp1'
-    DataRepresentation2.SelectionCellFieldDataArrayName = 'FamilyIdCell'
-    DataRepresentation2.ScalarOpacityUnitDistance = 4.546673931685981
-    #DataRepresentation2.ExtractedBlockIndex = 1
-    DataRepresentation2.ScaleFactor = 0.5
-    DataRepresentation1.Visibility = 0
-    DataRepresentation1.ColorArrayName = ('POINT_DATA', '')
-    DataRepresentation1.Visibility = 1
-    a4_f3NbComp4_PVLookupTable = GetLookupTableForArray( "f3NbComp4", 4, RGBPoints=[1.118033988749895, 0.23, 0.299, 0.754, 8.108851429645696, 0.865, 0.865, 0.865, 15.0996688705415, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0 )
-    a4_f3NbComp4_PiecewiseFunction = CreatePiecewiseFunction( Points=[1.118033988749895, 0.0, 0.5, 0.0, 15.0996688705415, 1.0, 0.5, 0.0] )
-    DataRepresentation1.ScalarOpacityFunction = a4_f3NbComp4_PiecewiseFunction
-    DataRepresentation1.LookupTable = a4_f3NbComp4_PVLookupTable
-    a4_f3NbComp4_PVLookupTable.ScalarOpacityFunction = a4_f3NbComp4_PiecewiseFunction
-    DataRepresentation2.ScalarOpacityFunction = a4_f3NbComp4_PiecewiseFunction
-    DataRepresentation2.ColorArrayName = ('POINT_DATA', 'f3NbComp4')
-    DataRepresentation2.LookupTable = a4_f3NbComp4_PVLookupTable
-    RenderView1.CameraViewUp = [0.32310237626907823, -0.28721735329781684, -0.901726702728644]
-    RenderView1.CameraPosition = [0.17151044563787257, 6.31903262423349, -1.8294921560963984]
-    RenderView1.CameraFocalPoint = [1.4999999999999996, 0.49999999999999944, 0.4999999999999996]
-    #
-    RenderView1.ViewSize =[300,300]
-    Render()
-
-    # compare with baseline image
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                threshold=1)
-    vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader10.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader13.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader13.py
deleted file mode 100644 (file)
index 2a61ad6..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-  """ This test is non regression test to check non regression of EDF 8761. ELNO Mesh filter on vector field with 4 comps cut of using GenerateVectors"""
-
-  fname="testMEDReader13.med"
-  #
-
-  m=MEDCouplingUMesh("mesh",2)
-  m.setCoords(DataArrayDouble([0.,0.,0.,1.,0.,0.,2.,0.,0.,1.,1.,0.],4,3))
-  m.allocateCells()
-  m.insertNextCell(NORM_TRI3,[0,1,3]) ; m.insertNextCell(NORM_TRI3,[1,2,3])
-  f=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f.setName("fieldELNO") ; f.setMesh(m)
-  arr=DataArrayDouble([0.2,1.1,0.7,0.5,-0.3,0.4])
-  f.setArray(DataArrayDouble.Meld(4*[arr]))
-  f.checkConsistencyLight()
-  WriteField(fname,f,True)
-  return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-  fname = GenerateCase()
-  ################### MED write is done -> Go to MEDReader
-  testMEDReader13_med = MEDReader( FileNames=[fname] )
-
-  testMEDReader13_med.VectorsProperty = 1
-  testMEDReader13_med.FieldsStatus = ['TS0/mesh/ComSup0/fieldELNO@@][@@GSSNE']
-
-  if '-D' not in sys.argv:
-    RenderView1 = GetRenderView()
-    RenderView1.CameraPosition = [1.0, 0.5, 10000.0]
-
-    RenderView1.CameraPosition = [1.0, 0.5, 4.319751617610021]
-
-    ELNOfieldToSurface3 = ELNOfieldToSurface(Input=testMEDReader13_med)
-
-    DataRepresentation2 = Show()
-    #DataRepresentation2.ConstantRadius = 1.9999333620071411
-    DataRepresentation2.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-    #DataRepresentation2.PointGaussianDefaultsInitialized = 1
-    DataRepresentation2.SelectionPointFieldDataArrayName = 'fieldELNO'
-    DataRepresentation2.SelectionCellFieldDataArrayName = 'FamilyIdCell'
-    #DataRepresentation2.SelectInputVectors = ['POINTS', 'fieldELNO_Vector']
-    DataRepresentation2.ScalarOpacityUnitDistance = 1.7746382108908556
-    DataRepresentation2.Texture = []
-    #DataRepresentation2.ExtractedBlockIndex = 1
-    #DataRepresentation2.RadiusRange = [6.666666740784422e-05, 1.9999333620071411]
-    DataRepresentation2.ScaleFactor = 0.19998666953397334
-
-    #DataRepresentation2.RadiusRange = [6.66667e-05, 1.99993]
-    DataRepresentation2.ColorArrayName = ('POINT_DATA', 'fieldELNO_Vector')
-
-    a3_fieldELNO_Vector_PVLookupTable = GetLookupTableForArray( "fieldELNO_Vector", 3, RGBPoints=[0.3464101615137755, 0.23, 0.299, 0.754, 1.1258330249197703, 0.865, 0.865, 0.865, 1.9052558883257653, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0 )
-
-    a3_fieldELNO_Vector_PiecewiseFunction = CreatePiecewiseFunction( Points=[0.3464101615137755, 0.0, 0.5, 0.0, 1.9052558883257653, 1.0, 0.5, 0.0] )
-
-    RenderView1.ViewSize =[300,300]
-    Render()
-
-    # compare with baseline image
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                threshold=1)
-    vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader13.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader14.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader14.py
deleted file mode 100644 (file)
index 024b32a..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-paraview.simple._DisableFirstRenderCameraReset()
-
-def GenerateCase():
-    """ This test reproduces precisely the bug EDF8655 (PAL 22677) by cheking that multi loc per geo type in a field is correctly managed.
-    """
-
-    fname="testMEDReader14.med"
-
-    arr0=DataArrayDouble(7) ; arr0.iota()
-    arr1=DataArrayDouble(5) ; arr1.iota()
-    c=MEDCouplingCMesh()
-    c.setCoords(arr0,arr1)
-    m=c.build1SGTUnstructured()
-    pfl=DataArrayInt([5,10,11,16,17,23])
-    m0=m[pfl.buildComplement(24)]
-    m1=m[pfl] ; m1.simplexize(0)
-    m=MEDCouplingUMesh.MergeUMeshesOnSameCoords(m1.buildUnstructured(),m0.buildUnstructured())
-    m.setName("Mesh")
-    m1=MEDCoupling1SGTUMesh(m.getName(),NORM_SEG2)
-    m1.setCoords(m.getCoords())
-    m1.allocateCells()
-    for i in [[28,21],[21,14],[14,7],[7,0]]:
-        m1.insertNextCell(i)
-        pass
-    for i in range(6):
-        m1.insertNextCell([i,i+1])
-        pass
-    for i in [[6,13],[13,20],[20,27],[27,34]]:
-        m1.insertNextCell(i)
-        pass
-    for i in range(6,0,-1):
-        m1.insertNextCell([28+i,28+i-1])
-        pass
-    #
-    mm=MEDFileUMesh()
-    mm.setMeshAtLevel(0,m)
-    mm.setMeshAtLevel(-1,m1)
-    mm.write(fname,2)
-    #
-    pfl0=DataArrayInt([0,1,2,3]) ; pfl0.setName("PFL000")
-    pfl1=DataArrayInt([4,5,6,7,8,9]) ; pfl1.setName("PFL001")
-    pfl2=DataArrayInt([10,11,12,13]) ; pfl2.setName("PFL002")
-    pfl3=DataArrayInt([13,14,15,16,19,20,23,24,26,27,28,29]) ; pfl3.setName("PFL003")
-    #
-    fieldName0="zeField0"
-    fieldName1="zeField1"
-    fieldName2="zeField2"
-    fs0=MEDFileFieldMultiTS()
-    fs1=MEDFileFieldMultiTS()
-    fs2=MEDFileFieldMultiTS()
-    for i in range(5):
-        f=MEDFileField1TS()
-        zePfl0=DataArrayInt.Aggregate(DataArrayInt.Range(0,12,1),pfl3,0) ; zePfl0.setName("PFL")
-        fNode=MEDCouplingFieldDouble(ON_GAUSS_PT) ; fNode.setTime(float(i),i,0)
-        tmp=m[zePfl0]
-        fNode.setName(fieldName0) ; fNode.setMesh(tmp)
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(0,12,1),[0.,0.,1.,0.,0.,1.],[0.1,0.1,0.8,0.1,0.1,0.8],3*[0.16666666666666666])
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(12,24,1),[-1.,-1.,1.,-1.,1.,1.,-1.,1.],[-0.577350,-0.577350,0.577350,-0.577350,0.577350,0.577350,-0.577350,0.577350],4*[1.])
-        arr=DataArrayDouble(2*(12*3+12*4)) ; arr.iota(0+1000*i) ; arr.rearrange(2)
-        fNode.setArray(arr) ; arr.setInfoOnComponents(["Comp1_2 [m]","Com2_2 [s^2]"]) ; fNode.checkConsistencyLight()
-        fNode.setName(fieldName0)
-        f.setFieldProfile(fNode,mm,0,zePfl0)
-        #
-        zePfl1=DataArrayInt.Range(0,14,1) ; zePfl1.setName("PFL")
-        fNode=MEDCouplingFieldDouble(ON_GAUSS_PT) ; fNode.setTime(float(i),i,0)
-        tmp=m1[zePfl1]
-        #
-        fNode.setName(fieldName0) ; fNode.setMesh(tmp)
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(0,4,1),[-1.,1.],[-0.33333333333333337,0.33333333333333337],[1.,1.])
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(4,10,1),[-1.,1.],[-0.5,0.,0.5],[1.,1.,1.])
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(10,14,1),[-1.,1.],[-0.6,-0.2,0.2,0.6],[1.,1.,1.,1.])
-        arr=DataArrayDouble(2*(4*2+6*3+4*4)) ; arr.iota(100+1000*i) ; arr.rearrange(2)
-        fNode.setArray(arr) ; arr.setInfoOnComponents(["Comp1_2 [m]","Com2_2 [s^2]"]) ; fNode.checkConsistencyLight()
-        fNode.setName(fieldName0)
-        f.setFieldProfile(fNode,mm,-1,zePfl1)
-        fs0.pushBackTimeStep(f)
-        #
-        f=MEDFileField1TS()
-        zePfl2=DataArrayInt.Range(10,20,1) ; zePfl2.setName("PFL2")
-        fNode=MEDCouplingFieldDouble(ON_GAUSS_PT) ; fNode.setTime(float(i),i,0)
-        tmp=m1[zePfl2]
-        fNode.setName(fieldName1) ; fNode.setMesh(tmp)
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(0,4,1),[-1.,1.],[-0.6,-0.2,0.2,0.6],[1.,1.,1.,1.])
-        fNode.setGaussLocalizationOnCells(DataArrayInt.Range(4,10,1),[-1.,1.],[-0.6666666666666667,-0.33333333333333337,0.,0.33333333333333337,0.6666666666666667],[1.,1.,1.,1.,1.])
-        arr=DataArrayDouble(2*(4*4+6*5)) ; arr.iota(500+1000*i) ; arr.rearrange(2)
-        fNode.setArray(arr) ; arr.setInfoOnComponents(["C1 [m]","C2 [s^2]"]) ; fNode.checkConsistencyLight()
-        f.setFieldProfile(fNode,mm,-1,zePfl2)
-        fs1.pushBackTimeStep(f)
-        #
-        f=MEDFileField1TS()
-        zePfl3=DataArrayInt([6,10,11,12,13,17,18,19,20,24,25,26,27,34]) ; zePfl3.setName("PFL3")
-        fNode=MEDCouplingFieldDouble(ON_NODES) ; fNode.setTime(float(i),i,0)
-        fNode.setName(fieldName2)
-        arr=DataArrayDouble(2*14) ; arr.iota(700+1000*i) ; arr.rearrange(2)
-        fNode.setArray(arr) ; arr.setInfoOnComponents(["C3 [kg]","C4 [m^2]"])
-        f.setFieldProfile(fNode,mm,0,zePfl3)
-        fs2.pushBackTimeStep(f)
-        pass
-    fs0.write(fname,0)
-    fs1.write(fname,0)
-    fs2.write(fname,0)
-    return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-    fname = GenerateCase()
-    reader=MEDReader(FileNames=[fname])
-    ExpectedEntries=['TS0/Mesh/ComSup0/zeField0_MM0@@][@@GAUSS', 'TS0/Mesh/ComSup1/zeField0_MM1@@][@@GAUSS', 'TS0/Mesh/ComSup2/zeField0_MM2@@][@@GAUSS', 'TS0/Mesh/ComSup2/zeField1_MM0@@][@@GAUSS', 'TS0/Mesh/ComSup3/zeField1_MM1@@][@@GAUSS', 'TS0/Mesh/ComSup4/zeField2@@][@@P1', 'TS1/Mesh/ComSup0/Mesh@@][@@P0']
-    assert(reader.GetProperty("FieldsTreeInfo")[::2]==ExpectedEntries)
-
-    if '-D' not in sys.argv:
-        renderView1=GetActiveViewOrCreate('RenderView')
-        for entry in [[ExpectedEntries[0]],[ExpectedEntries[1]],[ExpectedEntries[2],ExpectedEntries[3]],[ExpectedEntries[4]]]:
-            reader=MEDReader(FileNames=[fname])
-            reader.FieldsStatus=entry
-            gaussPoints=ELGAfieldToPointGaussian(Input=reader)
-            gaussPoints.SelectSourceArray=['CELLS', 'ELGA@0']
-            Show(gaussPoints,renderView1)
-            pass
-
-        #
-
-        readerNodeField=MEDReader(FileNames=[fname])
-        readerNodeField.FieldsStatus=[ExpectedEntries[5]]
-        nodeFieldDisplay=Show(readerNodeField,renderView1)
-        ColorBy(nodeFieldDisplay,('POINTS','zeField2'))
-        nodeFieldDisplay.RescaleTransferFunctionToDataRange(True)
-        zeField2LUT=GetColorTransferFunction('zeField2')
-        zeField2LUT.RGBPoints=[990.6568528002015, 0.231373, 0.298039, 0.752941, 1009.0416245953584, 0.865003, 0.865003, 0.865003, 1027.4263963905153, 0.705882, 0.0156863, 0.14902]
-        zeField2LUT.ScalarRangeInitialized=1.
-        #
-        renderView1.ResetCamera()
-        renderView1.InteractionMode = '2D'
-        renderView1.CameraPosition = [3.0, 2.0, 10000.0]
-        renderView1.CameraFocalPoint = [3.0, 2.0, 0.0]
-        renderView1.ViewSize =[300,300]
-        renderView1.GetRenderWindow().DoubleBufferOff()
-        #
-
-        Render()
-
-        # compare with baseline image
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(renderView1.GetRenderWindow(), baseline_file,
-                                                                    threshold=1)
-        vtk.test.Testing.interact()
-        
-if __name__ == "__main__":
-    outImgName="testMEDReader14.png"
-    baseline_file = RetriveBaseLine(outImgName)
-    test(baseline_file)
-    pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader15.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader15.py
deleted file mode 100644 (file)
index 3daeaa8..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-paraview.simple._DisableFirstRenderCameraReset()
-
-def GenerateCase():
-  """ This test is a non regression test that checks the behaviour of MEDReader when a mesh has the same name than a field.
-  """
-
-  fname="testMEDReader15.med"
-
-  zeName="zeName"
-  c=DataArrayDouble([(0.,0.,0.),(1.,0.,0.),(0.,1.,0.)])
-  m=MEDFileUMesh()
-  m.setCoords(c)
-  m.setName(zeName)
-  m.write(fname,2)
-  f=MEDCouplingFieldDouble(ON_NODES)
-  f.setName(zeName)
-  f.setArray(DataArrayDouble([(-1.,1.,0.),(0.,1.,0.),(1.,1.,0.)]))
-  tmp=MEDCouplingUMesh.Build0DMeshFromCoords(m.getCoords()) ; tmp.setName(zeName)
-  f.setMesh(tmp)
-  WriteFieldUsingAlreadyWrittenMesh(fname,f)
-  return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-  fname = GenerateCase()
-  reader=MEDReader(FileNames=[fname])
-  ExpectedEntries=['TS0/zeName/ComSup0/zeName@@][@@P1','TS0/zeName/ComSup0/MESH@zeName@@][@@P1']
-  assert(reader.GetProperty("FieldsTreeInfo")[::2]==ExpectedEntries)
-
-  #
-  glyph1=Glyph(Input=reader,GlyphType='Arrow',ScaleArray='FamilyIdNode',OrientationArray='zeName',GlyphMode='All Points',ScaleFactor=0.1,GlyphTransform='Transform2')
-
-  if '-D' not in sys.argv:
-    renderView1=GetActiveViewOrCreate('RenderView')
-    renderView1.InteractionMode='3D'
-    zeNameLUT = GetColorTransferFunction('zeName')
-    zeNameLUT.RGBPoints = [1.0, 0.231373, 0.298039, 0.752941, 1.2071067811865475, 0.865003, 0.865003, 0.865003, 1.4142135623730951, 0.705882, 0.0156863, 0.14902]
-    zeNameLUT.ScalarRangeInitialized = 1.
-    zeNameLUT.VectorMode = 'Component'
-
-    glyph1Display=Show(glyph1,renderView1)
-    glyph1Display.ColorArrayName = ['POINTS', 'FamilyIdNode']
-    glyph1Display.LookupTable = zeNameLUT
-    # set scalar coloring
-    ColorBy(glyph1Display, ('POINTS', 'zeName'))
-    # rescale color and/or opacity maps used to include current data range
-    glyph1Display.RescaleTransferFunctionToDataRange(True)
-    # do not show color bar/color legend
-    glyph1Display.SetScalarBarVisibility(renderView1, False)
-    #
-    renderView1.ViewSize =[300,300]
-    renderView1.GetRenderWindow().DoubleBufferOff()
-    Render()
-
-    # compare with baseline image
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                threshold=1)
-    vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader15.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader16.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader16.py
deleted file mode 100644 (file)
index 377d9a1..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-from medcoupling import *
-from paraview.simple import *
-from paraview import servermanager
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-paraview.simple._DisableFirstRenderCameraReset()
-
-def GenerateCase():
-    """ This test is a non regression test of EDF8662 : This bug revealed that ELNOfieldToSurface and ELNOfieldToPointGaussian do not behave correctly after the call of ExtractGroup"""
-
-    fname="testMEDReader16.med"
-
-    arr=DataArrayDouble([0,1,2])
-    m=MEDCouplingCMesh() ; m.setCoords(arr,arr) ; m=m.buildUnstructured() ; m.setName("Mesh")
-    mm=MEDFileUMesh() ; mm.setMeshAtLevel(0,m)
-    grp0=DataArrayInt([0,1]) ; grp0.setName("grp0")
-    grp1=DataArrayInt([2,3]) ; grp1.setName("grp1")
-    grp2=DataArrayInt([1,2]) ; grp2.setName("grp2")
-    grp3=DataArrayInt([0,1,2,3]) ; grp3.setName("grp3")
-    mm.setGroupsAtLevel(0,[grp0,grp1,grp2,grp3])
-    f=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f.setMesh(m) ; f.setName("MyField") ; f.setTime(0.,0,0)
-    arr2=DataArrayDouble(4*4*2) ; arr2.iota() ; arr2.rearrange(2) ; arr2.setInfoOnComponents(["aa","bbb"])
-    f.setArray(arr2) ; arr2+=0.1 ; f.checkConsistencyLight()
-    mm.write(fname,2)
-    WriteFieldUsingAlreadyWrittenMesh(fname,f)
-    return fname, arr2
-
-
-@WriteInTmpDir
-def test():
-    fname,arr2 = GenerateCase()
-    #
-    reader=MEDReader(FileNames=[fname])
-    ExpectedEntries=['TS0/Mesh/ComSup0/MyField@@][@@GSSNE','TS1/Mesh/ComSup0/Mesh@@][@@P0']
-    assert(reader.GetProperty("FieldsTreeInfo")[::2]==ExpectedEntries)
-    reader.FieldsStatus=['TS0/Mesh/ComSup0/MyField@@][@@GSSNE']
-    ExtractGroup1 = ExtractGroup(Input=reader)
-    #ExtractGroup1.UpdatePipelineInformation()
-    ExtractGroup1.AllGroups=["GRP_grp1"]
-    ELNOfieldToSurface1=ELNOfieldToSurface(Input=ExtractGroup1)
-    ELNOfieldToPointGaussian1=ELNOfieldToPointGaussian(Input=ExtractGroup1)
-    ELNOfieldToPointGaussian1.SelectSourceArray=['CELLS','ELNO@MyField']
-    for elt in [ELNOfieldToSurface1,ELNOfieldToPointGaussian1]:
-        elnoMesh=servermanager.Fetch(ELNOfieldToPointGaussian1,0)
-        vtkArrToTest=elnoMesh.GetBlock(0).GetPointData().GetArray("MyField")
-        assert(vtkArrToTest.GetNumberOfTuples()==8)
-        assert(vtkArrToTest.GetNumberOfComponents()==2)
-        assert(vtkArrToTest.GetComponentName(0)==arr2.getInfoOnComponent(0))
-        assert(vtkArrToTest.GetComponentName(1)==arr2.getInfoOnComponent(1))
-        vals=[vtkArrToTest.GetValue(i) for i in range(16)]
-        assert(arr2[8:].isEqualWithoutConsideringStr(DataArrayDouble(vals,8,2),1e-12))
-        pass
-    #
-    ExtractGroup1.AllGroups=["GRP_grp2"]
-    for elt in [ELNOfieldToSurface1,ELNOfieldToPointGaussian1]:
-        elnoMesh=servermanager.Fetch(ELNOfieldToSurface1)
-        vtkArrToTest=elnoMesh.GetBlock(0).GetPointData().GetArray("MyField")
-        assert(vtkArrToTest.GetNumberOfTuples()==8)
-        assert(vtkArrToTest.GetNumberOfComponents()==2)
-        assert(vtkArrToTest.GetComponentName(0)==arr2.getInfoOnComponent(0))
-        assert(vtkArrToTest.GetComponentName(1)==arr2.getInfoOnComponent(1))
-        vals=[vtkArrToTest.GetValue(i) for i in range(16)]
-        assert(arr2[4:12].isEqualWithoutConsideringStr(DataArrayDouble(vals,8,2),1e-12))
-        pass
-    # important to check that if all the field is present that it is OK (check of the optimization)
-    ExtractGroup1.AllGroups=["GRP_grp3"]
-    for elt in [ELNOfieldToSurface1,ELNOfieldToPointGaussian1]:
-        elnoMesh=servermanager.Fetch(ELNOfieldToSurface1)
-        vtkArrToTest=elnoMesh.GetBlock(0).GetPointData().GetArray("MyField")
-        assert(vtkArrToTest.GetNumberOfTuples()==16)
-        assert(vtkArrToTest.GetNumberOfComponents()==2)
-        assert(vtkArrToTest.GetComponentName(0)==arr2.getInfoOnComponent(0))
-        assert(vtkArrToTest.GetComponentName(1)==arr2.getInfoOnComponent(1))
-        vals=[vtkArrToTest.GetValue(i) for i in range(32)]
-        assert(arr2.isEqualWithoutConsideringStr(DataArrayDouble(vals,16,2),1e-12))
-        pass
-    ELNOfieldToSurface1=ELNOfieldToSurface(Input=reader)
-    ELNOfieldToPointGaussian1=ELNOfieldToPointGaussian(Input=reader)
-    ELNOfieldToPointGaussian1.SelectSourceArray=['ELNO@MyField']
-    for elt in [ELNOfieldToSurface1,ELNOfieldToPointGaussian1]:
-        elnoMesh=servermanager.Fetch(ELNOfieldToSurface1)
-        vtkArrToTest=elnoMesh.GetBlock(0).GetPointData().GetArray("MyField")
-        assert(vtkArrToTest.GetNumberOfTuples()==16)
-        assert(vtkArrToTest.GetNumberOfComponents()==2)
-        assert(vtkArrToTest.GetComponentName(0)==arr2.getInfoOnComponent(0))
-        assert(vtkArrToTest.GetComponentName(1)==arr2.getInfoOnComponent(1))
-        vals=[vtkArrToTest.GetValue(i) for i in range(32)]
-        assert(arr2.isEqualWithoutConsideringStr(DataArrayDouble(vals,16,2),1e-12))
-        pass
-
-if __name__ == "__main__":
-  test()
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader17.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader17.py
deleted file mode 100644 (file)
index abfcdec..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-from medcoupling import *
-from paraview.simple import *
-from paraview import servermanager
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-paraview.simple._DisableFirstRenderCameraReset()
-
-def GenerateCase():
-    """ This test is a non regression test of EDF9622."""
-
-    fname="testMEDReader17.med"
-
-    arr=DataArrayDouble([0,1,2])
-    m=MEDCouplingCMesh() ; m.setCoords(arr,arr) ; m=m.buildUnstructured() ; m.setName("Mesh")
-    mm=MEDFileUMesh() ; mm.setMeshAtLevel(0,m)
-    grp0=DataArrayInt([0,1]) ; grp0.setName("grp0")
-    grp1=DataArrayInt([2,3]) ; grp1.setName("grp1")
-    grp2=DataArrayInt([1,2]) ; grp2.setName("grp2")
-    grp3=DataArrayInt([0,1,2,3]) ; grp3.setName("grp3")
-    mm.setGroupsAtLevel(0,[grp0,grp1,grp2,grp3])
-    f=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f.setMesh(m) ; f.setName("MyField") ; f.setTime(0.,0,0)
-    arr2=DataArrayDouble(4*4*2) ; arr2.iota() ; arr2.rearrange(2) ; arr2.setInfoOnComponents(["aa","bbb"])
-    f.setArray(arr2) ; arr2+=0.1 ; f.checkConsistencyLight()
-    mm.write(fname,2)
-    WriteFieldUsingAlreadyWrittenMesh(fname,f)
-    return fname
-
-@WriteInTmpDir
-def test():
-    fname = GenerateCase()
-    #
-    reader=MEDReader(FileNames=[fname])
-    ExpectedEntries=['TS0/Mesh/ComSup0/MyField@@][@@GSSNE','TS1/Mesh/ComSup0/Mesh@@][@@P0']
-    assert(reader.GetProperty("FieldsTreeInfo")[::2]==ExpectedEntries)
-    reader.FieldsStatus=['TS0/Mesh/ComSup0/MyField@@][@@GSSNE']
-    ExtractGroup1 = ExtractGroup(Input=reader)
-    #ExtractGroup1.UpdatePipelineInformation()
-    ExtractGroup1.AllGroups=["GRP_grp1"]
-    ELNOfieldToPointGaussian1=ELNOfieldToPointGaussian(Input=ExtractGroup1)
-    ELNOfieldToPointGaussian1.SelectSourceArray=['CELLS','ELNO@MyField']
-    #
-    ELNOfieldToPointGaussian1=ELNOfieldToPointGaussian(Input=reader)
-    ELNOfieldToPointGaussian1.SelectSourceArray=['CELLS','ELNO@MyField']
-    ExtractGroup1 = ExtractGroup(Input=ELNOfieldToPointGaussian1)
-    #ExtractGroup1.UpdatePipelineInformation()
-    ExtractGroup1.AllGroups=["GRP_grp1"]
-    #ExtractGroup1.UpdatePipeline()
-    res=servermanager.Fetch(ExtractGroup1,0)
-    assert(res.GetBlock(0).GetNumberOfCells()==8)
-    vtkArrToTest=res.GetBlock(0).GetPointData().GetArray("MyField")
-    assert(vtkArrToTest.GetNumberOfComponents()==2)
-    assert(vtkArrToTest.GetNumberOfTuples()==8)
-    vals=[vtkArrToTest.GetValue(i) for i in range(16)]
-    assert(DataArrayDouble([(16.1,17.1),(18.1,19.1),(20.1,21.1),(22.1,23.1),(24.1,25.1),(26.1,27.1),(28.1,29.1),(30.1,31.1)]).isEqual(DataArrayDouble(vals,8,2),1e-12))
-
-if __name__ == "__main__":
-    test()
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader18.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader18.py
deleted file mode 100644 (file)
index 9ce8ee4..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2015-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-    """Non regression test for bug EDF11343. Extract group on groups mixing cells entities and node entities."""
-    fname="testMEDReader18.med"
-    arr1=DataArrayDouble(5) ; arr1.iota()
-    arr2=DataArrayDouble([0,1])
-    m=MEDCouplingCMesh() ; m.setCoords(arr1,arr2)
-    m.setName("mesh")
-    m=m.buildUnstructured()
-    #
-    mm=MEDFileUMesh()
-    mm[0]=m
-    #
-    grp0=DataArrayInt([1,2]) ; grp0.setName("grp0")
-    grp1=DataArrayInt([3,4,8,9]) ; grp1.setName("grp1")
-    #
-    mm.addGroup(0,grp0)
-    mm.addGroup(1,grp1)
-    #
-    mm.write(fname,2)
-    return fname
-
-@WriteInTmpDir
-def test():
-  fname = GenerateCase()
-  reader=MEDReader(FileNames=[fname])
-  reader.FieldsStatus=['TS0/mesh/ComSup0/mesh@@][@@P0']
-  ExtractGroup1 = ExtractGroup(Input=reader)
-  ExtractGroup1.AllGroups=["GRP_grp0","GRP_grp1"]
-  #ExtractGroup1.UpdatePipelineInformation()
-  res=servermanager.Fetch(ExtractGroup1,0)
-  assert(res.GetNumberOfBlocks()==2)
-  assert(res.GetBlock(1).GetNumberOfCells()==1)
-  assert(res.GetBlock(0).GetNumberOfCells()==2)
-  pass
-
-if __name__ == "__main__":
-    test()
-    pass
-
-
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader19.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader19.py
deleted file mode 100644 (file)
index 3780bcc..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2015-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-#### import the simple module from the paraview
-#### disable automatic camera reset on 'Show'
-paraview.simple._DisableFirstRenderCameraReset()
-import vtk.test.Testing # this line must be here. If not SIGSEGV ! KW10658
-
-def GenerateCase():
-    """ This is a non regression bug revealed during training session. The bug is linked to the native Threshold VTK filter. Corrected with PV version >= 4.4. (KW10658)
-    There is still a problem when both image comparison and Fetch are enable together."""
-    fname="testMEDReader19.med"
-    meshName="mesh"
-    mm=MEDFileUMesh()
-    coo=DataArrayDouble([(-0.3,-0.3),(0.2,-0.3),(0.7,-0.3),(-0.3,0.2),(0.2,0.2),(0.7,0.2),(-0.3,0.7),(0.2,0.7),(0.7,0.7)])
-    conn0=[[NORM_TRI3,1,4,2],[NORM_TRI3,4,5,2],[NORM_QUAD4,0,3,4,1],[NORM_QUAD4,6,7,4,3],[NORM_QUAD4,7,8,5,4]]
-    conn1=[[NORM_SEG2,4,5],[NORM_SEG2,5,2],[NORM_SEG2,1,0],[NORM_SEG2,6,7]]
-    m0=MEDCouplingUMesh() ; m0.setCoords(coo) ; m0.setMeshDimension(2) ; m0.allocateCells(0)
-    for c in conn0:
-        m0.insertNextCell(c[0],c[1:])
-    mm[0]=m0
-    m1=MEDCouplingUMesh() ; m1.setCoords(coo) ; m1.setMeshDimension(1) ; m1.allocateCells(0)
-    for c in conn1:
-        m1.insertNextCell(c[0],c[1:])
-    mm[-1]=m1
-    mm.setName(meshName)
-    mm.write(fname,2)
-    return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-    fname = GenerateCase()
-    # create a new 'MED Reader'
-    testMEDReader19med = MEDReader(FileNames=[fname])
-    testMEDReader19med.FieldsStatus = ['TS0/mesh/ComSup0/mesh@@][@@P0']
-    testMEDReader19med.TimesFlagsStatus = ['0000']
-    # Properties modified on testMEDReader19med
-    testMEDReader19med.FieldsStatus = ['TS0/mesh/ComSup0/mesh@@][@@P0']
-
-    if '-D' not in sys.argv:
-        # get active view
-        renderView1 = GetActiveViewOrCreate('RenderView')
-
-        # reset view to fit data
-        renderView1.ResetCamera()
-
-        #changing interaction mode based on data extents
-        renderView1.InteractionMode = '2D'
-        renderView1.CameraPosition = [0.2, 0.2, 10000.0]
-        renderView1.CameraFocalPoint = [0.2, 0.2, 0.0]
-        testMEDReader19med.UpdatePipeline()
-        # create a new 'Extract Cell Type'
-        extractCellType1 = ExtractCellType(Input=testMEDReader19med)
-        extractCellType1.AllGeoTypes = []
-
-        # Properties modified on extractCellType1
-        extractCellType1.AllGeoTypes = ['Triangle']
-
-        # show data in view
-        extractCellType1Display = Show(extractCellType1, renderView1)
-        # trace defaults for the display properties.
-        extractCellType1Display.ColorArrayName = [None, '']
-        extractCellType1Display.ScalarOpacityUnitDistance = 0.5
-
-        renderView1.InteractionMode = '2D'
-        renderView1.CameraPosition = [0.2, 0.2, 10000.0]
-        renderView1.CameraFocalPoint = [0.2, 0.2, 0.0]
-        renderView1.CameraParallelScale = 0.7071067811865476
-
-        res=servermanager.Fetch(extractCellType1,0)
-        assert(res.GetBlock(0).GetNumberOfCells()==2) # problem was here in PV4.3.1
-
-        # compare with baseline image # Waiting KW return to uncomment this part because SIGSEGV in PV5.
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file, threshold=1)
-        vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-    imgName="testMEDReader19.png"
-    baseline_file = RetriveBaseLine(imgName)
-    test(baseline_file)
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader2.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader2.py
deleted file mode 100644 (file)
index 5c7a35f..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-  """ This use case is a mesh containing a large number of orphan cells (cells having no field lying on them)
-  """
-  fname="testMEDReader2.med"
-  #########
-  arrX=DataArrayDouble(7) ; arrX.iota()
-  arrY=DataArrayDouble(7) ; arrY.iota()
-  arrZ=DataArrayDouble(7) ; arrZ.iota()
-  m=MEDCouplingCMesh()
-  m.setCoords(arrX,arrY,arrZ)
-  m=m.buildUnstructured() ; m.setName("mesh")
-  tmp=m[3*36:4*36]
-  tmp=tmp.buildDescendingConnectivity()[0]
-  nodeIds=tmp.findNodesOnPlane([0.,0.,3.],[0.,0.,1.],1e-12)
-  cellIds=tmp.getCellIdsLyingOnNodes(nodeIds,True)
-  m1=tmp[cellIds]
-  mm=MEDFileUMesh()
-  mm.setMeshAtLevel(0,m)
-  mm.setMeshAtLevel(-1,m1)
-  mm.write(fname,2)
-  #
-  pfl=DataArrayInt([7,8,9,10,13,14,15,16,19,20,21,22,25,26,27,28]) ; pfl.setName("pfl")
-  f=MEDCouplingFieldDouble(ON_CELLS) ; f.setName("ACellField")
-  arr=DataArrayDouble(16) ; arr.iota()
-  arr2=arr.deepCopy() ; arr2.reverse()
-  arr=DataArrayDouble.Meld(arr,arr2) ; arr.setInfoOnComponents(["aa","bbb"])
-  f.setArray(arr)
-  f1ts=MEDFileField1TS()
-  f1ts.setFieldProfile(f,mm,-1,pfl)
-  f1ts.write(fname,0)
-  return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-  fname = GenerateCase()
-  ################### MED write is done -> Go to MEDReader
-  testMEDReader1=MEDReader(FileNames=[fname],registrationName='testMEDReader2.med')
-  testMEDReader1.FieldsStatus=['TS0/mesh/ComSup0/ACellField@@][@@P0']
-  testMEDReader2=MEDReader(FileNames=[fname],registrationName='testMEDReader2_bis.med')
-  testMEDReader2.FieldsStatus=['TS0/mesh/ComSup1/mesh@@][@@P0']
-  GroupDatasets1=GroupDatasets(Input=[testMEDReader1,testMEDReader2])
-  #GroupDatasets1.BlockNames = ['testMEDReader2.med', 'testMEDReader2_bis.med']
-
-  Clip1 = Clip(ClipType="Plane",Input=GroupDatasets1)
-  Clip1.Scalars=['FamilyIdCell']
-  Clip1.ClipType.Origin=[3.0, 3.0, 3.0]
-  Clip1.Invert=1
-  Clip1.ClipType.Normal=[0.9255623174457069, 0.0027407477590518157, 0.378585373233375]
-  Clip1.Scalars=['CELLS']
-
-  DataRepresentation4 = Show()
-  DataRepresentation4.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-  DataRepresentation4.SelectionCellFieldDataArrayName = 'ACellField'
-  DataRepresentation4.ScalarOpacityUnitDistance = 1.61104723630366
-  DataRepresentation4.BlockSelectors = ['/Root']
-  DataRepresentation4.ScaleFactor = 0.6000000000000001
-  DataRepresentation4.Visibility = 1
-  DataRepresentation4.Representation = 'Wireframe'
-  ExtractBlock1 = ExtractBlock(Input=Clip1)
-  ExtractBlock1.Selectors = ['/Root/testMEDReader2med']
-
-  DataRepresentation5 = Show()
-  DataRepresentation5.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-  DataRepresentation5.SelectionCellFieldDataArrayName = 'FamilyIdCell'
-  DataRepresentation5.ScaleFactor = 0.6
-  a2_ACellField_PVLookupTable=GetLookupTableForArray( "ACellField", 2, RGBPoints=[10.63014581273465, 0.23, 0.299, 0.754, 15.0, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0, AllowDuplicateScalars=1 )
-  a2_ACellField_PiecewiseFunction=CreatePiecewiseFunction( Points=[0.0, 0.0, 0.5, 0.0, 1.0, 1.0, 0.5, 0.0] )
-  a2_ACellField_PVLookupTable.ScalarOpacityFunction = a2_ACellField_PiecewiseFunction
-  DataRepresentation5.ScalarOpacityFunction = a2_ACellField_PiecewiseFunction
-  DataRepresentation5.LookupTable = a2_ACellField_PVLookupTable
-  DataRepresentation5.ColorArrayName = ("CELLS", "ACellField")
-
-  if '-D' not in sys.argv:
-    RenderView1 = GetRenderView()
-    RenderView1.CenterOfRotation = [3.0, 3.0, 3.0]
-    RenderView1.CameraViewUp = [-0.03886073885859842, 0.48373409998193495, 0.8743518533691291]
-    RenderView1.CameraPosition = [7.351939549758929, -5.688193007926853, 8.000155023042788]
-    RenderView1.CameraFocalPoint = [2.9999999999999996, 2.9999999999999987, 2.9999999999999982]
-
-    RenderView1.ViewSize =[300,300]
-    Render()
-
-    #WriteImage(outImgName)
-
-    # compare with baseline image
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                threshold=1)
-    vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader2.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader20.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader20.py
deleted file mode 100644 (file)
index 673fb12..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2016-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-# non regression test that emulates https://ageay@git.salome-platform.org/gitpub/samples/datafiles.git Med/ResOK_0000.med
-# This test point error during commit efd9331a9455785d0f04b75 in PARAVIS
-# Commit of the correction : a4e89b15c2faff6341ab9c3d78abc in PARAVIS
-# Due to mistake in MEDReader, the family field array on nodes was deleted twice when changing time step
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-#### disable automatic camera reset on 'Show'
-paraview.simple._DisableFirstRenderCameraReset()
-
-def GenerateCase():
-    fname="testMEDReader20.med"
-    nb=10
-    arrX=DataArrayDouble(nb+1) ; arrX.iota()
-    arrY=DataArrayDouble([0.,1.])
-    m=MEDCouplingCMesh() ; m.setCoords(arrX,arrY) ; m=m.buildUnstructured(); m.setName("mesh") ; m.simplexize(0)
-    mm=MEDFileUMesh() ; mm[0]=m
-    m1=m.computeSkin() ; mm[-1]=m1
-    #
-    f0=DataArrayInt(m1.getNumberOfCells()) ; f0.iota() ; mm.setFamilyFieldArr(-1,f0)
-    f1=DataArrayInt(m1.getNumberOfNodes()) ; f1.iota() ; mm.setFamilyFieldArr(1,f1) # <- very important the bug can be shown here
-    #
-    nbCells=m1.getNumberOfCells() ; nbNodes=m.getNumberOfNodes()
-    mm.write(fname,2)
-    for i in range(5):
-        f=MEDCouplingFieldDouble(ON_CELLS) ; f.setMesh(m)
-        f.setName("Field")
-        arr=DataArrayInt(2*nb) ; arr.iota(i) ; arr%=nb ; arr=arr.convertToDblArr()
-        f.setArray(arr) ; f.setTime(float(i),i,0)
-        WriteFieldUsingAlreadyWrittenMesh(fname,f)
-        #
-        f=MEDCouplingFieldDouble(ON_CELLS) ; f.setMesh(m1)
-        f.setName("Field")
-        arr=DataArrayInt(nbCells) ; arr.iota(i) ; arr%=nbCells ; arr=arr.convertToDblArr()
-        f.setArray(arr) ; f.setTime(float(i),i,0)
-        WriteFieldUsingAlreadyWrittenMesh(fname,f)
-        #
-        f=MEDCouplingFieldDouble(ON_NODES) ; f.setMesh(m)
-        f.setName("FieldNode")
-        arr=DataArrayDouble(nbNodes) ; arr[:]=float(i)
-        f.setArray(arr) ; f.setTime(float(i),i,0)
-        WriteFieldUsingAlreadyWrittenMesh(fname,f)
-        pass
-    return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-    fname = GenerateCase()
-    #####################
-    # create a new 'MED Reader'
-    testMEDReader20med = MEDReader(FileNames=[fname])
-    testMEDReader20med.FieldsStatus = ['TS0/mesh/ComSup0/Field@@][@@P0']
-    testMEDReader20med.TimesFlagsStatus = ['0000', '0001', '0002', '0003', '0004']
-
-    # get animation scene
-    animationScene1 = GetAnimationScene()
-
-    # update animation scene based on data timesteps
-    animationScene1.UpdateAnimationUsingDataTimeSteps()
-
-    if '-D' not in sys.argv:
-        # get active view
-        renderView1 = GetActiveViewOrCreate('RenderView')
-        # uncomment following to set a specific view size
-        # renderView1.ViewSize = [610, 477]
-
-        # show data in view
-        testMEDReader20medDisplay = Show(testMEDReader20med, renderView1)
-        # trace defaults for the display properties.
-        testMEDReader20medDisplay.ColorArrayName = [None, '']
-        testMEDReader20medDisplay.GlyphType = 'Arrow'
-        testMEDReader20medDisplay.ScalarOpacityUnitDistance = 4.664739046219201
-
-        # reset view to fit data
-        renderView1.ResetCamera()
-
-        #changing interaction mode based on data extents
-        renderView1.InteractionMode = '2D'
-        renderView1.CameraPosition = [5.0, 0.5, 10000.0]
-        renderView1.CameraFocalPoint = [5.0, 0.5, 0.0]
-
-        # set scalar coloring
-        ColorBy(testMEDReader20medDisplay, ('CELLS', 'Field'))
-
-        # rescale color and/or opacity maps used to include current data range
-        testMEDReader20medDisplay.RescaleTransferFunctionToDataRange(True)
-
-        # do not show color bar/color legend
-        testMEDReader20medDisplay.SetScalarBarVisibility(renderView1, False)
-
-        # get color transfer function/color map for 'Field'
-        fieldLUT = GetColorTransferFunction('Field')
-
-        # get opacity transfer function/opacity map for 'Field'
-        fieldPWF = GetOpacityTransferFunction('Field')
-
-        animationScene1.GoToNext() # <- very important to see the bug play with time steps...
-        animationScene1.GoToNext()
-        animationScene1.GoToNext()
-        animationScene1.GoToNext()
-        animationScene1.GoToPrevious()
-        animationScene1.GoToPrevious()
-
-        # current camera placement for renderView1
-        renderView1.InteractionMode = '2D'
-        renderView1.CameraPosition = [5.0, 0.5, 10000.0]
-        renderView1.CameraFocalPoint = [5.0, 0.5, 0.0]
-        renderView1.CameraParallelScale = 5.024937810560445
-
-        #
-
-        renderView1.ViewSize =[300,300]
-        Render()
-        #WriteImage(png)
-
-        #### saving camera placements for all active views
-
-        # current camera placement for renderView1
-        renderView1.InteractionMode = '2D'
-        renderView1.CameraPosition = [5.0, 0.5, 10000.0]
-        renderView1.CameraFocalPoint = [5.0, 0.5, 0.0]
-        renderView1.CameraParallelScale = 5.024937810560445
-
-        # compare with baseline image
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file, threshold=1)
-        vtk.test.Testing.interact()
-        pass
-
-if __name__ == "__main__":
-  outImgName="testMEDReader20.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader21.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader21.py
deleted file mode 100644 (file)
index c4382cf..0000000
+++ /dev/null
@@ -1,171 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2015-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-  """ This is a non regression EDF12599"""
-  fname="testMEDReader21.med"
-  fieldName="MyField"
-  meshName="mesh"
-  m=MEDFileUMesh()
-  m0=MEDCouplingUMesh(meshName,1)
-  m0.setCoords(DataArrayDouble([(0.,0.,0),(1.,0.,0.),(2.,0.,0.)]))
-  m0.allocateCells()
-  m0.insertNextCell(NORM_SEG2,[0,1])
-  m0.insertNextCell(NORM_SEG2,[1,2])
-  m[0]=m0
-  #
-  f=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f.setName(fieldName)
-  f.setMesh(m0) ; f.setArray(DataArrayDouble([1.,7.,3.,2.]))
-  WriteField(fname,f,True)
-  return fname, meshName, fieldName
-
-@WriteInTmpDir
-def test(baseline_file):
-  fname, meshName, fieldName = GenerateCase()
-  ########
-  testTotomed = MEDReader(FileNames=[fname])
-  testTotomed.FieldsStatus = ['TS0/%s/ComSup0/%s@@][@@GSSNE'%(meshName,fieldName)]
-  testTotomed.TimesFlagsStatus = ['0000']
-
-  if '-D' not in sys.argv:
-    # get active view
-    renderView1 = GetActiveViewOrCreate('RenderView')
-    # uncomment following to set a specific view size
-    # renderView1.ViewSize = [739, 503]
-
-    # show data in view
-    testTotomedDisplay = Show(testTotomed, renderView1)
-    # trace defaults for the display properties.
-    testTotomedDisplay.ColorArrayName = [None, '']
-    testTotomedDisplay.GlyphType = 'Arrow'
-    testTotomedDisplay.ScalarOpacityUnitDistance = 1.5874010519681994
-
-    # reset view to fit data
-    renderView1.ResetCamera()
-
-    #changing interaction mode based on data extents
-    renderView1.InteractionMode = '2D'
-    renderView1.CameraPosition = [1.0, 10000.0, 10000.0]
-    renderView1.CameraFocalPoint = [1.0, 0.0, 0.0]
-    renderView1.CameraViewUp = [1.0, 1.0, 0.0]
-
-    # set scalar coloring
-    ColorBy(testTotomedDisplay, ('FIELD', 'vtkBlockColors'))
-
-    # hide color bar/color legend
-    testTotomedDisplay.SetScalarBarVisibility(renderView1, False)
-
-    # get color transfer function/color map for 'vtkBlockColors'
-    vtkBlockColorsLUT = GetColorTransferFunction('vtkBlockColors')
-
-    # get opacity transfer function/opacity map for 'vtkBlockColors'
-    vtkBlockColorsPWF = GetOpacityTransferFunction('vtkBlockColors')
-
-    # create a new 'ELNO Mesh'
-    eLNOMesh1 = ELNOfieldToSurface(Input=testTotomed)
-
-    # Properties modified on eLNOMesh1
-    eLNOMesh1.ShrinkFactor = 0.5 # <- test is here !!!!!!!!
-
-    # show data in view
-    eLNOMesh1Display = Show(eLNOMesh1, renderView1)
-    # trace defaults for the display properties.
-    eLNOMesh1Display.ColorArrayName = [None, '']
-    eLNOMesh1Display.GlyphType = 'Arrow'
-    eLNOMesh1Display.ScalarOpacityUnitDistance = 1.1905507889761495
-
-    # hide data in view
-    Hide(testTotomed, renderView1)
-
-    # set scalar coloring
-    ColorBy(eLNOMesh1Display, ('FIELD', 'vtkBlockColors'))
-
-    # show color bar/color legend
-    eLNOMesh1Display.SetScalarBarVisibility(renderView1, False)
-
-    # set scalar coloring
-    ColorBy(eLNOMesh1Display, ('POINTS', 'MyField'))
-
-    # rescale color and/or opacity maps used to include current data range
-    eLNOMesh1Display.RescaleTransferFunctionToDataRange(True)
-
-    # show color bar/color legend
-    eLNOMesh1Display.SetScalarBarVisibility(renderView1, False)
-
-    # get color transfer function/color map for 'MyField'
-    myFieldLUT = GetColorTransferFunction('MyField')
-
-    # get opacity transfer function/opacity map for 'MyField'
-    myFieldPWF = GetOpacityTransferFunction('MyField')
-
-    # hide color bar/color legend
-    eLNOMesh1Display.SetScalarBarVisibility(renderView1, False)
-
-    # create a new 'Glyph'
-    glyph1 = Glyph(Input=eLNOMesh1,
-        GlyphType='Arrow')
-    glyph1.ScaleArray = []
-    glyph1.OrientationArray = ['POINTS', 'No orientation array']
-    glyph1.ScaleFactor = 0.15000000000000002
-    glyph1.GlyphTransform = 'Transform2'
-
-    # Properties modified on glyph1
-    glyph1.GlyphType = 'Sphere'
-    glyph1.ScaleFactor = 0.15
-
-    # show data in view
-    glyph1Display = Show(glyph1, renderView1)
-    # trace defaults for the display properties.
-    glyph1Display.ColorArrayName = ['POINTS', 'MyField']
-    glyph1Display.LookupTable = myFieldLUT
-    glyph1Display.GlyphType = 'Arrow'
-
-    # hide color bar/color legend
-    glyph1Display.SetScalarBarVisibility(renderView1, False)
-
-    #### saving camera placements for all active views
-
-    # current camera placement for renderView1
-    renderView1.InteractionMode = '2D'
-    renderView1.CameraPosition = [0.9999999999999908, 9999.999999999995, 9999.999999999993]
-    renderView1.CameraFocalPoint = [1.0, 0.0, 0.0]
-    renderView1.CameraViewUp = [0.6331899945158901, 0.547298104713038, -0.5472981047130381]
-    renderView1.CameraParallelScale = 0.6930835077290218
-    renderView1.ViewSize = [739,503]
-
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file, threshold=1)
-    vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  imgName="testMEDReader21.png"
-  baseline_file = RetriveBaseLine(imgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader22.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader22.py
deleted file mode 100644 (file)
index 4300951..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2020-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-
-__doc__ = """
-Test of GroupsAsMultiBlocks filter in the MEDReader plugin.
-"""
-
-from paraview.simple import *
-paraview.simple._DisableFirstRenderCameraReset()
-from vtk.util import numpy_support
-import numpy as np
-import medcoupling as mc
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def MyAssert(clue):
-    if not clue:
-        raise RuntimeError("Assertion failed !")
-
-def generateCase(fname):
-    arr = mc.DataArrayDouble([0,1,2,3,4,5])
-    m = mc.MEDCouplingCMesh()
-    m.setCoords(arr,arr)
-    m = m.buildUnstructured()
-    m.changeSpaceDimension(3,0.)
-    m.setName("mesh")
-    mm = mc.MEDFileUMesh()
-    mm[0] = m
-    grp_BottomLeft = mc.DataArrayInt([0,1,5,6]) ; grp_BottomLeft.setName("BottomLeft")
-    grp_BottomRight = mc.DataArrayInt([3,4,8,9]) ; grp_BottomRight.setName("BottomRight")
-    grp_TopLeft = mc.DataArrayInt([15,16,20,21]) ; grp_TopLeft.setName("TopLeft")
-    grp_TopRight = mc.DataArrayInt([18,19,23,24]) ; grp_TopRight.setName("TopRight")
-    mm.setGroupsAtLevel(0,[grp_BottomLeft,grp_BottomRight,grp_TopLeft,grp_TopRight])
-    mm.write(fname,2)
-    f = mc.MEDCouplingFieldDouble(mc.ON_CELLS)
-    f.setMesh(m)
-    f.setArray(m.computeCellCenterOfMass().magnitude())
-    f.setName("field")
-    mc.WriteFieldUsingAlreadyWrittenMesh(fname,f)
-    f2 = mc.MEDCouplingFieldDouble(mc.ON_NODES)
-    f2.setMesh(m)
-    f2.setArray(m.getCoords().magnitude())
-    f2.setName("field2")
-    mc.WriteFieldUsingAlreadyWrittenMesh(fname,f2)
-    return f,f2,grp_BottomLeft,grp_BottomRight,grp_TopLeft,grp_TopRight
-
-@WriteInTmpDir
-def test():
-    fname = "testMEDReader22.med"
-    f,f2,grp_BottomLeft,grp_BottomRight,grp_TopLeft,grp_TopRight = generateCase(fname)
-    reader = MEDReader(FileNames=[fname])
-    reader.FieldsStatus = ['TS0/mesh/ComSup0/field@@][@@P0','TS0/mesh/ComSup0/field2@@][@@P1','TS0/mesh/ComSup0/mesh@@][@@P0']
-    reader.TimesFlagsStatus = ['0000']
-
-    groupsNames = GroupsNames(Input=reader)
-    groupsNames.UpdatePipeline()
-    MyAssert( servermanager.Fetch(groupsNames).GetNumberOfBlocks() == 1 )
-    gn = servermanager.Fetch(groupsNames).GetBlock(0)
-    blockIDS = numpy_support.vtk_to_numpy(gn.GetColumnByName("Block ID"))
-    MyAssert(np.all(blockIDS==np.array([0,1,2,3],dtype=np.int32)))
-    grpNames = gn.GetColumnByName("Group Name")
-    MyAssert(grpNames.GetNumberOfTuples()==4)
-    MyAssert([grpNames.GetValue(i) for i in range(4)] == ['BottomLeft','BottomRight','TopLeft','TopRight'])
-    
-    groupsAsMultiBlocks = GroupsAsMultiBlocks(Input=reader)
-    groupsAsMultiBlocks.UpdatePipeline()
-    blocks = servermanager.Fetch(groupsAsMultiBlocks)
-    MyAssert(blocks.GetNumberOfBlocks()==4)
-    # test of bottom left
-    ds_bl = blocks.GetBlock(0)
-    MyAssert(ds_bl.GetNumberOfCells()==4)
-    bl_ref_conn = np.array([ 1,  0,  6,  7,  2,  1,  7,  8,  7,  6, 12, 13,  8,  7, 13, 14],dtype=np.int32)
-    MyAssert(ds_bl.GetCellData().GetNumberOfArrays() == 4 )# 3 for field, mesh and FamilyIdCell +1 for vtkGhostType
-    MyAssert(np.all( bl_ref_conn == numpy_support.vtk_to_numpy( ds_bl.GetCells().GetConnectivityArray() )) )
-    MyAssert( mc.DataArrayDouble(numpy_support.vtk_to_numpy( ds_bl.GetCellData().GetArray("field") )).isEqual(f.getArray()[grp_BottomLeft],1e-12) )
-    # test of bottom right
-    ds_br = blocks.GetBlock(1)
-    MyAssert(ds_br.GetNumberOfCells()==4)
-    br_ref_conn = np.array([ 4,  3,  9, 10,  5,  4, 10, 11, 10,  9, 15, 16, 11, 10, 16, 17],dtype=np.int32)
-    MyAssert(np.all( br_ref_conn == numpy_support.vtk_to_numpy( ds_br.GetCells().GetConnectivityArray() )) )
-    MyAssert( mc.DataArrayDouble(numpy_support.vtk_to_numpy( ds_br.GetCellData().GetArray("field") )).isEqual(f.getArray()[grp_BottomRight],1e-12) )
-    # test of top left
-    ds_tl = blocks.GetBlock(2)
-    MyAssert(ds_tl.GetNumberOfCells()==4)
-    tl_ref_conn = np.array([ 19, 18, 24, 25, 20, 19, 25, 26, 25, 24, 30, 31, 26, 25, 31, 32],dtype=np.int32)
-    MyAssert(np.all( tl_ref_conn == numpy_support.vtk_to_numpy( ds_tl.GetCells().GetConnectivityArray() )) )
-    MyAssert( mc.DataArrayDouble(numpy_support.vtk_to_numpy( ds_tl.GetCellData().GetArray("field") )).isEqual(f.getArray()[grp_TopLeft],1e-12) )
-    # test of top right
-    ds_tr = blocks.GetBlock(3)
-    MyAssert(ds_tr.GetNumberOfCells()==4)
-    tr_ref_conn = np.array([ 22, 21, 27, 28, 23, 22, 28, 29, 28, 27, 33, 34, 29, 28, 34, 35],dtype=np.int32)
-    MyAssert(np.all( tr_ref_conn == numpy_support.vtk_to_numpy( ds_tr.GetCells().GetConnectivityArray() )) )
-    MyAssert( mc.DataArrayDouble(numpy_support.vtk_to_numpy( ds_tr.GetCellData().GetArray("field") )).isEqual(f.getArray()[grp_TopRight],1e-12) )
-    #
-    for ds in [ds_bl,ds_br,ds_tl,ds_tr]:
-        MyAssert(ds.GetPointData().GetNumberOfArrays() == 2 )# 1 for field2 + vtkGhostType
-        MyAssert(ds.GetNumberOfPoints()==36) # for performance reasons all blocks share the same input coordinates
-        MyAssert(mc.DataArrayDouble( numpy_support.vtk_to_numpy( ds.GetPointData().GetArray("field2") ) ).isEqual(f2.getArray(),1e-12) )
-
-if __name__ == "__main__":
-    test()
-    
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader23.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader23.py
deleted file mode 100644 (file)
index 5802ba1..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2021-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay (EDF R&D)
-
-__doc__  = """
-Non regression test of EDF24514. GlobalNodeIds present in MED file whereas it does not appear into output DataSet of MEDReader.
-"""
-
-from paraview.simple import *
-import medcoupling as mc
-from vtk.util import numpy_support
-
-def MyAssert(clue):
-  if not clue:
-    raise RuntimeError("Assertion failed !")
-
-fname = 'testMEDReader23.med'
-ids = mc.DataArrayInt(40) ; ids.iota(100) # array used to define GlobalNodeIds. Used to be checked
-coo = mc.DataArrayDouble(40) ; coo.iota()
-coo = coo.changeNbOfComponents(3,0.)
-
-def generateCase(fname,globalNodeIds,coordinates):
-  m = mc.MEDCouplingUMesh.Build1DMeshFromCoords(coordinates)
-  m.setName("mesh")
-  mm = mc.MEDFileUMesh()
-  mm[0] = m
-  mm.setGlobalNumFieldAtLevel(1,globalNodeIds)
-  mm.write(fname,2)
-
-generateCase(fname,ids,coo)
-myMedReader = MEDReader(registrationName = fname, FileNames = [fname])
-myMedReader.FieldsStatus = ['TS0/mesh/ComSup0/mesh@@][@@P0']
-myMedReader.UpdatePipeline()
-# first important testing here
-MyAssert(   [myMedReader.PointData.GetArray(i).GetName() for i in range(myMedReader.PointData.GetNumberOfArrays())] == ['GlobalNodeIds','vtkGhostType']    )
-ReadUnstructuredGrid = servermanager.Fetch(myMedReader).GetBlock(0)
-numpy_support.vtk_to_numpy( ReadUnstructuredGrid.GetPointData().GetArray('GlobalNodeIds') )
-# check match of coordinates written in testMEDReader23.med file and its representation
-MyAssert( mc.DataArrayInt(numpy_support.vtk_to_numpy( ReadUnstructuredGrid.GetPointData().GetArray('GlobalNodeIds') ) ).isEqual(ids) )
-MyAssert( mc.DataArrayDouble(numpy_support.vtk_to_numpy(ReadUnstructuredGrid.GetPoints().GetData())).isEqual(coo,1e-12) )
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader24.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader24.py
deleted file mode 100644 (file)
index 338ba51..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2022-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-from MEDLoader import *
-
-"""See EDF25859 Bug. Check that mix of unstructured grid / Rectilinear grid is managed into single proc context"""
-
-fname="testMEDReader24.med"
-#
-arrX=DataArrayDouble([1.6128,1.72032,1.93536,2.1504,2.36544,2.58048,2.79552,3.01056,3.2256]) ; arrX.setInfoOnComponent(0,"x [m]")
-arrY=DataArrayDouble([1.6128,1.72032,1.93536,2.1504,2.36544,2.58048,2.79552,3.01056,3.2256]) ; arrY.setInfoOnComponent(0,"y [m]")
-arrZ=DataArrayDouble([4.0825,4.21725,4.352,4.5276,4.5724]) ; arrZ.setInfoOnComponent(0,"z [m]")
-cm=MEDCouplingCMesh()
-cm.setCoords(arrX,arrY,arrZ)
-cm.setName("Maillage_THYC")
-mm=MEDFileCMesh()
-mm.setMesh(cm)
-mm.write(fname,2)
-#
-pfl0=DataArrayInt([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40,41,42,43,44,45,46,48,49,50,51,52,53,56,57,58,59,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,104,105,106,107,108,109,110,112,113,114,115,116,117,120,121,122,123,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,168,169,170,171,172,173,174,176,177,178,179,180,181,184,185,186,187,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,232,233,234,235,236,237,238,240,241,242,243,244,245,248,249,250,251]) ; pfl0.setName("MAILLE_REELLE")
-pfl1=DataArrayInt([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271]) ; pfl1.setName("FACEX_REELLE")
-pfl2=DataArrayInt([288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559]) ; pfl2.setName("FACEY_REELLE")
-pfl3=DataArrayInt([576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,616,617,618,619,620,621,622,624,625,626,627,628,629,632,633,634,635,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,680,681,682,683,684,685,686,688,689,690,691,692,693,696,697,698,699,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,744,745,746,747,748,749,750,752,753,754,755,756,757,760,761,762,763,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,808,809,810,811,812,813,814,816,817,818,819,820,821,824,825,826,827,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,872,873,874,875,876,877,878,880,881,882,883,884,885,888,889,890,891]) ; pfl3.setName("FACEZ_REELLE")
-#
-nrj_0_1=DataArrayDouble([49980250.739945136,49997118.86371836,46623494.10908149,37852069.74702562,39471409.6292513,37852069.74702569,39842508.35226136,21928560.90513961,49997118.86371836,49997118.86371841,42541408.15597093,39471409.62925134,31239765.22793739,37852069.74702573,37514707.27156196,31712072.693586547,46623494.10908149,42541408.15597093,41360639.49184804,30463831.534370907,19600759.824440192,29789106.583443597,36435147.350078166,26685371.809177615,37852069.74702562,39471409.62925134,30463831.534370907,32420533.892060254,28405920.434042387,35524268.66632625,35625477.408965275,23109329.569262516,39471409.6292513,31239765.22793739,19600759.824440192,28405920.434042387,36300202.35989265,34174818.76447149,33027786.347894896,37852069.74702569,37852069.74702573,29789106.583443597,35524268.66632625,34174818.76447149,36738773.5779956,19263397.348976526,39842508.35226136,37514707.27156196,36435147.350078166,35625477.408965275,33027786.347894896,19263397.348976526,21928560.90513961,31712072.693586547,26685371.809177615,23109329.569262516,20937450.719275985,20944517.020564992,19531256.762767084,15856780.92492515,16535145.016235504,15856780.92492547,16690603.644593278,9186191.675686393,20944517.020564992,20944517.020565014,17821211.850831635,16535145.016235521,13086789.987208627,15856780.92492564,15715454.066712739,13284646.423300333,19531256.762767084,17821211.850831635,17326570.76060237,12761740.127915107,8211042.097805845,12479088.076355552,15263210.784217406,11178888.639181452,15856780.92492515,16535145.016235521,12761740.127915107,13581431.077437881,11899651.370658372,14881630.514611986,14924028.32234589,9680832.76591566,16535145.016235504,13086789.987208627,8211042.097805845,11899651.370658372,15206680.373905474,14316326.411492817,13835817.923841504,15856780.92492547,15856780.92492564,12479088.076355552,14881630.514611986,14316326.411492817,15390404.207419263,8069716.072026062,16690603.644593278,15715454.066712739,15263210.784217406,14924028.32234589,13835817.923841504,8069716.072026062,9186191.675686393,13284646.423300333,11178888.639181452,9680832.76591566,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.])
-nrj_0_1.setInfoOnComponent(0,"- [J/kg]")
-h_0=DataArrayDouble([0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9223840872291476,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9214142372366041,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9203203502111137,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702,0.9195585290435702]) ; h_0+=1278022.
-h_0.setInfoOnComponent(0,"- [J/kg]")
-h_1=DataArrayDouble([1707193.5978477711,1706680.071128439,1675298.880293715,1601056.2085307203,1606306.6047159557,1594561.8541066758,1609077.181469409,1463129.0460355966,1706680.0711284394,1705133.653210327,1646964.5287915035,1610142.778223492,1541197.578460137,1591612.2007810709,1590674.1654269584,1539980.1003904382,1675298.8802937143,1646964.5287915033,1627491.3954009535,1538286.0071971477,1446464.812125112,1524026.5146543428,1579393.901579361,1499535.5893318024,1601056.2085307199,1610142.7782234924,1538286.0071971482,1545239.955225724,1512988.5731550949,1570989.2143312085,1573098.0322487084,1469781.4110798093,1606306.6047159557,1541197.578460137,1446464.8121251126,1512988.5731550949,1576766.5407206328,1562392.3969638983,1551122.7814057101,1594561.8541066758,1591612.2007810709,1524026.514654343,1570989.214331209,1562392.3969638986,1580259.850172817,1440025.6068089742,1609077.1814694093,1590674.1654269581,1579393.9015793614,1573098.0322487084,1551122.7814057101,1440025.6068089742,1463129.0460355966,1539980.1003904382,1499535.5893318024,1469781.411079809,1708662.9998022616,1708129.2893356946,1676579.3523699266,1602363.8117384266,1607304.9271424229,1595667.6716220675,1610076.111165725,1464034.4308848085,1708129.2893356949,1706525.0463378802,1648191.1473162076,1611277.0989177777,1542287.1250714804,1592562.7299295843,1591724.4521483583,1540837.4634551322,1676579.3523699269,1648191.1473162074,1628484.2933928836,1539471.2736180348,1447438.4998261146,1524863.4766562376,1580310.2322566814,1500384.0745638395,1602363.8117384266,1611277.0989177779,1539471.2736180353,1546078.1599080698,1513821.5182706374,1571852.9108575245,1574031.9381076966,1470554.960494518,1607304.9271424229,1542287.1250714804,1447438.4998261149,1513821.5182706374,1577594.8275246841,1563390.579853997,1552013.1563359816,1595667.6716220675,1592562.7299295843,1524863.4766562376,1571852.9108575247,1563390.5798539973,1581078.28020071,1440776.029922329,1610076.1111657252,1591724.4521483583,1580310.232256682,1574031.9381076966,1552013.1563359816,1440776.029922329,1464034.4308848085,1540837.4634551322,1500384.0745638395,1470554.960494518,1708633.6572019386,1708082.5909808695,1676574.5221266153,1602705.4765794547,1607123.196116413,1595696.386114491,1609876.1772222994,1464701.091025861,1708082.5909808702,1706443.9486524272,1648801.5106365879,1611306.631905331,1542750.815136018,1592362.0556866801,1591692.343642542,1540826.8832543544,1676574.5221266148,1648801.5106365879,1628365.1330480182,1540258.3408503362,1448308.4766427176,1524944.381073225,1580151.6447241844,1500621.0407745198,1602705.476579454,1611306.6319053315,1540258.3408503365,1545972.6490343718,1513916.3380209352,1571672.694518838,1573924.2707864814,1470851.5892692045,1607123.196116413,1542750.8151360182,1448308.4766427178,1513916.3380209352,1577358.6838762078,1563432.6963735586,1551964.324298151,1595696.3861144907,1592362.0556866801,1524944.381073225,1571672.694518838,1563432.6963735586,1580765.3699054038,1441419.52299663,1609876.1772222994,1591692.343642542,1580151.6447241846,1573924.2707864814,1551964.324298151,1441419.52299663,1464701.091025861,1540826.8832543544,1500621.0407745198,1470851.5892692045,1708432.6109588896,1707876.3546041045,1676401.0172684519,1602495.0128238203,1607049.1393951927,1595671.1131709353,1609802.0854621006,1464748.9649476882,1707876.3546041055,1706224.115966094,1646745.9812830612,1611147.1865408437,1542741.7849835826,1592309.0965317544,1591655.7628271556,1540779.4948269252,1676401.0172684516,1646745.9812830605,1628047.2222845491,1540228.7550678025,1448350.7194848624,1524936.3755608685,1580095.6006214477,1500613.317021065,1602495.0128238199,1611147.1865408437,1540228.755067803,1545927.5440642927,1513907.5223398127,1571621.0228637396,1573870.0660614343,1470853.4676345135,1607049.1393951927,1542741.7849835828,1448350.7194848624,1513907.5223398127,1577297.366572899,1563410.7906347204,1551919.866229521,1595671.113170935,1592309.0965317544,1524936.3755608685,1571621.0228637396,1563410.7906347204,1580668.7969403658,1441446.3515266203,1609802.0854621006,1591655.7628271556,1580095.6006214477,1573870.0660614343,1551919.866229521,1441446.3515266203,1464748.9649476882,1540779.4948269252,1500613.317021065,1470853.4676345135])
-h_1.setInfoOnComponent(0,"- [J/kg]")
-#
-p_0=DataArrayDouble([15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15503268.150628341,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15502278.358422533,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15501138.536489055,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232,15500329.07377232])
-p_0.setInfoOnComponent(0,"- [Pa]")
-p_1=DataArrayDouble([15551357.765131623,15551250.42141628,15550979.700887434,15550660.243194763,15550323.466906475,15550149.779261714,15550007.369269539,15549993.272197371,15551250.421416283,15551091.02796482,15550997.088469505,15550587.99639021,15550331.763730764,15550121.829873659,15550011.52278095,15549943.048277102,15550979.700887434,15550997.088469505,15550628.007191319,15550459.60922553,15550282.55177755,15550099.904283773,15549969.050884046,15549944.681337206,15550660.243194763,15550587.99639021,15550459.60922553,15550271.004376523,15550144.453558365,15550011.236332033,15549935.175714444,15549931.786933027,15550323.466906475,15550331.763730764,15550282.55177755,15550144.453558365,15550018.806561679,15549967.905981027,15549922.577220777,15550149.779261714,15550121.829873659,15550099.904283773,15550011.236332033,15549967.905981027,15549893.077592332,15549947.768942442,15550007.369269539,15550011.52278095,15549969.050884046,15549935.175714444,15549922.577220777,15549947.768942442,15549993.272197371,15549943.048277102,15549944.681337206,15549931.786933027,15548981.279762102,15548876.710861823,15548514.269864595,15548094.377751365,15547771.82687132,15547593.281374065,15547465.048694642,15547368.84493183,15548876.710861823,15548722.796257973,15548402.447121516,15548030.99524092,15547739.758480769,15547566.454188002,15547456.882739155,15547362.678837247,15548514.269864593,15548402.447121516,15548124.257209042,15547862.74433127,15547642.359225657,15547506.88539034,15547410.220052736,15547341.650040662,15548094.377751365,15548030.99524092,15547862.74433127,15547686.199053222,15547543.972694844,15547446.732869877,15547373.000857387,15547313.7380713,15547771.82687132,15547739.758480769,15547642.359225657,15547543.972694844,15547457.653779456,15547397.53664531,15547348.32451941,15547593.281374065,15547566.454188002,15547506.88539034,15547446.732869877,15547397.53664531,15547337.238160651,15547313.527979365,15547465.048694642,15547456.882739155,15547410.220052736,15547373.000857387,15547348.32451941,15547313.527979365,15547368.84493183,15547362.678837247,15547341.650040662,15547313.7380713,15546460.79585754,15546357.8618016,15545839.174886756,15545179.511749623,15544847.353243,15544670.564591702,15544558.941854678,15544338.225100564,15546357.8618016,15546191.296459893,15545611.18718342,15545115.397224706,15544757.420820273,15544637.592374247,15544537.112181643,15544392.006415347,15545839.174886754,15545611.187183417,15545258.859096888,15544878.703066424,15544586.141850697,15544522.6000548,15544476.30135792,15544339.977397926,15545179.511749623,15545115.397224706,15544878.703066424,15544708.929058125,15544544.82970803,15544501.911874704,15544435.114128752,15544287.10424085,15544847.353243,15544757.420820273,15544586.141850697,15544544.82970803,15544514.550530668,15544452.528329566,15544390.02094777,15544670.564591702,15544637.592374247,15544522.6000548,15544501.911874704,15544452.528329566,15544398.304726249,15544267.606488569,15544558.941854678,15544537.112181643,15544476.30135792,15544435.114128752,15544390.02094777,15544267.606488569,15544338.225100564,15544392.006415347,15544339.977397926,15544287.10424085,15500742.74151361,15500742.175963653,15500775.049382735,15500844.05363197,15500841.349656178,15500842.793543914,15500837.362251949,15500872.17386759,15500742.175963653,15500742.220409457,15500799.523214351,15500842.058560695,15500857.830645358,15500843.22433348,15500842.318614803,15500854.013424614,15500775.049382733,15500799.523214351,15500836.839194197,15500859.581032272,15500878.623566628,15500859.574569272,15500844.70397097,15500863.493582187,15500844.05363197,15500842.058560695,15500859.581032272,15500856.278663723,15500862.58317934,15500847.27846993,15500845.924456576,15500869.98910656,15500841.349656178,15500857.830645358,15500878.623566628,15500862.58317934,15500845.918172201,15500849.012086647,15500851.205693366,15500842.793543914,15500843.22433348,15500859.574569272,15500847.27846993,15500849.012086647,15500843.61552367,15500876.57264411,15500837.362251949,15500842.318614803,15500844.70397097,15500845.924456576,15500851.205693366,15500876.57264411,15500872.17386759,15500854.013424614,15500863.493582187,15500869.98910656])
-p_1.setInfoOnComponent(0,"- [Pa]")
-#
-t_0=DataArrayDouble([0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.950278060884898,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9501752074851311,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9500567651375604,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577,0.9499726522601577]) ; t_0+=561.
-t_0.setInfoOnComponent(0,"- [K]")
-t_1=DataArrayDouble([618.1841066456732,618.1835813666848,618.1856259633387,614.4163290868107,615.1050236865734,613.6611522306131,615.4410429545915,594.7447808232702,618.1835813666848,618.1828517347558,618.1848140425273,615.5420943208575,606.5383698906265,613.2906926524488,613.172247447166,606.3676512993671,618.1856259633387,618.1848140425273,617.4446721885224,606.1194741115954,592.0455660141248,604.0750677066131,611.7256994989444,600.4284234522314,614.4163290868106,615.5420943208575,606.1194741115955,607.107944674456,602.4500386485399,610.6217828941678,610.9007726037626,595.805545846157,615.1050236865734,606.5383698906265,592.0455660141249,602.4500386485399,611.3829809077741,609.4703579879634,607.9279935638773,613.6611522306131,613.2906926524488,604.0750677066133,610.6217828941678,609.4703579879636,611.8381443485634,590.9877498290456,615.4410429545915,613.172247447166,611.7256994989446,610.9007726037626,607.9279935638773,590.9877498290456,594.7447808232702,606.3676512993671,600.4284234522314,595.805545846157,618.1690561725326,618.1685215715888,618.1675396987118,614.5736956327139,615.2243300813301,613.797656658745,615.5590339973002,594.8888488525006,618.1685215715888,618.1677480416948,618.1685603053771,615.6755479780859,606.6910916712018,613.4087783150145,613.3032019318707,606.487665507702,618.1675396987118,618.1685603053769,617.6107649913579,606.2879820489304,592.2041696085278,604.1958481500603,611.8431975522402,600.5561863494399,614.5736956327139,615.6755479780859,606.2879820489304,607.2241573486538,602.5726414391355,610.7347609531276,611.0224297064647,595.9273745982524,615.2243300813301,606.6910916712018,592.2041696085278,602.5726414391355,611.4897575459067,609.603771919421,608.0498472595787,613.797656658745,613.4087783150145,604.1958481500603,610.7347609531276,609.6037719194211,611.9427094511283,591.1107455229892,615.5590339973003,613.3032019318707,611.8431975522402,611.0224297064647,608.0498472595787,591.1107455229892,594.8888488525006,606.487665507702,600.5561863494399,595.9273745982524,618.1556971987327,618.1551679790961,618.1528020796541,614.6149226840873,615.2008475261711,613.79936498802,615.5330628041404,594.9944474419851,618.1551679790961,618.1543217277318,618.153023527253,615.679087972638,606.7552835961568,613.3816803873459,613.2973025270999,606.4847180548345,618.1528020796541,618.153023527253,617.6238972111182,606.3998067487031,592.3455205744151,604.2062832971247,611.820865455767,600.5909279402423,614.6149226840872,615.679087972638,606.3998067487031,607.2080717445687,602.5854419157467,610.7092172128082,611.0065485588964,595.9733619713759,615.2008475261711,606.7552835961568,592.3455205744151,602.5854419157467,611.4571766470203,609.6078388175779,608.0415678391975,613.7993649880199,613.3816803873459,604.2062832971247,610.7092172128082,609.6078388175779,611.9004110457627,591.215888084383,615.5330628041404,613.2973025270999,611.820865455767,611.0065485588964,608.0415678391975,591.215888084383,594.9944474419851,606.4847180548345,600.5909279402423,595.9733619713759,617.9515635584473,617.951716333408,617.9735720645355,614.5841757554348,615.1622455433228,613.7678190405226,615.4936128030074,594.9876594034737,617.951716333408,617.9523014782075,618.0105606060424,615.6413627408896,606.7328282477313,613.3471266861239,613.2649468491189,606.4567244011678,617.9735720645355,618.0105606060423,617.5839108464855,606.3765159853605,592.3392452361513,604.1854090155407,611.7875087032137,600.5723938755808,614.5841757554347,615.6413627408896,606.3765159853605,607.1799475704678,602.5654958672613,610.6773939127452,610.9741777480358,595.9587761542601,615.1622455433228,606.7328282477314,592.3392452361513,602.5654958672613,611.4234364107792,609.5809527231598,608.012893408742,613.7678190405226,613.3471266861239,604.1854090155407,610.6773939127452,609.5809527231598,611.8617801876443,591.2075507662224,615.4936128030074,613.2649468491189,611.7875087032137,610.9741777480358,608.012893408742,591.2075507662224,594.9876594034737,606.4567244011678,600.5723938755808,595.9587761542601])
-t_1.setInfoOnComponent(0,"- [K]")
-#
-vx_0=DataArrayDouble(256) ; vx_0[:]=0.
-vx_0.setInfoOnComponent(0,"- [m/s]")
-vx_1=DataArrayDouble([0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,1.1344206589009406e-11,0.13777212445503569,0.21011055302288695,4.024118903700059e-12,1.612127714589811e-11,0.18574910871094842,0.28891924478243673,5.513747312563484e-12,3.4141133291590045e-12,0.1046125377121644,0.277369962252552,4.734973249030581e-12,5.205206690367901e-12,0.04892166169554829,0.0669791148945737,1.304725242681302e-12,7.592141368438977e-13,0.0239535789545882,0.08891353899577627,1.4357845549109703e-12,2.069477614015718e-12,0.02043325551226558,0.03619829946451167,6.824095201904451e-13,1.3536494894586423e-13,0.006085932509367348,0.01961200257866551,3.005029515277489e-13,2.3263601616898956e-12,0.004454470066172948,-0.04176214531137861,-5.366085790916931e-13,2.7594846823464802e-11,0.26708971374098396,0.5093370051464718,1.204031797285656e-11,2.2043528584973886e-11,0.30350740289889478,0.7555587819283606,1.7118620211764295e-11,3.6802797354706385e-11,0.24389255744370075,0.4542994209552623,1.0699984868461137e-11,1.3624414594904585e-11,0.12200335093350312,0.22448447815623176,5.358659031116372e-12,6.0839333312827734e-12,0.06284371304790417,0.1611309681127474,3.734533635671857e-12,3.466405429182274e-12,0.039733424183500754,0.12778451967944597,2.9688614243749975e-12,3.527318482184164e-12,0.03004665819239134,0.05399225171225064,1.332698908468408e-12,7.969850505796324e-13,0.01482877294477144,0.04080744916198842,8.95896602794255e-13,3.035237412958874e-11,0.24893516908233704,0.5043844662868034,1.105929026287912e-11,3.8503611543307607e-11,0.2754696165710353,0.5005528471630809,1.171826008033003e-11,2.3106546683789947e-11,0.22604049666958774,0.4532970133599712,1.0936637910237274e-11,1.8397969358477885e-11,0.15003271708548734,0.2205547595693503,5.646237834375293e-12,1.0774749659431905e-11,0.07512804441581292,0.05888022781931716,1.735863763747967e-12,6.641762894333568e-12,0.04533285813425782,0.04104367240274322,1.2270553047563658e-12,2.9695401704118747e-12,0.025816481205304196,0.03915147945047681,9.748936528225525e-13,1.7344431981100495e-12,0.021194844183064776,0.05049485927865529,1.1851412370283702e-12,2.6341366323289677e-11,0.17527873235007648,0.24966228595305444,6.367191831499065e-12,2.3115062966917642e-11,0.18298181412665534,0.3330461947771215,8.091521156370611e-12,1.838406585800771e-11,0.1662795247995679,0.3032651263438391,7.30078702686326e-12,1.3847317435754685e-11,0.12256900588806978,0.18941580254573077,4.6862910768912306e-12,1.0599119239802832e-11,0.07486590518636529,0.05603603715341696,1.6787276418318527e-12,4.746757460217602e-12,0.04174285675071622,0.06792190067383477,1.6960185476713463e-12,1.7049634204578462e-12,0.019184527387358528,0.03960251948954569,9.257724198742812e-13,0.,0.,0.,0.,1.4177415777889301e-11,0.09702455596199398,0.13587961592795664,3.416001923719578e-12,1.6523620688002428e-11,0.10670867925882104,0.14604729028523441,3.953412450612833e-12,1.4440329511576989e-11,0.09545240635681953,0.09651568257046845,2.750131053574494e-12,1.1290020476606096e-11,0.07957820886530617,0.06713293785764922,1.941792078716636e-12,6.2390063801685274e-12,0.05412512264104467,0.08859284873715468,2.197412609936601e-12,6.435563255308967e-12,0.05427553329831927,0.08083245950228574,2.1364268996247426e-12,8.509129637798413e-13,0.02902729118622183,0.11348507238198809,2.4762950217111915e-12,1.0792779820701251e-11,0.069451080466159144,0.08471824603215147,2.23488683584132e-12,9.36306741078277e-12,0.06755101784067628,0.10353933634500316,2.639363103834178e-12,1.0080018190324988e-11,0.067668280231117425,0.066892224699172526,1.929724188475104e-12,6.902256511090752e-12,0.05491819090199326,0.07574036118658778,1.94215098823017e-12,4.774425950596191e-12,0.04383824019950572,0.07151004386909156,1.7794515560265796e-12,-5.590565105905348e-13,0.020046012023714564,0.1381939453045845,2.967229775273233e-12,0.,0.,0.,0.,3.5465817502036102e-12,0.05048498011276931,0.1467616022428175,3.1409788398244126e-12,6.1836015163151154e-12,0.05748975628008563,0.10625955127326588,2.5025940312083633e-12,4.1151655412957694e-12,0.051352895290015755,0.13255212665044704,3.0493972411079473e-12,2.5271335140814635e-12,0.04142601674177084,0.11962968107073847,2.6449851983928128e-12,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.])
-vx_1.setInfoOnComponent(0,"- [m/s]")
-#
-vy_0=DataArrayDouble(256) ; vy_0[:]=0.
-vy_0.setInfoOnComponent(0,"- [m/s]")
-vy_1=DataArrayDouble([0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,1.1344206589003178e-11,0.13777212445496333,0.21011055302291182,4.024118903704486e-12,1.612127714589167e-11,0.1857491087108428,0.28891924478244603,5.513747312567618e-12,3.4141133291963803e-12,0.10461253771199193,0.27736996225236153,4.734973249011425e-12,5.205206690366353e-12,0.04892166169552049,0.06697911489454987,1.304725242681033e-12,7.59214136844569e-13,0.023953578954600797,0.0889135389957673,1.4357845549109573e-12,2.0694776140138044e-12,0.020433255512266233,0.0361982994645095,6.824095201907787e-13,1.353649489401137e-13,0.006085932509367072,0.01961200257866555,3.005029515275786e-13,2.3263601616894404e-12,0.004454470066175331,-0.04176214531137554,-5.366085790916619e-13,2.759484682347234e-11,0.2670897137409751,0.5093370051464797,1.2040317972850642e-11,2.2043528584938272e-11,0.3035074028989229,0.755558781928531,1.7118620211781724e-11,3.680279735467177e-11,0.24389255744370713,0.4542994209554051,1.069998486847749e-11,1.3624414594903964e-11,0.12200335093349909,0.22448447815623412,5.358659031116325e-12,6.083933331281451e-12,0.06284371304790164,0.1611309681127495,3.7345336356718185e-12,3.4664054291785365e-12,0.03973342418349267,0.12778451967944597,2.9688614243749503e-12,3.527318482185579e-12,0.030046658192390873,0.05399225171225483,1.3326989084686373e-12,7.969850505801299e-13,0.014828772944771738,0.04080744916198886,8.958966027943089e-13,3.0352374129586713e-11,0.24893516908242836,0.50438446628676165,1.1059290262879936e-11,3.850361154334228e-11,0.275469616571037,0.50055284716293835,1.171826008031372e-11,2.3106546683790864e-11,0.22604049666958455,0.4532970133599674,1.0936637910237124e-11,1.8397969358478793e-11,0.1500327170854877,0.22055475956934505,5.646237834375099e-12,1.0774749659432231e-11,0.07512804441581255,0.05888022781931371,1.7358637637479712e-12,6.641762894335265e-12,0.04533285813426652,0.04104367240274106,1.227055304756493e-12,2.969540170410839e-12,0.02581648120530273,0.03915147945047351,9.74893652822482e-13,1.7344431981102015e-12,0.02119484418306707,0.0504948592786564,1.1851412370284913e-12,2.6341366323290966e-11,0.1752787323501015,0.2496622859530608,6.367191831499332e-12,2.3115062966916808e-11,0.18298181412665402,0.3330461947771171,8.091521156370643e-12,1.8384065858007747e-11,0.16627952479956163,0.30326512634383785,7.30078702686336e-12,1.3847317435755355e-11,0.1225690058880658,0.1894158025457279,4.686291076891146e-12,1.0599119239803562e-11,0.07486590518636106,0.05603603715341608,1.678727641831818e-12,4.746757460221935e-12,0.04174285675071262,0.067921900673843455,1.6960185476714709e-12,1.7049634204580688e-12,0.019184527387355423,0.0396025194895433,9.257724198742138e-13,0.,0.,0.,0.,1.4177415777887817e-11,0.09702455596198712,0.1358796159279616,3.416001923719866e-12,1.6523620688003475e-11,0.10670867925882337,0.1460472902852347,3.953412450612793e-12,1.4440329511580466e-11,0.09545240635682366,0.09651568257046909,2.7501310535744093e-12,1.1290020476608075e-11,0.07957820886530187,0.06713293785764673,1.9417920787163823e-12,6.239006380166912e-12,0.05412512264104154,0.0885928487371459,2.1974126099362736e-12,6.435563255307417e-12,0.05427553329831618,0.08083245950227797,2.136426899624439e-12,8.509129637792394e-13,0.029027291186218135,0.11348507238197426,2.4762950217080278e-12,1.0792779820697871e-11,0.06945108046616426,0.08471824603215574,2.2348868358411214e-12,9.36306741078326e-12,0.06755101784068314,0.10353933634500599,2.6393631038344922e-12,1.0080018190320224e-11,0.06766828023111629,0.06689222469917198,1.9297241884751623e-12,6.902256511088822e-12,0.05491819090200067,0.07574036118658685,1.942150988230387e-12,4.7744259505983125e-12,0.04383824019951468,0.0715100438691009,1.7794515560269655e-12,-5.590565105893459e-13,0.0200460120237228,0.13819394530459182,2.96722977527643e-12,0.,0.,0.,0.,3.5465817502089962e-12,0.05048498011277266,0.14676160224282185,3.1409788398246275e-12,6.1836015163154474e-12,0.057489756280087925,0.10625955127326758,2.5025940312083767e-12,4.115165541297016e-12,0.05135289529001548,0.13255212665045197,3.0493972411081165e-12,2.5271335140815564e-12,0.04142601674176666,0.11962968107074047,2.6449851983928293e-12,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.])
-vy_1.setInfoOnComponent(0,"- [m/s]")
-#
-vz_0=DataArrayDouble([4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932346330243951,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932355637906689,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932364945724892,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932377075449937,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269,4.932378622763269])
-vz_0.setInfoOnComponent(0,"- [m/s]")
-vz_1=DataArrayDouble([7.349832160580091,7.3412494252968665,6.8265681348499925,6.037688449446315,6.032628951060745,5.985783695022618,6.02575328540414,5.64734497266171,7.3412494252968665,7.321708742744497,6.352380589937687,6.062789999961401,5.847851705776218,5.978163033819428,5.969208720348231,5.829862834874871,6.826568134850019,6.352380589937691,6.156502299509909,5.848656388561603,5.623601855611934,5.794251914680753,5.937077345478105,5.729925755241562,6.037688449446314,6.062789999961397,5.848656388561602,5.858773586600506,5.7702057032772665,5.91572234935386,5.918421177956426,5.662316971359428,6.032628951060745,5.84785170577622,5.623601855611933,5.7702057032772665,5.933191264162171,5.888975469854007,5.858436269571031,5.985783695022618,5.978163033819427,5.794251914680754,5.915722349353859,5.888975469854006,5.939914717327204,5.598743967266288,6.025753285404143,5.969208720348233,5.937077345478104,5.918421177956426,5.858436269571031,5.598743967266288,5.64734497266171,5.829862834874871,5.729925755241564,5.662316971359428,7.418621717213538,7.409580698826639,6.890019939503438,6.047004448200347,6.0415474829975615,5.9947477375717275,6.034852347832169,5.651842605325184,7.409580698826635,7.388785659885766,6.409556955370353,6.072224673745008,5.854638903882661,5.986456090656494,5.977788708395183,5.835966331821743,6.890019939503408,6.409556955370348,6.154960129948821,5.85521269831336,5.627770433633566,5.8000311059546785,5.944735600323997,5.734996849610944,6.047004448200343,6.072224673745005,5.855212698313357,5.865023414967229,5.7756338473407265,5.922954381961648,5.925866692719966,5.666539053908997,6.0415474829975615,5.854638903882661,5.627770433633565,5.7756338473407265,5.940519698443319,5.89633096686707,5.86501121959622,5.994747737571727,5.986456090656493,5.80003110595468,5.92295438196165,5.896330966867066,5.947130765712147,5.602362742275441,6.0348523478321665,5.977788708395183,5.9447356003239955,5.925866692719966,5.86501121959622,5.602362742275442,5.651842605325184,5.835966331821743,5.734996849610945,5.666539053908997,7.406051167645625,7.398592182256506,6.895598593079653,6.048268181804127,6.045602294566558,5.996860603343903,6.037394482042198,5.657043050192003,7.398592182256506,7.389243034209025,6.427592620353271,6.0751736638992755,5.859905718054873,5.989796830392787,5.979473917744552,5.8407573804046855,6.895598593079629,6.427592620353237,6.148823703982074,5.8600144952649105,5.634322923630218,5.803617378273333,5.947967190200876,5.739832952383712,6.048268181804123,6.075173663899271,5.860014495264909,5.870021622820003,5.780503535007995,5.926630091840758,5.929091366800336,5.6723084464302,6.045602294566554,5.859905718054874,5.634322923630217,5.780503535007995,5.944887410863348,5.898639958178519,5.869017022137498,5.996860603343902,5.989796830392787,5.803617378273333,5.92663009184076,5.898639958178516,5.95274095559223,5.60762204615107,6.037394482042198,5.979473917744553,5.947967190200874,5.929091366800335,5.869017022137498,5.607622046151069,5.657043050192003,5.8407573804046855,5.739832952383712,5.6723084464302005,7.3660708538767485,7.352378755066297,6.866580899398151,6.051221748716661,6.040228056987783,5.996177250915436,6.028714710432652,5.677268356281304,7.352378755066289,7.323658461684197,6.406656763040177,6.071115910062361,5.869964069043467,5.986025766955024,5.977056475288331,5.843007642107803,6.866580899398164,6.40665676304019,6.133977042599296,5.87216369110615,5.661125687914528,5.814199843538564,5.94393111462986,5.750697135422344,6.051221748716665,6.071115910062368,5.872163691106149,5.8752247917282485,5.791830984602159,5.924195887384471,5.92554560343197,5.687087811612532,6.0402280569877815,5.869964069043467,5.661125687914527,5.791830984602159,5.939832693577055,5.899909498506444,5.869010914130541,5.996177250915436,5.986025766955023,5.814199843538563,5.924195887384472,5.899909498506446,5.942065823030365,5.629231907842557,6.028714710432652,5.977056475288331,5.94393111462986,5.925545603431969,5.869010914130541,5.629231907842554,5.677268356281304,5.843007642107803,5.750697135422344,5.687087811612533,7.37316253913956,7.359407581815623,6.872667241578819,6.050263991490144,6.040405026173425,5.996416772364126,6.028919573113356,5.67745958302709,7.359407581815634,7.330545854301259,6.399677353372563,6.070711496373787,5.870149720205851,5.986233094808958,5.977279526093338,5.843172630202691,6.872667241578822,6.399677353372577,6.132597972049951,5.872264180218762,5.661299924160254,5.8143880798800005,5.944121990041686,5.7508677744682295,6.050263991490148,6.070711496373792,5.872264180218763,5.875390964702222,5.79201040459281,5.9243831711057195,5.925732005290623,5.687247879770933,6.040405026173424,5.87014972020585,5.661299924160253,5.79201040459281,5.940015973705896,5.900117216474172,5.86918716532528,5.996416772364126,5.986233094808958,5.8143880798800005,5.9243831711057195,5.9001172164741735,5.942216607212156,5.629394508858754,6.028919573113356,5.977279526093339,5.944121990041685,5.925732005290623,5.86918716532528,5.629394508858752,5.67745958302709,5.843172630202692,5.75086777446823,5.687247879770933])
-vz_1.setInfoOnComponent(0,"- [m/s]")
-#
-poro=DataArrayDouble([0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.533673596095485,0.5336735960954847,0.5336735960954847,0.533673596095485,0.533673596095485,0.5336735960954844,0.533673596095485,0.533673596095485,0.533673596095485,0.5336735960954847,0.5336735960954847,0.533673596095485,0.533673596095485,0.5336735960954844,0.533673596095485,0.533673596095485,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954847,0.5336735960954844,0.5336735960954844,0.5336735960954847,0.5336735960954847,0.5336735960954839,0.5336735960954847,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.533673596095485,0.5336735960954847,0.5336735960954847,0.533673596095485,0.533673596095485,0.5336735960954844,0.533673596095485,0.533673596095485,0.533673596095485,0.5336735960954847,0.5336735960954847,0.533673596095485,0.533673596095485,0.5336735960954844,0.533673596095485,0.533673596095485,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954847,0.5336735960954844,0.5336735960954844,0.5336735960954847,0.5336735960954847,0.5336735960954839,0.5336735960954847,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.533673596095485,0.533673596095485,0.5336735960954855,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.5336735960954851,0.5336735960954847,0.5336735960954847,0.5336735960954851,0.5336735960954851,0.5336735960954844,0.5336735960954851,0.5336735960954851,0.5336735960954851,0.5336735960954847,0.5336735960954847,0.5336735960954851,0.5336735960954851,0.5336735960954844,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954847,0.5336735960954844,0.5336735960954844,0.5336735960954847,0.5336735960954847,0.5336735960954839,0.5336735960954847,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.5336735960954851,0.5336735960954847,0.5336735960954847,0.5336735960954851,0.5336735960954851,0.5336735960954844,0.5336735960954851,0.5336735960954851,0.5336735960954851,0.5336735960954847,0.5336735960954847,0.5336735960954851,0.5336735960954851,0.5336735960954844,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954855,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954847,0.5336735960954844,0.5336735960954844,0.5336735960954847,0.5336735960954847,0.5336735960954839,0.5336735960954847,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855,0.5336735960954855,0.5336735960954847,0.5336735960954855,0.5336735960954851,0.5336735960954851,0.5336735960954855])
-poro.setInfoOnComponent(0,"- [-]")
-##
-ts=[(-1,1,0.),(-1, 2,2.)]
-fs=MEDFileFields()
-sup=cm.buildUnstructured()[pfl0] ; sup.setName(cm.getName())
-for name,arrs in [("ENERGIE RECUE",(nrj_0_1,nrj_0_1)),("ENTHALPIE",(h_0,h_1)),("PRESSION",(p_0,p_1)),("TEMPERATURE",(t_0,t_1))]:
-    fmts0=MEDFileFieldMultiTS()
-    for its,(dt,it,ft) in enumerate(ts):
-        f1ts0=MEDFileField1TS()
-        f=MEDCouplingFieldDouble(ON_CELLS) ; f.setName(name) ; f.setTime(ft,dt,it) ; f.setMesh(sup)
-        f.setArray(arrs[its])
-        f.checkConsistencyLight()
-        f1ts0.setFieldProfile(f,mm,0,pfl0)
-        fmts0.pushBackTimeStep(f1ts0)
-        pass
-    fs.pushField(fmts0)
-    pass
-#
-fmts0=MEDFileFieldMultiTS()
-f1ts0=MEDFileField1TS()
-f=MEDCouplingFieldDouble(ON_CELLS) ; f.setName("POROSITE") ; f.setTime(0.,-1,0)
-f.setArray(poro)
-f1ts0.setFieldProfile(f,mm,0,pfl0)
-fmts0.pushBackTimeStep(f1ts0)
-fs.pushField(fmts0)
-#
-fmts0=MEDFileFieldMultiTS()
-arrs=(vx_0,vx_1)
-for its,(dt,it,ft) in enumerate(ts):
-    f1ts0=MEDFileField1TS()
-    f=MEDCouplingFieldDouble(ON_CELLS) ; f.setName("VITESSE X") ; f.setTime(ft,dt,it)
-    f.setArray(arrs[its])
-    f1ts0.setFieldProfile(f,mm,-1,pfl1)
-    fmts0.pushBackTimeStep(f1ts0)
-    pass
-fs.pushField(fmts0)
-#
-fmts0=MEDFileFieldMultiTS()
-arrs=(vy_0,vy_1)
-for its,(dt,it,ft) in enumerate(ts):
-    f1ts0=MEDFileField1TS()
-    f=MEDCouplingFieldDouble(ON_CELLS) ; f.setName("VITESSE Y") ; f.setTime(ft,dt,it)
-    f.setArray(arrs[its])
-    f1ts0.setFieldProfile(f,mm,-1,pfl2)
-    fmts0.pushBackTimeStep(f1ts0)
-    pass
-fs.pushField(fmts0)
-#
-fmts0=MEDFileFieldMultiTS()
-arrs=(vz_0,vz_1)
-for its,(dt,it,ft) in enumerate(ts):
-    f1ts0=MEDFileField1TS()
-    f=MEDCouplingFieldDouble(ON_CELLS) ; f.setName("VITESSE Z") ; f.setTime(ft,dt,it)
-    f.setArray(arrs[its])
-    f1ts0.setFieldProfile(f,mm,-1,pfl3)
-    fmts0.pushBackTimeStep(f1ts0)
-    pass
-fs.pushField(fmts0)
-fs.write(fname,0)
-################### MED write is done -> Go to MEDReader
-# 
-
-from paraview.simple import *
-
-testMEDReader24_med = MEDReader( FileNames=[fname] )
-testMEDReader24_med.FieldsStatus = ['TS0/Maillage_THYC/ComSup0/ENERGIE RECUE@@][@@P0', 'TS0/Maillage_THYC/ComSup0/ENTHALPIE@@][@@P0', 'TS0/Maillage_THYC/ComSup0/PRESSION@@][@@P0', 'TS0/Maillage_THYC/ComSup0/TEMPERATURE@@][@@P0']
-testMEDReader24_med.UpdatePipeline()
-ds0 = servermanager.Fetch(testMEDReader24_med).GetBlock(0)
-assert( ds0.GetNumberOfCells() == 224 )
-testMEDReader24_med.FieldsStatus = ['TS2/Maillage_THYC/ComSup0/Maillage_THYC@@][@@P0'] # test  is here. A rectilinear dataset is expected here
-testMEDReader24_med.UpdatePipeline()
-ds0 = servermanager.Fetch(testMEDReader24_med).GetBlock(0)
-assert( ds0.GetNumberOfCells() == 256 ) # test is here 0 means problem in the management of rectilineargrid into MEDReader
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader3.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader3.py
deleted file mode 100644 (file)
index 4238dcf..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-outImgName="testMEDReader3.png"
-
-def GenerateCase():
-  """ This test checks that invalid double time (not in [-1e299:1e299])
-   leads MEDReader to takes iteration numbers instead of double time to discriminate timesteps each other
-   See EDF 1956.
-  """
-  fname="testMEDReader3.med"
-  #########
-  m=MEDCouplingUMesh("mesh",2)
-  coords=DataArrayDouble([(0.,0.,0.),(1.,0.,0.),(1.,1.,0.),(0.,1.,0.)],4,3)
-  m.setCoords(coords)
-  m.allocateCells()
-  m.insertNextCell(NORM_QUAD4,[0,3,2,1])
-  mm=MEDFileUMesh()
-  mm.setMeshAtLevel(0,m)
-  mm.write(fname,2)
-  fmts=MEDFileFieldMultiTS()
-  #
-  f=MEDCouplingFieldDouble(ON_NODES) ; f.setName("ANodeField")
-  f.setTime(1.7976931348623157e+308,1,1) ; f.setMesh(m)
-  arr=DataArrayDouble([0.,4.,4.,4.]) ; arr.setInfoOnComponent(0,"aaa")
-  f.setArray(arr)
-  f1ts=MEDFileField1TS()
-  f1ts.setFieldNoProfileSBT(f)
-  fmts.pushBackTimeStep(f1ts)
-  #
-  f.setTime(1.7976931348623157e+308,2,2)
-  arr=DataArrayDouble([1.,4.,4.,4.]) ; arr.setInfoOnComponent(0,"aaa")
-  f.setArray(arr)
-  f1ts=MEDFileField1TS()
-  f1ts.setFieldNoProfileSBT(f)
-  fmts.pushBackTimeStep(f1ts)
-  #
-  f.setTime(1.7976931348623157e+308,3,3)
-  arr=DataArrayDouble([2.,4.,4.,4.]) ; arr.setInfoOnComponent(0,"aaa")
-  f.setArray(arr)
-  f1ts=MEDFileField1TS()
-  f1ts.setFieldNoProfileSBT(f)
-  fmts.pushBackTimeStep(f1ts)
-  #
-  f.setTime(1.7976931348623157e+308,4,6)
-  arr=DataArrayDouble([3.,4.,4.,4.]) ; arr.setInfoOnComponent(0,"aaa")
-  f.setArray(arr)
-  f1ts=MEDFileField1TS()
-  f1ts.setFieldNoProfileSBT(f)
-  fmts.pushBackTimeStep(f1ts)
-  #
-  f.setTime(1.7976931348623157e+308,5,7)
-  arr=DataArrayDouble([4.,4.,4.,4.]) ; arr.setInfoOnComponent(0,"aaa")
-  f.setArray(arr)
-  f1ts=MEDFileField1TS()
-  f1ts.setFieldNoProfileSBT(f)
-  fmts.pushBackTimeStep(f1ts)
-  #
-  fmts.write(fname,0)
-  return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-  fname = GenerateCase()
-  ################### MED write is done -> Go to MEDReader
-  AnimationScene1=GetAnimationScene()
-  AnimationScene1.PlayMode='Snap To TimeSteps'
-  AnimationScene1.EndTime = 2.0
-  AnimationScene1.AnimationTime = 1.0
-  AnimationScene1.StartTime = 1.0
-
-  testMEDReader3=MEDReader(FileNames=[fname])
-  testMEDReader3.FieldsStatus=['TS0/mesh/ComSup0/ANodeField@@][@@P1']
-
-  assert(list(testMEDReader3.TimestepValues)==[1.,2.,3.,4.,5.]) ## <- the test is here - double time steps are too big use dt.
-
-  if '-D' not in sys.argv:
-    RenderView1=GetRenderView()
-    RenderView1.ViewTime=3.0
-    RenderView1.CameraPosition=[0.5,0.5,5.7320508075688776]
-    RenderView1.ViewSize=[300,300]
-
-    DataRepresentation2=Show()
-    DataRepresentation2.EdgeColor=[0.0, 0.0, 0.5000076295109483]
-    DataRepresentation2.SelectionPointFieldDataArrayName='ANodeField'
-    DataRepresentation2.SelectionCellFieldDataArrayName='FamilyIdCell'
-    DataRepresentation2.ScalarOpacityUnitDistance=1.4142135623730951
-    #DataRepresentation2.ExtractedBlockIndex=1
-    DataRepresentation2.ScaleFactor=0.1
-
-    a1_ANodeField_PVLookupTable=GetLookupTableForArray("ANodeField",1,RGBPoints=[0.0,0.23,0.299,0.754,4.0,0.706,0.016,0.15],VectorMode='Magnitude',NanColor=[0.25,0.0,0.0],
-                                                         ColorSpace='Diverging',ScalarRangeInitialized=1.0,AllowDuplicateScalars=1)
-    a1_ANodeField_PiecewiseFunction=CreatePiecewiseFunction(Points=[0.0,0.0,0.5,0.0,1.0,1.0,0.5,0.0])
-    a1_ANodeField_PVLookupTable.ScalarOpacityFunction=a1_ANodeField_PiecewiseFunction
-
-    DataRepresentation2.ScalarOpacityFunction=a1_ANodeField_PiecewiseFunction
-    DataRepresentation2.ColorArrayName='ANodeField'
-    DataRepresentation2.LookupTable=a1_ANodeField_PVLookupTable
-
-    # Triangulate so rendring always the same with different gpu or graphic backend.
-    extSurf = ExtractSurface(Input=testMEDReader3)
-    triangulate = Triangulate(Input=extSurf)
-    Hide(testMEDReader3, RenderView1)
-    Show(triangulate, RenderView1)
-    triangulate1Display = GetDisplayProperties(triangulate, view=RenderView1)
-    ColorBy(triangulate1Display, ('POINTS', 'ANodeField'))
-
-    Render()
-    ###
-
-    # compare with baseline image
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                threshold=1)
-    vtk.test.Testing.interact()
-    
-if __name__ == "__main__":
-  outImgName="testMEDReader3.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader4.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader4.py
deleted file mode 100644 (file)
index b0f79a0..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-  """ This test checks that umeshes with no names work properly.
-  """
-
-  fname="testMEDReader4.med"
-  #########
-  coords=DataArrayDouble([(0.,0.,0.),(1.,0.,0.),(2.,0.,0.),(3.,0.,0.),(0.,1.,0.),(1.,1.,0.),(2.,1.,0.),(3.,1.,0.),(0.,2.,0.),(1.,2.,0.),(2.,2.,0.),(3.,2.,0.),(0.,3.,0.),(1.,3.,0.),(2.,3.,0.),(3.,3.,0.)])
-  m0=MEDCouplingUMesh("mesh",2)
-  m0.allocateCells()
-  m0.setCoords(coords)
-  ##
-  mm=MEDFileUMesh()
-  mm.setMeshAtLevel(0,m0)
-  mm.setFamilyFieldArr(1,DataArrayInt([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]))
-  #
-  f1ts0=MEDFileField1TS()
-  f1ts1=MEDFileField1TS()
-  #
-  f0=MEDCouplingFieldDouble(ON_NODES) ; f0.setMesh(m0) ; f0.setName("f0NoPfl")
-  arr0=DataArrayDouble([0.,1.,2.,3.,1.,1.5,2.2,3.1,2.,2.2,3.,3.1,3.,3.1,3.5,4.])
-  f0.setArray(arr0)
-  f0.checkConsistencyLight()
-  f1ts0.setFieldNoProfileSBT(f0)
-  #
-  pfl1=DataArrayInt([0,1,2,3,4,5,6,8,9,12]) ; pfl1.setName("pfl1")
-  f1=MEDCouplingFieldDouble(ON_NODES) ; f1.setName("f1Pfl")
-  arr1=DataArrayDouble([3.,2.,1.,0.,2.,1.5,0.,1.,0.,0.2])
-  f1.setArray(arr1)
-  f1ts1.setFieldProfile(f1,mm,0,pfl1)
-  #
-  fs=MEDFileFields()
-  fmts0=MEDFileFieldMultiTS()
-  fmts0.pushBackTimeStep(f1ts0)
-  fmts1=MEDFileFieldMultiTS()
-  fmts1.pushBackTimeStep(f1ts1)
-  fs.pushField(fmts0) ; fs.pushField(fmts1)
-  mm.write(fname,2)
-  fs.write(fname,0)
-  return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-################### MED write is done -> Go to MEDReader
-  fname = GenerateCase()
-
-  testMEDReader4_med=MEDReader(FileNames=[fname])
-
-  testMEDReader4_med.FieldsStatus=['TS0/mesh/ComSup0/f0NoPfl@@][@@P1','TS0/mesh/ComSup0/mesh@@][@@P1']
-  #testMEDReader4_med.TimesFlagsStatus=['0000']
-
-  Glyph1=Glyph(Input=testMEDReader4_med,GlyphType='Sphere')
-  Glyph1.ScaleArray=['POINTS','No scale array']#f0NoPflN
-  Glyph1.ScaleFactor=0.3
-  Glyph1.OrientationArray = ['POINTS', 'No orientation array']
-  Glyph1.GlyphTransform="Transform2"
-  Glyph1.GlyphMode = 'All Points'
-
-  DataRepresentation1 = Show()
-  DataRepresentation1.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-  DataRepresentation1.SelectionPointFieldDataArrayName = 'f0NoPfl'
-  DataRepresentation1.ScaleFactor = 0.3
-  DataRepresentation1.ColorArrayName = 'f0NoPfl'
-  lookupTable = GetLookupTableForArray( "f0NoPfl", 1, RGBPoints=[0.0, 0.23, 0.299, 0.754, 4.0, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0, AllowDuplicateScalars=1 )
-  function=CreatePiecewiseFunction(Points=[0.0,0.0,0.5,0.0,1.0,1.0,0.5,0.0] )
-  lookupTable.ScalarOpacityFunction = function
-  DataRepresentation1.LookupTable = lookupTable
-
-  if '-D' not in sys.argv:
-    RenderView1 = GetRenderView()
-    RenderView1.CameraViewUp = [0.06254683966704512, 0.9980420295997885, 0.0]
-    RenderView1.CameraPosition = [0.8087292125440382, 1.3325993334207897, 12.692130429902462]
-    RenderView1.CameraFocalPoint = [0.8087292125440382, 1.3325993334207897, 0.0]
-    RenderView1.CameraParallelScale = 3.712804729456109
-
-    RenderView1.ViewSize =[300,300]
-    Render()
-
-    # compare with baseline image
-    import vtk.test.Testing
-    from vtk.util.misc import vtkGetTempDir
-    vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-    vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                threshold=1)
-    vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader4.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader6.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader6.py
deleted file mode 100644 (file)
index ba67c1d..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-    """ This test generate a GaussPoint field on a mesh with groups.
-    The aim of this test is to check that the ExtractGroup works well for ELGAfieldToPointGaussian
-    """
-    fname="testMEDReader6.med"
-    #########
-    arr=DataArrayDouble([(0,0,0),(1,0,0),(2,0,0),(3,0,0),(0,1,0),(1,1,0),(2,1,0),(3,1,0),(0,2,0),(1,2,0),(2,2,0),(3,2,0),(0,3,0),(1,3,0),(2,3,0),(3,3,0)])
-    m0=MEDCouplingUMesh("mesh",2) ; m0.setCoords(arr) ; m0.allocateCells()
-    for elt in [[2,3,6],[3,7,6],[6,9,5],[6,10,9]]:
-        m0.insertNextCell(NORM_TRI3,elt)
-        pass
-    for elt in [[0,4,5,1],[5,6,2,1],[4,8,9,5],[6,10,11,7],[8,12,13,9],[9,13,14,10],[10,14,15,11]]:
-        m0.insertNextCell(NORM_QUAD4,elt)
-        pass
-    mm=MEDFileUMesh()
-    mm.setMeshAtLevel(0,m0)
-    grp0=DataArrayInt([0,1,4,5,7,10]) ; grp0.setName("grp0")
-    mm.setGroupsAtLevel(0,[grp0])
-    #
-    fGauss=MEDCouplingFieldDouble(ON_GAUSS_PT) ; fGauss.setName("fGauss")
-    fGauss.setMesh(m0)
-    fGauss.setGaussLocalizationOnType(NORM_TRI3,[0.,0.,1.,0.,0.,1.],[0.1,0.1,0.05,0.9],[0.4,0.6])
-    fGauss.setGaussLocalizationOnType(NORM_QUAD4,[-1.,-1.,1.,-1.,1.,1.,-1.,1.],[-0.9,-0.9,0.,0.,0.9,0.9],[0.2,0.3,0.5])
-    fGauss.setArray(DataArrayDouble([0.9,1.3,0.22,1.3,1.62,2.21,1.62,2.72,2.95,2.54,2.25,2.16,1.58,1.05,3.13,2.91,2.82,1.41,1.58,1.95,3.59,3.53,3.59,2.82,2.91,3.13,2.25,2.54,2.95]))
-    fGauss.getArray().setInfoOnComponent(0,"C0")
-    fGauss.checkConsistencyLight()
-    #
-    f1ts=MEDFileField1TS()
-    f1ts.setFieldNoProfileSBT(fGauss)
-    #
-    mm.write(fname,2)
-    f1ts.write(fname,0)
-    return fname
-
-@WriteInTmpDir
-def test(baseline_file):
-    fname = GenerateCase()
-    ################### MED write is done -> Go to MEDReader
-
-    myMedReader=MEDReader(FileNames=[fname])
-    myMedReader.FieldsStatus = ['TS0/mesh/ComSup0/fGauss@@][@@GAUSS']
-    myMedReader.TimesFlagsStatus = ['0000']
-
-    ExtractGroup1 = ExtractGroup(Input=myMedReader)
-    ExtractGroup1.UpdatePipelineInformation()
-    ExtractGroup1.AllGroups = ['GRP_grp0']
-
-    ELGAfieldToPointGaussian1 = ELGAfieldToPointGaussian(Input=ExtractGroup1)
-    ELGAfieldToPointGaussian1.SelectSourceArray = ['CELLS','ELGA@0']
-
-    Glyph1 = Glyph( Input=ELGAfieldToPointGaussian1, GlyphType="Sphere", GlyphTransform="Transform2" )
-    Glyph1.GlyphType = "Sphere"
-    Glyph1.OrientationArray = ['POINTS', 'No orientation array']
-    Glyph1.ScaleFactor = 0.29
-
-    if '-D' not in sys.argv:
-        RenderView1 = GetRenderView()
-        RenderView1.CameraFocalPoint = [1.5, 1.5, 0.0]
-        RenderView1.CameraPosition = [1.5, 1.5, 10000.0]
-        RenderView1.InteractionMode = '3D'
-        RenderView1.CameraPosition = [1.5, 1.5, 8.196152422706632]
-        RenderView1.CameraParallelScale = 2.1213203435596424
-        RenderView1.CenterOfRotation = [1.5, 1.5, 0.0]
-
-        DataRepresentation4 = Show()
-        DataRepresentation4.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-        DataRepresentation4.SelectionPointFieldDataArrayName = 'fGauss'
-        DataRepresentation4.ScaleFactor = 0.3182729169726372
-
-        a1_fGauss_PVLookupTable = GetLookupTableForArray( "fGauss", 1, RGBPoints=[0.22, 0.23, 0.299, 0.754, 2.95, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0, AllowDuplicateScalars=1 )
-        a1_fGauss_PiecewiseFunction = CreatePiecewiseFunction( Points=[0.0, 0.0, 0.5, 0.0, 1.0, 1.0, 0.5, 0.0] )
-        DataRepresentation4.ColorArrayName = 'fGauss'
-        DataRepresentation4.LookupTable = a1_fGauss_PVLookupTable
-        a1_fGauss_PVLookupTable.ScalarOpacityFunction = a1_fGauss_PiecewiseFunction
-
-        RenderView1.ViewSize=[300,300]
-        Render()
-
-        # compare with baseline image
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                    threshold=1)
-        vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader6.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader7.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader7.py
deleted file mode 100644 (file)
index 9ab70a1..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-    """ This test generate a simple multi time field with a very aggressive time steps triplets. Neither dt, nor iteration nor order is considered.
-    In this case only the rank is considered.
-    """
-    fname="testMEDReader7.med"
-    #########
-    arr=DataArrayDouble([(0,0,0),(1,0,0),(2,0,0),(3,0,0),(0,1,0),(1,1,0),(2,1,0),(3,1,0),(0,2,0),(1,2,0),(2,2,0),(3,2,0),(0,3,0),(1,3,0),(2,3,0),(3,3,0)])
-    m0=MEDCouplingUMesh("mesh",2) ; m0.setCoords(arr) ; m0.allocateCells()
-    for elt in [[2,3,6],[3,7,6],[6,9,5],[6,10,9]]:
-        m0.insertNextCell(NORM_TRI3,elt)
-        pass
-    for elt in [[0,4,5,1],[5,6,2,1],[4,8,9,5],[6,10,11,7],[8,12,13,9],[9,13,14,10],[10,14,15,11]]:
-        m0.insertNextCell(NORM_QUAD4,elt)
-        pass
-    mm=MEDFileUMesh()
-    mm.setMeshAtLevel(0,m0)
-    grp0=DataArrayInt([0,1,4,5,7,10]) ; grp0.setName("grp0")
-    mm.setGroupsAtLevel(0,[grp0])
-    fmts=MEDFileFieldMultiTS()
-    #
-    fNode=MEDCouplingFieldDouble(ON_NODES) ; fNode.setName("fNode")
-    fNode.setMesh(m0)
-    fNode.setArray(DataArrayDouble([3,2,1,0,3.16,2.23,1.41,1,3.6,2.82,2.23,2,4.24,3.6,3.16,3]))
-    fNode.getArray().setInfoOnComponent(0,"C0")
-    fNode.setTime(0.5,1,1)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    fNode.getArray().reverse()
-    fNode.setTime(0.5,1,2)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    fNode.getArray().reverse()
-    fNode.setTime(0.5,2,1)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    fNode.getArray().reverse()
-    fNode.setTime(0.5,2,2)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    mm.write(fname,2)
-    fmts.write(fname,0)
-    return fname
-
-
-@WriteInTmpDir
-def test(baseline_file):
-    fname = GenerateCase()
-    ################### MED write is done -> Go to MEDReader
-    myMedReader=MEDReader(FileNames=[fname])
-    myMedReader.FieldsStatus = ['TS0/mesh/ComSup0/fNode@@][@@P1']
-    assert(list(myMedReader.TimestepValues)==[0.,1.,2.,3.])
-
-    if '-D' not in sys.argv:
-        RenderView1 = GetRenderView()
-        RenderView1.CameraFocalPoint = [1.5, 1.5, 0.0]
-        RenderView1.CameraPosition = [1.5, 1.5, 10000.0]
-        RenderView1.InteractionMode = '3D'
-        RenderView1.CameraPosition = [1.5, 1.5, 8.196152422706632]
-        RenderView1.CameraParallelScale = 2.1213203435596424
-        RenderView1.CenterOfRotation = [1.5, 1.5, 0.0]
-
-        DataRepresentation4 = Show()
-        DataRepresentation4.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-        DataRepresentation4.SelectionPointFieldDataArrayName = 'fNode'
-        DataRepresentation4.ScaleFactor = 0.3182729169726372
-
-        a1_fGauss_PVLookupTable = GetLookupTableForArray( "fNode", 1, RGBPoints=[0.22, 0.23, 0.299, 0.754, 2.95, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0, AllowDuplicateScalars=1 )
-        a1_fGauss_PiecewiseFunction = CreatePiecewiseFunction( Points=[0.0, 0.0, 0.5, 0.0, 1.0, 1.0, 0.5, 0.0] )
-        DataRepresentation4.ColorArrayName = 'fNode'
-        DataRepresentation4.LookupTable = a1_fGauss_PVLookupTable
-        a1_fGauss_PVLookupTable.ScalarOpacityFunction = a1_fGauss_PiecewiseFunction
-
-        RenderView1.ViewTime = 1.0 #### Important # red is in right bottom
-        RenderView1.CacheKey = 1.0
-        RenderView1.UseCache = 1
-        RenderView1.ViewSize=[300,300]
-        Render()
-
-        # compare with baseline image
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                    threshold=6)
-        vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader7.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader8.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader8.py
deleted file mode 100644 (file)
index e17b4dc..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-import os
-import sys
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-    """ This test is a non regression test. ExtractCellType then ExtractGroup.
-    """
-    fname="testMEDReader8.med"
-    #########
-    arr=DataArrayDouble([(0,0,0),(1,0,0),(2,0,0),(3,0,0),(0,1,0),(1,1,0),(2,1,0),(3,1,0),(0,2,0),(1,2,0),(2,2,0),(3,2,0),(0,3,0),(1,3,0),(2,3,0),(3,3,0)])
-    m0=MEDCouplingUMesh("mesh",2) ; m0.setCoords(arr) ; m0.allocateCells()
-    for elt in [[2,3,6],[3,7,6],[6,9,5],[6,10,9]]:
-        m0.insertNextCell(NORM_TRI3,elt)
-        pass
-    for elt in [[0,4,5,1],[5,6,2,1],[4,8,9,5],[6,10,11,7],[8,12,13,9],[9,13,14,10],[10,14,15,11]]:
-        m0.insertNextCell(NORM_QUAD4,elt)
-        pass
-    mm=MEDFileUMesh()
-    mm.setMeshAtLevel(0,m0)
-    grp0=DataArrayInt([0,1,2,5]) ; grp0.setName("grp0")
-    mm.setGroupsAtLevel(0,[grp0])
-    fmts=MEDFileFieldMultiTS()
-    #
-    fNode=MEDCouplingFieldDouble(ON_NODES) ; fNode.setName("fNode")
-    fNode.setMesh(m0)
-    fNode.setArray(DataArrayDouble([3,2,1,0,3.16,2.23,1.41,1,3.6,2.82,2.23,2,4.24,3.6,3.16,3]))
-    fNode.getArray().setInfoOnComponent(0,"C0")
-    fNode.setTime(0.5,1,1)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    fNode.getArray().reverse()
-    fNode.setTime(0.5,1,2)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    fNode.getArray().reverse()
-    fNode.setTime(0.5,2,1)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    fNode.getArray().reverse()
-    fNode.setTime(0.5,2,2)
-    f1ts=MEDFileField1TS() ; f1ts.setFieldNoProfileSBT(fNode) ; fmts.pushBackTimeStep(f1ts)
-    #
-    mm.write(fname,2)
-    fmts.write(fname,0)
-    return fname
-
-
-@WriteInTmpDir
-def test(baseline_file):
-    fname = GenerateCase()
-    ################### MED write is done -> Go to MEDReader
-
-    myMedReader=MEDReader(FileNames=[fname])
-    myMedReader.FieldsStatus = ['TS0/mesh/ComSup0/fNode@@][@@P1']
-    assert(list(myMedReader.TimestepValues)==[0.,1.,2.,3.])
-    myMedReader.UpdatePipeline()
-
-    extractCT=ExtractCellType(Input=myMedReader)
-    extractCT.UpdatePipelineInformation()
-    assert(list(extractCT.GetProperty("GeoTypesInfo"))==['Triangle', '0', 'Quad', '0'])
-    extractCT.AllGeoTypes=['Triangle']
-
-    extGrp=ExtractGroup(Input=extractCT)
-    #extGrp.UpdatePipelineInformation()
-    assert([x for x in list(extGrp.GetProperty("GroupsFlagsInfo")[::2]) if x[:4]=="GRP_"]==['GRP_grp0'])
-    extGrp.AllGroups="GRP_grp0"
-
-    if '-D' not in sys.argv:
-        RenderView1 = GetRenderView()
-        RenderView1.CameraFocalPoint = [1.5, 1.5, 0.0]
-        RenderView1.CameraPosition = [1.5, 1.5, 10000.0]
-        RenderView1.InteractionMode = '3D'
-        RenderView1.CameraPosition = [1.5, 1.5, 8.196152422706632]
-        RenderView1.CameraParallelScale = 2.1213203435596424
-        RenderView1.CenterOfRotation = [1.5, 1.5, 0.0]
-
-        DataRepresentation4 = Show()
-        DataRepresentation4.EdgeColor = [0.0, 0.0, 0.5000076295109483]
-        DataRepresentation4.SelectionPointFieldDataArrayName = 'fNode'
-        DataRepresentation4.ScaleFactor = 0.3182729169726372
-
-        a1_fGauss_PVLookupTable = GetLookupTableForArray( "fNode", 1, RGBPoints=[0.22, 0.23, 0.299, 0.754, 2.95, 0.706, 0.016, 0.15], VectorMode='Magnitude', NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', ScalarRangeInitialized=1.0, AllowDuplicateScalars=1 )
-        a1_fGauss_PiecewiseFunction = CreatePiecewiseFunction( Points=[0.0, 0.0, 0.5, 0.0, 1.0, 1.0, 0.5, 0.0] )
-        DataRepresentation4.ColorArrayName = 'fNode'
-        DataRepresentation4.LookupTable = a1_fGauss_PVLookupTable
-        a1_fGauss_PVLookupTable.ScalarOpacityFunction = a1_fGauss_PiecewiseFunction
-
-        RenderView1.ViewTime = 1.0 #### Important # red is in right bottom
-        RenderView1.CacheKey = 1.0
-        RenderView1.UseCache = 1
-        RenderView1.ViewSize=[300,300]
-        Render()
-
-        # compare with baseline image
-        
-        import vtk.test.Testing
-        from vtk.util.misc import vtkGetTempDir
-        vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir()
-        vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file,
-                                                                    threshold=1)
-        vtk.test.Testing.interact()
-
-if __name__ == "__main__":
-  outImgName="testMEDReader8.png"
-  baseline_file = RetriveBaseLine(outImgName)
-  test(baseline_file)
-  pass
diff --git a/src/Plugins/MEDReader/plugin/Test/testMEDReader9.py b/src/Plugins/MEDReader/plugin/Test/testMEDReader9.py
deleted file mode 100644 (file)
index 49fcafd..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-#  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-# Author : Anthony Geay
-
-from medcoupling import *
-from paraview.simple import *
-from MEDReaderHelper import WriteInTmpDir,RetriveBaseLine
-
-def GenerateCase():
-    """ This test is a non regression test. Test that ExtractGroup adapt to the current mesh of MEDReader. A MED file containing 2 fields on a 2 different meshes.
-    This test checks that the MeshName follows.
-    """
-    fname="testMEDReader9.med"
-    #########
-    m1=MEDCouplingUMesh("m1",2) ; m1.setCoords(DataArrayDouble([(0.,0.),(1.,0.),(0.,1.)])) ; m1.allocateCells() ; m1.insertNextCell(NORM_TRI3,[0,1,2])
-    m2=MEDCouplingUMesh("m2",2) ; m2.setCoords(DataArrayDouble([(0.,0.),(1.,0.),(0.,1.),(1.,1.)])) ; m2.allocateCells() ; m2.insertNextCell(NORM_QUAD4,[0,1,3,2])
-    mm1=MEDFileUMesh() ; mm2=MEDFileUMesh()
-    mm1.setMeshAtLevel(0,m1) ; mm2.setMeshAtLevel(0,m2)
-    ms=MEDFileMeshes() ; ms.pushMesh(mm1) ; ms.pushMesh(mm2)
-    f1=MEDCouplingFieldDouble(ON_CELLS) ; f1.setName("f1") ; f1.setMesh(m1) ; f1.setArray(DataArrayDouble([1.111]))
-    f2=MEDCouplingFieldDouble(ON_CELLS) ; f2.setName("f2") ; f2.setMesh(m2) ; f2.setArray(DataArrayDouble([2.2222]))
-    ff1=MEDFileField1TS() ; ff2=MEDFileField1TS()
-    ff1.setFieldNoProfileSBT(f1) ; ff2.setFieldNoProfileSBT(f2)
-    ms.write(fname,2)
-    ff1.write(fname,0)
-    ff2.write(fname,0)
-    return fname
-
-@WriteInTmpDir
-def test():
-    fname = GenerateCase()
-    ################### MED write is done -> Go to MEDReader
-    myMedReader=MEDReader(FileNames=[fname])
-    myMedReader.FieldsStatus=['TS0/m1/ComSup0/f1@@][@@P0']
-    ExtractGroup1=ExtractGroup(Input=myMedReader)
-    ExtractGroup1.UpdatePipeline()
-    assert(ExtractGroup1.GetProperty("MeshName")[0]=="m1")
-    myMedReader.FieldsStatus=['TS0/m2/ComSup0/f2@@][@@P0']
-    ExtractGroup2=ExtractGroup(Input=myMedReader)
-    ExtractGroup2.UpdatePipeline()
-    assert(ExtractGroup2.GetProperty("MeshName")[0]=="m2")
-    
-if __name__ == "__main__":
-    test()
diff --git a/src/Plugins/MEDReader/plugin/Test/tests.set b/src/Plugins/MEDReader/plugin/Test/tests.set
deleted file mode 100644 (file)
index 5961fd3..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (C) 2017-2024  CEA, EDF
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-
-# This file declares a shared set of MEDREADER tests, used by two test
-# approaches: "make test" and "salome test". The former is used just after
-# MEDREADER build step, the latter is used from an installed SALOME application.
-#
-# We here initialize a cmake variable that is used, by file inclusion, in
-# CMakeLists.txt (for make test) and CTestTestfileInstall.cmake (for salome
-# test).
-# This variables is: TEST_NUMBERS.
-# Additional variables might be defined if necessary.
-
-# 11 and 12 have been willingly removed due to problem in image comparisons
-
-# For CTestTestfileInstall.cmake
-SET(TEST_NUMBERS_WITHOUTRENDERING 1 9 16 17 18 22 23 24)
-
-SET(TEST_NUMBERS_WITHRENDERING 0 2 3 4 6 7 8 10 13 14 15 19 20 21)
-
-# For CMakeLists.txt
-SET(TEST_NUMBERS ${TEST_NUMBERS_WITHOUTRENDERING} ${TEST_NUMBERS_WITHRENDERING})
-
diff --git a/src/Plugins/MEDReader/plugin/paraview.plugin b/src/Plugins/MEDReader/plugin/paraview.plugin
deleted file mode 100644 (file)
index 47bc39b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-NAME
-  MEDReader
-DESCRIPTION
-  Reads the MED data format from Electricite de France
-REQUIRES_MODULES