Salome HOME
23418: [OCC] Mesh: Minimization of memory usage of SMESH
[modules/smesh.git] / src / DriverMED / DriverMED_Family.cxx
index a11ba4860bc88e09e8ef0f58ee1213ca38189fca..a31488e4aabfe6b0287371869bf63df76c9dd874 100644 (file)
@@ -574,3 +574,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;
+}