Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
IPAL22422 : TC6.3.0:hangup importing python dump
[modules/smesh.git]
/
src
/
SMDS
/
SMDS_MeshIDFactory.cxx
diff --git
a/src/SMDS/SMDS_MeshIDFactory.cxx
b/src/SMDS/SMDS_MeshIDFactory.cxx
index 730a69b3f7546af1efe819000f865b5dd71cd875..a5dd391b4c90e2a5d71b252950775a42b58c4555 100644
(file)
--- a/
src/SMDS/SMDS_MeshIDFactory.cxx
+++ b/
src/SMDS/SMDS_MeshIDFactory.cxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-20
08
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-20
10
CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@
-19,12
+19,15
@@
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+
// SMESH SMDS : implementaion of Salome mesh data structure
// File : SMDS_MeshIDFactory.cxx
// Author : Jean-Michel BOULCOURT
// Module : SMESH
//
#include "SMDS_MeshIDFactory.hxx"
// SMESH SMDS : implementaion of Salome mesh data structure
// File : SMDS_MeshIDFactory.cxx
// Author : Jean-Michel BOULCOURT
// Module : SMESH
//
#include "SMDS_MeshIDFactory.hxx"
+#include "SMDS_Mesh.hxx"
+#include "utilities.h"
using namespace std;
using namespace std;
@@
-33,27
+36,33
@@
using namespace std;
//purpose :
//=======================================================================
//purpose :
//=======================================================================
-SMDS_MeshIDFactory::SMDS_MeshIDFactory():myMaxID(0)
+SMDS_MeshIDFactory::SMDS_MeshIDFactory():myMaxID(0)
, myMesh(0)
{
}
int SMDS_MeshIDFactory::GetFreeID()
{
{
}
int SMDS_MeshIDFactory::GetFreeID()
{
- if (myPoolOfID.empty()) return ++myMaxID;
+ int newid;
+ if (myPoolOfID.empty())
+ {
+ newid = ++myMaxID;
+ //MESSAGE("GetFreeID new " << newid);
+ }
else
{
set<int>::iterator i = myPoolOfID.begin();
else
{
set<int>::iterator i = myPoolOfID.begin();
-
int ID
= *i;//myPoolOfID.top();
+
newid
= *i;//myPoolOfID.top();
myPoolOfID.erase( i );//myPoolOfID.pop();
myPoolOfID.erase( i );//myPoolOfID.pop();
-
return ID
;
+
//MESSAGE("GetFreeID pool " << newid)
;
}
}
+ return newid;
}
//=======================================================================
//function : ReleaseID
//purpose :
//=======================================================================
}
//=======================================================================
//function : ReleaseID
//purpose :
//=======================================================================
-void SMDS_MeshIDFactory::ReleaseID(
const int ID
)
+void SMDS_MeshIDFactory::ReleaseID(
int ID, int vtkId
)
{
if ( ID > 0 )
{
{
if ( ID > 0 )
{
@@
-82,6
+91,24
@@
void SMDS_MeshIDFactory::ReleaseID(const int ID)
void SMDS_MeshIDFactory::Clear()
{
void SMDS_MeshIDFactory::Clear()
{
- myMaxID = 0;
- myPoolOfID.clear();
+
myMaxID = 0;
+
myPoolOfID.clear();
}
}
+
+void SMDS_MeshIDFactory::SetMesh(SMDS_Mesh *mesh)
+{
+ myMesh = mesh;
+}
+
+SMDS_Mesh* SMDS_MeshIDFactory::GetMesh()
+{
+ return myMesh;
+}
+
+void SMDS_MeshIDFactory::emptyPool(int maxId)
+{
+ MESSAGE("SMDS_MeshIDFactory::emptyPool " << myMaxID << " --> " << maxId);
+ myMaxID = maxId;
+ myPoolOfID.clear();
+}
+