0026619: Tolerances of operands are modified using bop
[occt.git] / src / BRepAlgoAPI / BRepAlgoAPI_BuilderAlgo.hxx
index c0c9e7c..9ed9b27 100644 (file)
@@ -51,7 +51,17 @@ Standard_EXPORT virtual ~BRepAlgoAPI_BuilderAlgo();
   
   //! Returns the additional tolerance
   Standard_EXPORT Standard_Real FuzzyValue() const;
-  
+
+  //! Sets the flag that defines the mode of treatment.
+  //! In non-destructive mode the argument shapes are not modified. Instead
+  //! a copy of a sub-shape is created in the result if it is needed to be updated.
+  Standard_EXPORT void SetNonDestructive(const Standard_Boolean theFlag);
+
+  //! Returns the flag that defines the mode of treatment.
+  //! In non-destructive mode the argument shapes are not modified. Instead
+  //! a copy of a sub-shape is created in the result if it is needed to be updated.
+  Standard_EXPORT Standard_Boolean NonDestructive() const;
+
   //! Sets the arguments
   Standard_EXPORT void SetArguments (const TopTools_ListOfShape& theLS);
   
@@ -101,6 +111,7 @@ protected:
   BOPAlgo_PPaveFiller myDSFiller;
   BOPAlgo_PBuilder myBuilder;
   Standard_Real myFuzzyValue;
+  Standard_Boolean myNonDestructive;
   TopTools_ListOfShape myArguments;