Salome HOME
Update the Doxygen documentation for the Model* packages
[modules/shaper.git] / src / ModelAPI / ModelAPI_ResultParameter.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        ModelAPI_ResultParameter.h
4 // Created:     07 Jul 2014
5 // Author:      Vitaly SMETANNIKOV
6
7 #ifndef MODELAPI_RESULTPARAMETER_H_
8 #define MODELAPI_RESULTPARAMETER_H_
9
10 #include <ModelAPI.h>
11 #include <ModelAPI_Result.h>
12
13 /**\class ModelAPI_ResultParameter
14  * \ingroup DataModel
15  * \brief The construction element result of a feature.
16  *
17  * Provides a shape that may be displayed in the viewer.
18  * Intermediate, light result that in many cases produces a result on the fly.
19  */
20 class ModelAPI_ResultParameter : public ModelAPI_Result
21 {
22  public:
23   /// Returns the group identifier of this result
24   virtual std::string groupName()
25   {
26     return group();
27   }
28
29   /// Returns the group identifier of this result
30   inline static std::string group()
31   {
32     static std::string MY_GROUP = "Parameters";
33     return MY_GROUP;
34   }
35   /// The computed value attribute Id
36   inline static const std::string& VALUE()
37   {
38     static const std::string MY_VALUE_ID("Value");
39     return MY_VALUE_ID;
40   }
41
42   /// The computational error attribute Id
43   inline static const std::string& STATE()
44   {
45     static const std::string MY_VALUE_ID("State");
46     return MY_VALUE_ID;
47   }
48
49   /// The generic initialization of attributes
50   virtual void initAttributes() = 0;
51
52   /// Destructor
53   MODELAPI_EXPORT ~ModelAPI_ResultParameter();
54
55 };
56
57 //! Pointer on feature object
58 typedef std::shared_ptr<ModelAPI_ResultParameter> ResultParameterPtr;
59
60 #endif