Salome HOME
4885631164d38469126e7c23847595819d56128d
[modules/shaper.git] / src / SketchAPI / SketchAPI_Constraint.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2 // Name   : SketchAPI_Constraint.h
3 // Purpose: 
4 //
5 // History:
6 // 08/08/16 - Artem ZHIDKOV - Creation of the file
7
8 #ifndef SRC_SKETCHAPI_SKETCHAPI_CONSTRAINT_H_
9 #define SRC_SKETCHAPI_SKETCHAPI_CONSTRAINT_H_
10
11 #include "SketchAPI.h"
12
13 #include <ModelHighAPI_Interface.h>
14 #include <ModelHighAPI_Macro.h>
15 #include <ModelHighAPI_RefAttr.h>
16
17 #include <SketchPlugin_Constraint.h>
18
19 /**\class SketchAPI_Constraint
20  * \ingroup CPPHighAPI
21  * \brief Interface for Constraint feature
22  */
23 class SketchAPI_Constraint : public ModelHighAPI_Interface
24 {
25 public:
26   /// Constructor without values
27   SKETCHAPI_EXPORT
28   explicit SketchAPI_Constraint(const std::shared_ptr<ModelAPI_Feature> & theFeature);
29
30   /// Destructor
31   SKETCHAPI_EXPORT
32   virtual ~SketchAPI_Constraint();
33
34   static std::string ID()
35   {
36     static const std::string DUMMY;
37     return DUMMY;
38   }
39   virtual std::string getID() { return ID(); }
40
41   SKETCHAPI_EXPORT
42   bool initialize();
43
44   /// Dump wrapped feature
45   SKETCHAPI_EXPORT
46   virtual void dump(ModelHighAPI_Dumper& theDumper) const;
47 };
48
49 #endif