X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FFeaturesPlugin%2FFeaturesPlugin_Boolean.h;h=df9065b25fcc609de4bf909427f3af470e279f79;hb=8030eb14e6863867336c9d09653db64c1c5a4db8;hp=65ad15d2e99f2ba424a3ebb50e75681d613d8713;hpb=7b95df2653284e65f416373ff010af49ee8c68ef;p=modules%2Fshaper.git diff --git a/src/FeaturesPlugin/FeaturesPlugin_Boolean.h b/src/FeaturesPlugin/FeaturesPlugin_Boolean.h index 65ad15d2e..df9065b25 100644 --- a/src/FeaturesPlugin/FeaturesPlugin_Boolean.h +++ b/src/FeaturesPlugin/FeaturesPlugin_Boolean.h @@ -9,9 +9,11 @@ #include "FeaturesPlugin.h" #include -#include + #include +class GeomAlgoAPI_MakeShapeList; + /**\class FeaturesPlugin_Boolean * \ingroup Plugins * \brief Feature for applying of Boolean operations on Solids. @@ -29,6 +31,12 @@ public: return MY_ID; } /// attribute name of referenced object + inline static const std::string& OBJECT_LIST_ID() + { + static const std::string MY_OBJECT_LIST_ID("main_objects"); + return MY_OBJECT_LIST_ID; + } + /// attribute name of referenced object inline static const std::string& OBJECT_ID() { static const std::string MY_OBJECT_ID("main_object"); @@ -40,6 +48,12 @@ public: static const std::string MY_TOOL_ID("tool_object"); return MY_TOOL_ID; } + /// attribute name of tool object + inline static const std::string& TOOL_LIST_ID() + { + static const std::string MY_TOOL_LIST_ID("tool_objects"); + return MY_TOOL_LIST_ID; + } /// attribute name of operation type inline static const std::string& TYPE_ID() { @@ -48,8 +62,8 @@ public: } enum { - BOOL_CUT, - BOOL_FUSE, + BOOL_CUT, + BOOL_FUSE, BOOL_COMMON }; @@ -71,13 +85,12 @@ public: private: std::shared_ptr getShape(const std::string& theAttrName); - + /// Load Naming data structure of the feature to the document - void LoadNamingDS(GeomAlgoAPI_Boolean* theFeature, - std::shared_ptr theResultBody, - std::shared_ptr theObject, - std::shared_ptr theTool, - int theType); + void LoadNamingDS(std::shared_ptr theResultBody, + const std::shared_ptr& theBaseObject, + const ListOfShape& theTools, + const GeomAlgoAPI_Boolean& theAlgo); }; #endif