1 // File: FeaturesPlugin_Group.h
2 // Created: 08 Oct 2014
3 // Author: Sergey BELASH
5 #ifndef FEATURESPLUGIN_GROUP_H_
6 #define FEATURESPLUGIN_GROUP_H_
8 #include "FeaturesPlugin.h"
9 #include <ModelAPI_Feature.h>
10 #include <GeomAPI_Shape.h>
12 class FeaturesPlugin_Group : public ModelAPI_Feature
16 inline static const std::string& ID()
18 static const std::string MY_GROUP_ID("Group");
21 /// attribute name of group name
22 //inline static const std::string& NAME_ID()
24 // static const std::string MY_GROUP_NAME_ID("group_name");
25 // return MY_GROUP_NAME_ID;
27 /// attribute name of selected entities list
28 inline static const std::string& LIST_ID()
30 static const std::string MY_GROUP_LIST_ID("group_list");
31 return MY_GROUP_LIST_ID;
34 /// Returns the kind of a feature
35 FEATURESPLUGIN_EXPORT virtual const std::string& getKind()
37 static std::string MY_KIND = FeaturesPlugin_Group::ID();
41 /// Creates a new part document if needed
42 FEATURESPLUGIN_EXPORT virtual void execute();
44 /// Request for initialization of data model of the feature: adding all attributes
45 FEATURESPLUGIN_EXPORT virtual void initAttributes();
47 /// Result of groups is created on the fly and don't stored to the document
48 FEATURESPLUGIN_EXPORT virtual bool isPersistentResult() {return true;}
50 /// Use plugin manager for features creation
51 FeaturesPlugin_Group();