1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: FeaturesPlugin_ExtrusionBoolean.h
4 // Created: 11 June 2015
5 // Author: Dmitry Bobylev
7 #ifndef FeaturesPlugin_ExtrusionBoolean_H_
8 #define FeaturesPlugin_ExtrusionBoolean_H_
10 #include "FeaturesPlugin_Extrusion.h"
11 #include "FeaturesPlugin_CompositeBoolean.h"
13 /// \class FeaturesPlugin_ExtrusionBoolean
15 /// \brief Interface for the composite extrusion feature.
16 class FeaturesPlugin_ExtrusionBoolean: public FeaturesPlugin_Extrusion, public FeaturesPlugin_CompositeBoolean
19 /// Request for initialization of data model of the feature: adding all attributes.
20 FEATURESPLUGIN_EXPORT virtual void initAttributes();
23 FeaturesPlugin_ExtrusionBoolean(){};
25 // Creates extrusions.
26 bool makeGeneration(ListOfShape& theBaseShapes,
27 ListOfMakeShape& theMakeShapes);
29 /// Stores generation history.
30 void storeGenerationHistory(ResultBodyPtr theResultBody,
31 const GeomShapePtr theBaseShape,
32 const std::shared_ptr<GeomAlgoAPI_MakeShape> theMakeShape,