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,
17 public FeaturesPlugin_CompositeBoolean
20 /// Request for initialization of data model of the feature: adding all attributes.
21 FEATURESPLUGIN_EXPORT virtual void initAttributes();
24 FeaturesPlugin_ExtrusionBoolean(){};
26 // Creates extrusions.
27 bool makeGeneration(ListOfShape& theBaseShapes,
28 ListOfMakeShape& theMakeShapes);
30 /// Stores generation history.
31 void storeGenerationHistory(ResultBodyPtr theResultBody,
32 const GeomShapePtr theBaseShape,
33 const std::shared_ptr<GeomAlgoAPI_MakeShape> theMakeShape,