1 // Name : ParametersAPI_Parameter.h
5 // 16/06/16 - Sergey POKHODENKO - Creation of the file
7 #ifndef SRC_PARAMETERSAPI_PARAMETERSAPI_PARAMETER_H_
8 #define SRC_PARAMETERSAPI_PARAMETERSAPI_PARAMETER_H_
10 //--------------------------------------------------------------------------------------
11 #include "ParametersAPI.h"
13 #include <ParametersPlugin_Parameter.h>
15 #include <ModelHighAPI_Interface.h>
16 #include <ModelHighAPI_Macro.h>
17 //--------------------------------------------------------------------------------------
18 class ModelHighAPI_Double;
19 //--------------------------------------------------------------------------------------
20 /**\class ParametersAPI_Parameter
22 * \brief Interface for Parameter feature
24 class ParametersAPI_Parameter : public ModelHighAPI_Interface
27 /// Constructor without values
29 explicit ParametersAPI_Parameter(const std::shared_ptr<ModelAPI_Feature> & theFeature);
30 /// Constructor with values
32 explicit ParametersAPI_Parameter(const std::shared_ptr<ModelAPI_Feature> & theFeature,
33 const std::string & theName,
34 const std::string & theExpression,
35 const std::string & theComment = std::string());
38 virtual ~ParametersAPI_Parameter();
40 INTERFACE_3(ParametersPlugin_Parameter::ID(),
41 name, ParametersPlugin_Parameter::VARIABLE_ID(), ModelAPI_AttributeString, /** Name */,
42 expression, ParametersPlugin_Parameter::EXPRESSION_ID(), ModelAPI_AttributeString, /** Expression */,
43 comment, ParametersPlugin_Parameter::COMMENT_ID(), ModelAPI_AttributeString, /** Comment */
48 //! Pointer on Parameter object
49 typedef std::shared_ptr<ParametersAPI_Parameter> ParameterPtr;
51 /**\ingroup CPPHighAPI
52 * \brief Create Parameter feature
55 ParameterPtr addParameter(const std::shared_ptr<ModelAPI_Document> & thePart,
56 const std::string & theName,
57 const std::string & theExpression,
58 const std::string & theComment = std::string());
60 //--------------------------------------------------------------------------------------
61 //--------------------------------------------------------------------------------------
62 #endif /* SRC_PARAMETERSAPI_PARAMETERSAPI_PARAMETER_H_ */