X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FDriverMED%2FDriverMED_Family.cxx;h=c62787c724cbe0fde383ad6164bfeaa0774018a3;hb=665d037f93371114bf4b00bf11b0f95be418fb77;hp=a11ba4860bc88e09e8ef0f58ee1213ca38189fca;hpb=7a713be33b27d6a8c77f983460f0e97e52c6ff7c;p=modules%2Fsmesh.git diff --git a/src/DriverMED/DriverMED_Family.cxx b/src/DriverMED/DriverMED_Family.cxx index a11ba4860..c62787c72 100644 --- a/src/DriverMED/DriverMED_Family.cxx +++ b/src/DriverMED/DriverMED_Family.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2020 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 @@ -383,11 +383,7 @@ DriverMED_Family::GetFamilyInfo(const MED::PWrapper& theWrapper, } string aValue = aStr.str(); // PAL19785,0019867 - med forbids whitespace to be the last char in the name - int maxSize; - //if ( theWrapper->GetVersion() == MED::eV2_1 ) - // maxSize = MED::GetNOMLength(); - //else - maxSize = MED::GetNOMLength(); + int maxSize = MED::GetNOMLength(); int lastCharPos = min( maxSize, (int) aValue.size() ) - 1; while ( isspace( aValue[ lastCharPos ] )) aValue.resize( lastCharPos-- ); @@ -574,3 +570,21 @@ void DriverMED_Family::Split (DriverMED_FamilyPtr by, common->myType = myType; } } + +//================================================================================ +/*! + * \brief Return a number of elements of a given type + */ +//================================================================================ + +size_t DriverMED_Family::NbElements( SMDSAbs_ElementType theType ) const +{ + if ( myTypes.size() < 2 ) + return myElements.size(); + + int nb = 0; + for ( ElementsSet::iterator e = myElements.begin(); e != myElements.end(); ++e ) + nb += ( theType == (*e)->GetType() ); + + return nb; +}