Salome HOME
Remove trailing space.
[modules/kernel.git] / src / SALOMEDSImpl / SALOMEDSImpl_UseCaseBuilder.hxx
index bf6cc093d175befc67a8cf8ce548a2f962e879d2..073f793ecd9e9187b3ff3e97807e442373c47d99 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2024  CEA, EDF, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -43,13 +43,17 @@ private:
   SALOMEDSImpl_AttributeTreeNode*     _root;
   DF_Document*                        _doc;
 
+  //[bos #19765] optimize inserting huge nb objects in the study
+  SALOMEDSImpl_AttributeTreeNode*     _lastChild;
+  int                                 _childIndex; // in C mode
+
 public:
 
   //! standard constructor  
   SALOMEDSImpl_UseCaseBuilder(DF_Document* theDocument);
 
   //! standard destructor
-  ~SALOMEDSImpl_UseCaseBuilder();
+  virtual ~SALOMEDSImpl_UseCaseBuilder();
 
   virtual bool Append(const SALOMEDSImpl_SObject& theObject);
 
@@ -59,6 +63,8 @@ public:
 
   virtual bool InsertBefore(const SALOMEDSImpl_SObject& theFirst, const SALOMEDSImpl_SObject& theNext);
 
+  int GetIndexInFather(const SALOMEDSImpl_SObject& theFather, const SALOMEDSImpl_SObject& theObject);
+
   virtual bool  SetCurrentObject(const SALOMEDSImpl_SObject& theObject);
 
   virtual bool SetRootCurrent();