Salome HOME
bos #20256: [CEA 18523] Porting SMESH to int 64 bits
[modules/smesh.git] / src / SMDS / SMDS_Downward.cxx
index 257ab88ddc0a2380006acb9ea5ee2235bf9ce683..d2152f22051332818ffc2d69c59701f27d3ea774 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2010-2015  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2010-2021  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -27,6 +27,7 @@
 
 #include <vtkCellType.h>
 #include <vtkCellLinks.h>
+#include <smIdType.hxx>
 
 #include <map>
 
@@ -61,6 +62,7 @@ int SMDS_Downward::getCellDimension(unsigned char cellType)
       _cellDimension[VTK_TRIQUADRATIC_HEXAHEDRON] = 3;
       _cellDimension[VTK_WEDGE] = 3;
       _cellDimension[VTK_QUADRATIC_WEDGE] = 3;
+      _cellDimension[VTK_BIQUADRATIC_QUADRATIC_WEDGE] = 3;
       _cellDimension[VTK_PYRAMID] = 3;
       _cellDimension[VTK_QUADRATIC_PYRAMID] = 3;
       _cellDimension[VTK_HEXAGONAL_PRISM] = 3;
@@ -121,7 +123,7 @@ int SMDS_Downward::addCell(int vtkId)
  *
  * @param cellId
  */
-void SMDS_Downward::initCell(int cellId)
+void SMDS_Downward::initCell(int /*cellId*/)
 {
 }
 
@@ -130,7 +132,7 @@ void SMDS_Downward::initCell(int cellId)
  * @param cellId not used here.
  * @return
  */
-int SMDS_Downward::getNumberOfDownCells(int cellId)
+int SMDS_Downward::getNumberOfDownCells(int /*cellId*/)
 {
   return _nbDownCells;
 }
@@ -153,7 +155,7 @@ const int* SMDS_Downward::getDownCells(int cellId)
  * @param cellId index of the cell in the downward structure relative to a vtk cell type.
  * @return table of downward entities types.
  */
-const unsigned char* SMDS_Downward::getDownTypes(int cellId)
+const unsigned char* SMDS_Downward::getDownTypes(int /*cellId*/)
 {
   return &_cellTypes[0];
 }
@@ -164,7 +166,7 @@ const unsigned char* SMDS_Downward::getDownTypes(int cellId)
  * @param lowCellId index of the children cell to add (dimension n-1)
  * @param aType vtk cell type of the cell to add (needed to find the SMDS_Downward structure containing the cell to add).
  */
-void SMDS_Downward::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_Downward::addDownCell(int /*cellId*/, int /*lowCellId*/, unsigned char /*aType*/)
 {
   ASSERT(0); // must be re-implemented in derived class
 }
@@ -175,12 +177,12 @@ void SMDS_Downward::addDownCell(int cellId, int lowCellId, unsigned char aType)
  * @param upCellId index of the parent cell to add (dimension n+1)
  * @param aType vtk cell type of the cell to add (needed to find the SMDS_Downward structure containing the cell to add).
  */
-void SMDS_Downward::addUpCell(int cellId, int upCellId, unsigned char aType)
+void SMDS_Downward::addUpCell(int /*cellId*/, int /*upCellId*/, unsigned char /*aType*/)
 {
   ASSERT(0); // must be re-implemented in derived class
 }
 
-int SMDS_Downward::getNodeSet(int cellId, int* nodeSet)
+int SMDS_Downward::getNodeSet(int /*cellId*/, int* /*nodeSet*/)
 {
   return 0;
 }
@@ -231,7 +233,7 @@ void SMDS_Down1D::compactStorage()
   _cellIds.resize(_nbDownCells * _maxId);
   _vtkCellIds.resize(_maxId);
 
-  int sizeUpCells = 0;
+  smIdType sizeUpCells = 0;
   for (int i = 0; i < _maxId; i++)
     sizeUpCells += _upCellIdsVector[i].size();
   _upCellIds.resize(sizeUpCells, -1);
@@ -257,8 +259,8 @@ void SMDS_Down1D::compactStorage()
 void SMDS_Down1D::addUpCell(int cellId, int upCellId, unsigned char aType)
 {
   //ASSERT((cellId >=0) && (cellId < _maxId));
-  int nbFaces = _upCellIdsVector[cellId].size();
-  for (int i = 0; i < nbFaces; i++)
+  smIdType nbFaces = _upCellIdsVector[cellId].size();
+  for (smIdType i = 0; i < nbFaces; i++)
     {
       if ((_upCellIdsVector[cellId][i] == upCellId) && (_upCellTypesVector[cellId][i] == aType))
         {
@@ -303,7 +305,7 @@ int SMDS_Down1D::getNodeSet(int cellId, int* nodeSet)
 void SMDS_Down1D::setNodes(int cellId, int vtkId)
 {
   vtkIdType npts = 0;
-  vtkIdType *pts; // will refer to the point id's of the face
+  vtkIdType const *pts(nullptr); // will refer to the point id's of the face
   _grid->GetCellPoints(vtkId, npts, pts);
   // MESSAGE(vtkId << " " << npts << "  " << _nbDownCells);
   //ASSERT(npts == _nbDownCells);
@@ -532,7 +534,7 @@ int SMDS_Down2D::computeVolumeIds(int cellId, int* ids)
   // --- find point id's of the face
 
   vtkIdType npts = 0;
-  vtkIdType *pts; // will refer to the point id's of the face
+  vtkIdType const *pts(nullptr); // will refer to the point id's of the face
   _grid->GetCellPoints(cellId, npts, pts);
   vector<int> nodes;
   for (int i = 0; i < npts; i++)
@@ -627,7 +629,7 @@ int SMDS_Down2D::computeVolumeIdsFromNodesFace(int* pts, int npts, int* ids)
 void SMDS_Down2D::setTempNodes(int cellId, int vtkId)
 {
   vtkIdType npts = 0;
-  vtkIdType *pts; // will refer to the point id's of the face
+  vtkIdType const *pts(nullptr); // will refer to the point id's of the face
   _grid->GetCellPoints(vtkId, npts, pts);
   // MESSAGE(vtkId << " " << npts << "  " << _nbNodes);
   //ASSERT(npts == _nbNodes);
@@ -776,17 +778,17 @@ void SMDS_Down3D::compactStorage()
   // nothing to do, size was known before
 }
 
-int SMDS_Down3D::getNumberOfUpCells(int cellId)
+int SMDS_Down3D::getNumberOfUpCells(int /*cellId*/)
 {
   return 0;
 }
 
-const int* SMDS_Down3D::getUpCells(int cellId)
+const int* SMDS_Down3D::getUpCells(int /*cellId*/)
 {
   return 0;
 }
 
-const unsigned char* SMDS_Down3D::getUpTypes(int cellId)
+const unsigned char* SMDS_Down3D::getUpTypes(int /*cellId*/)
 {
   return 0;
 }
@@ -795,7 +797,7 @@ void SMDS_Down3D::getNodeIds(int cellId, std::set<int>& nodeSet)
 {
   int vtkId = this->_vtkCellIds[cellId];
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(vtkId, npts, nodes);
   for (int i = 0; i < npts; i++)
     nodeSet.insert(nodes[i]);
@@ -903,7 +905,7 @@ void SMDS_DownTriangle::computeEdgesWithNodes(int cellId, ListElemByNodesType& e
   edgesWithNodes.elems[2].vtkType = VTK_LINE;
 }
 
-void SMDS_DownTriangle::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownTriangle::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   //ASSERT(aType == VTK_LINE);
@@ -960,7 +962,7 @@ void SMDS_DownQuadTriangle::computeEdgesWithNodes(int cellId, ListElemByNodesTyp
   edgesWithNodes.elems[2].vtkType = VTK_QUADRATIC_EDGE;
 }
 
-void SMDS_DownQuadTriangle::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownQuadTriangle::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   //ASSERT(aType == VTK_QUADRATIC_EDGE);
@@ -1020,7 +1022,7 @@ void SMDS_DownQuadrangle::computeEdgesWithNodes(int cellId, ListElemByNodesType&
   edgesWithNodes.elems[3].vtkType = VTK_LINE;
 }
 
-void SMDS_DownQuadrangle::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownQuadrangle::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   //ASSERT(aType == VTK_LINE);
@@ -1084,7 +1086,7 @@ void SMDS_DownQuadQuadrangle::computeEdgesWithNodes(int cellId, ListElemByNodesT
   edgesWithNodes.elems[3].vtkType = VTK_QUADRATIC_EDGE;
 }
 
-void SMDS_DownQuadQuadrangle::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownQuadQuadrangle::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   //ASSERT(aType == VTK_QUADRATIC_EDGE);
@@ -1126,7 +1128,7 @@ void SMDS_DownTetra::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>& o
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1144,12 +1146,12 @@ void SMDS_DownTetra::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>& o
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
 
-void SMDS_DownTetra::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownTetra::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   //ASSERT(aType == VTK_TRIANGLE);
@@ -1178,7 +1180,7 @@ void SMDS_DownTetra::computeFacesWithNodes(int cellId, ListElemByNodesType& face
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -1234,7 +1236,7 @@ void SMDS_DownQuadTetra::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1252,12 +1254,12 @@ void SMDS_DownQuadTetra::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
 
-void SMDS_DownQuadTetra::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownQuadTetra::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   //ASSERT(aType == VTK_QUADRATIC_TRIANGLE);
@@ -1288,7 +1290,7 @@ void SMDS_DownQuadTetra::computeFacesWithNodes(int cellId, ListElemByNodesType&
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -1357,7 +1359,7 @@ void SMDS_DownPyramid::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>&
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1386,7 +1388,7 @@ void SMDS_DownPyramid::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>&
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
@@ -1435,7 +1437,7 @@ void SMDS_DownPyramid::computeFacesWithNodes(int cellId, ListElemByNodesType& fa
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -1500,7 +1502,7 @@ void SMDS_DownQuadPyramid::getOrderedNodesOfFace(int cellId, std::vector<vtkIdTy
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1530,7 +1532,7 @@ void SMDS_DownQuadPyramid::getOrderedNodesOfFace(int cellId, std::vector<vtkIdTy
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2] << " " << orderedNodes[3]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
@@ -1580,7 +1582,7 @@ void SMDS_DownQuadPyramid::computeFacesWithNodes(int cellId, ListElemByNodesType
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -1660,7 +1662,7 @@ void SMDS_DownPenta::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>& o
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1693,7 +1695,7 @@ void SMDS_DownPenta::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>& o
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
@@ -1744,7 +1746,7 @@ void SMDS_DownPenta::computeFacesWithNodes(int cellId, ListElemByNodesType& face
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -1810,7 +1812,7 @@ void SMDS_DownQuadPenta::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1844,7 +1846,7 @@ void SMDS_DownQuadPenta::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
@@ -1896,7 +1898,7 @@ void SMDS_DownQuadPenta::computeFacesWithNodes(int cellId, ListElemByNodesType&
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -1981,7 +1983,7 @@ void SMDS_DownHexa::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>& or
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -1999,13 +2001,13 @@ void SMDS_DownHexa::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>& or
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2] << " " << orderedNodes[3]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
   MESSAGE(nodes[4] << " " << nodes[5] << " " << nodes[6] << " " << nodes[7]);
 }
 
-void SMDS_DownHexa::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownHexa::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   int *faces = &_cellIds[_nbDownCells * cellId];
@@ -2036,7 +2038,7 @@ void SMDS_DownHexa::computeFacesWithNodes(int cellId, ListElemByNodesType& faces
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face
@@ -2112,7 +2114,7 @@ void SMDS_DownQuadHexa::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>
   //MESSAGE("cellId = " << cellId);
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes(nullptr); // will refer to the point id's of the volume
   _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
 
   set<int> tofind;
@@ -2131,12 +2133,12 @@ void SMDS_DownQuadHexa::getOrderedNodesOfFace(int cellId, std::vector<vtkIdType>
       return;
     }
   }
-  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->fromVtkToSmds(_vtkCellIds[cellId]));
+  MESSAGE("=== Problem volume " << _vtkCellIds[cellId] << " " << _grid->_mesh->FromVtkToSmds(_vtkCellIds[cellId]));
   MESSAGE(orderedNodes[0] << " " << orderedNodes[1] << " " << orderedNodes[2] << " " << orderedNodes[3]);
   MESSAGE(nodes[0] << " " << nodes[1] << " " << nodes[2] << " " << nodes[3]);
 }
 
-void SMDS_DownQuadHexa::addDownCell(int cellId, int lowCellId, unsigned char aType)
+void SMDS_DownQuadHexa::addDownCell(int cellId, int lowCellId, unsigned char /*aType*/)
 {
   //ASSERT((cellId >=0)&& (cellId < _maxId));
   int *faces = &_cellIds[_nbDownCells * cellId];
@@ -2167,7 +2169,7 @@ void SMDS_DownQuadHexa::computeFacesWithNodes(int cellId, ListElemByNodesType& f
   // --- find point id's of the volume
 
   vtkIdType npts = 0;
-  vtkIdType *nodes; // will refer to the point id's of the volume
+  vtkIdType const *nodes; // will refer to the point id's of the volume
   _grid->GetCellPoints(cellId, npts, nodes);
 
   // --- create all the ordered list of node id's for each face