1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: Model_ResultGroup.h
4 // Created: 08 Jul 2014
5 // Author: Mikhail PONIKAROV
7 #ifndef Model_ResultGroup_H_
8 #define Model_ResultGroup_H_
11 #include <ModelAPI_ResultGroup.h>
13 /**\class Model_ResultGroup
15 * \brief The groups result.
17 * Provides a compound of selected elements, without storage, one the fly.
19 class Model_ResultGroup : public ModelAPI_ResultGroup
21 std::shared_ptr<ModelAPI_Data> myOwnerData; ///< data of owner of this result
23 /// default color for a result body
24 inline static const std::string& DEFAULT_COLOR()
26 static const std::string RESULT_GROUP_COLOR("150,150,180");
27 return RESULT_GROUP_COLOR;
29 /// Request for initialization of data model of the result: adding all attributes
30 virtual void initAttributes();
32 // Retuns the parameters of color definition in the resources config manager
33 MODEL_EXPORT virtual void colorConfigInfo(std::string& theSection, std::string& theName,
34 std::string& theDefault);
36 /// Returns the compound of selected entities
37 MODEL_EXPORT virtual std::shared_ptr<GeomAPI_Shape> shape();
39 /// Removes the stored builders
40 MODEL_EXPORT virtual ~Model_ResultGroup() {}
43 /// Makes a body on the given feature data
44 Model_ResultGroup(std::shared_ptr<ModelAPI_Data> theOwnerData);
46 friend class Model_Objects;