Salome HOME
22763: [EDF] Shape processing
[modules/geom.git] / src / GEOMImpl / GEOMImpl_CopyDriver.hxx
index 66380dbb33dfe60354368de31a3b7e4cc0f12b3d..602bc2ddc8d89ce65c8674a8bf03a81619d12b8e 100644 (file)
 #ifndef _GEOMImpl_CopyDriver_HeaderFile
 #define _GEOMImpl_CopyDriver_HeaderFile
 
-#ifndef _TColStd_SequenceOfExtendedString_HeaderFile
-#include <TColStd_SequenceOfExtendedString.hxx>
-#endif
-#ifndef _Standard_TypeMismatch_HeaderFile
-#include <Standard_TypeMismatch.hxx>
-#endif
-
-#ifndef _Standard_HeaderFile
-#include <Standard.hxx>
-#endif
-
-#ifndef _Standard_Macro_HeaderFile
-#include <Standard_Macro.hxx>
-#endif
-#ifndef _Standard_HeaderFile
-#include <Standard.hxx>
-#endif
-#ifndef _Standard_GUID_HeaderFile
-#include <Standard_GUID.hxx>
-#endif 
-
-#ifndef _TFunction_Driver_HeaderFile
-#include <TFunction_Driver.hxx>
-#endif
-#ifndef _TFunction_Logbook_HeaderFile
-#include <TFunction_Logbook.hxx>
-#endif
-#ifndef _Standard_CString_HeaderFile
-#include <Standard_CString.hxx>
-#endif
-
-class TColStd_SequenceOfExtendedString;
+class TopoDS_Shape;
+class TopTools_IndexedDataMapOfShapeListOfShape;
+class TopTools_IndexedMapOfShape;
+class Standard_GUID;
 
 
 #include "GEOM_BaseDriver.hxx"
 
+
 DEFINE_STANDARD_HANDLE( GEOMImpl_CopyDriver, GEOM_BaseDriver );
 
 class GEOMImpl_CopyDriver : public GEOM_BaseDriver {
@@ -82,6 +55,30 @@ Standard_EXPORT ~GEOMImpl_CopyDriver() {};
                               std::vector<GEOM_Param>& params);
 
 DEFINE_STANDARD_RTTI( GEOMImpl_CopyDriver )
+
+private:
+
+  Standard_Integer transferData(TFunction_Logbook& log) const;
+
+  Standard_Boolean getInPlace
+    (const TopoDS_Shape                              &theSourceShape,
+     const TopTools_IndexedMapOfShape                &theSourceIndices,
+     const TopoDS_Shape                              &theDestinationShape,
+           TopTools_IndexedDataMapOfShapeListOfShape &theMapSourceDest) const;
+
+  Standard_Boolean getInPlaceOld
+    (const Handle(GEOM_Function)                     &theSourceShapeRef,
+     const TopTools_IndexedMapOfShape                &theSourceIndices,
+     const TopoDS_Shape                              &theDestinationShape,
+           TopTools_IndexedDataMapOfShapeListOfShape &theMapSourceDest) const;
+
+  Standard_Boolean getInPlaceByHistory
+    (const Handle(GEOM_Function)                     &theSourceShapeRef,
+     const TopTools_IndexedMapOfShape                &theSourceIndices,
+     const TopoDS_Shape                              &theDestinationShape,
+     const Handle(GEOM_Function)                     &theDestinationRef,
+           TopTools_IndexedDataMapOfShapeListOfShape &theMapSourceDest) const;
+
 };
 
 #endif