X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FDriverMED%2FDriverMED_Family.cxx;h=0484569e5eda857d51dd3690aec74f0157e7102d;hp=f40810c948fbbf35d8e9904e5c36c1ab42f11cae;hb=869dd74276a0c386631e799f6d837600c6506236;hpb=e4737e85f0da6d3f90fd08f6be1c2825195fe16f diff --git a/src/DriverMED/DriverMED_Family.cxx b/src/DriverMED/DriverMED_Family.cxx index f40810c94..0484569e5 100644 --- a/src/DriverMED/DriverMED_Family.cxx +++ b/src/DriverMED/DriverMED_Family.cxx @@ -26,6 +26,8 @@ // $Header$ #include "DriverMED_Family.h" +#include "MED_Factory.hxx" + #include using namespace std; @@ -204,8 +206,9 @@ list DriverMED_Family::MakeFamilies * Create TFamilyInfo for this family */ //============================================================================= -MEDA::PFamilyInfo DriverMED_Family::GetFamilyInfo - (const MEDA::PMeshInfo& theMeshInfo) const +MED::PFamilyInfo +DriverMED_Family::GetFamilyInfo(const MED::PWrapper& theWrapper, + const MED::PMeshInfo& theMeshInfo) const { string aValue; ostringstream aStr; @@ -215,11 +218,13 @@ MEDA::PFamilyInfo DriverMED_Family::GetFamilyInfo MED::TIntVector anAttrIds (1, myId); // Id=0, MED::TIntVector anAttrVals (1, myId); // Value=0 - MEDA::PFamilyInfo anInfo = MEDA::TWrapper::CrFamilyInfo(theMeshInfo, - aValue, - myId, - myGroupNames, - anAttrDescs,anAttrIds,anAttrVals); + MED::PFamilyInfo anInfo = theWrapper->CrFamilyInfo(theMeshInfo, + aValue, + myId, + myGroupNames, + anAttrDescs, + anAttrIds, + anAttrVals); // cout << endl; // cout << "Groups: "; @@ -345,14 +350,16 @@ void DriverMED_Family::Split (DriverMED_FamilyPtr by, { // Elements set::iterator anIter = by->myElements.begin(); - for (; anIter != by->myElements.end(); anIter++) + while ( anIter != by->myElements.end()) { if (myElements.find(*anIter) != myElements.end()) { common->myElements.insert(*anIter); myElements.erase(*anIter); - by->myElements.erase(*anIter); + by->myElements.erase(anIter++); } + else + anIter++; } if (!common->IsEmpty())