X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMDS%2FSMDS_MeshIDFactory.cxx;fp=src%2FSMDS%2FSMDS_MeshIDFactory.cxx;h=0000000000000000000000000000000000000000;hb=4c16067d4281f56bd07d3f92fb63fff9c0c1d169;hp=ea74aa5769c265c08db96911ad816ab0563c6bd5;hpb=88141f757b048eaa5aae0be49faaf274448bbcaf;p=modules%2Fsmesh.git diff --git a/src/SMDS/SMDS_MeshIDFactory.cxx b/src/SMDS/SMDS_MeshIDFactory.cxx deleted file mode 100644 index ea74aa576..000000000 --- a/src/SMDS/SMDS_MeshIDFactory.cxx +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright (C) 2007-2016 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 -// -// 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 -// - -// SMESH SMDS : implementation 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; - -//======================================================================= -//function : SMDS_MeshIDFactory -//purpose : -//======================================================================= - -SMDS_MeshIDFactory::SMDS_MeshIDFactory():myMaxID(0), myMesh(0) -{ -} - -int SMDS_MeshIDFactory::GetFreeID() -{ - int newid; - if (myPoolOfID.empty()) - { - newid = ++myMaxID; - } - else - { - set::iterator i = myPoolOfID.begin(); - newid = *i; - myPoolOfID.erase( i ); - } - return newid; -} - -//======================================================================= -//function : ReleaseID -//purpose : -//======================================================================= -void SMDS_MeshIDFactory::ReleaseID(int ID, int vtkId) -{ - if ( ID > 0 ) - { - if ( ID < myMaxID ) - { - myPoolOfID.insert(ID); - } - else if ( ID == myMaxID ) - { - --myMaxID; - if ( !myPoolOfID.empty() ) // assure that myMaxID is not in myPoolOfID - { - set::iterator i = --myPoolOfID.end(); - while ( i != myPoolOfID.begin() && myMaxID == *i ) { - --myMaxID; --i; - } - if ( myMaxID == *i ) { - --myMaxID; // begin of myPoolOfID reached - myPoolOfID.clear(); - } - else if ( myMaxID < ID-1 ) { - myPoolOfID.erase( ++i, myPoolOfID.end() ); - } - } - } - } -} - -void SMDS_MeshIDFactory::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) -{ - myMaxID = maxId; - myPoolOfID.clear(); -} -