Salome HOME
dc3378df2ee02cae4cd1508956b1b6b7c9b1ea0b
[modules/shaper.git] / src / ModelHighAPI / ModelHighAPI_Tools.h
1 // Name   : ModelHighAPI_Tools.h
2 // Purpose: 
3 //
4 // History:
5 // 07/06/16 - Sergey POKHODENKO - Creation of the file
6
7 #ifndef SRC_MODELHIGHAPI_MODELHIGHAPI_TOOLS_H_
8 #define SRC_MODELHIGHAPI_MODELHIGHAPI_TOOLS_H_
9
10 //--------------------------------------------------------------------------------------
11 #include "ModelHighAPI.h"
12
13 #include <list>
14 #include <memory>
15 #include <string>
16 //--------------------------------------------------------------------------------------
17 class GeomAPI_Dir;
18 class GeomAPI_Pnt;
19 class GeomAPI_Pnt2d;
20 //--------------------------------------------------------------------------------------
21 class GeomDataAPI_Dir;
22 class GeomDataAPI_Point;
23 class GeomDataAPI_Point2D;
24 //--------------------------------------------------------------------------------------
25 class ModelAPI_AttributeBoolean;
26 class ModelAPI_AttributeDocRef;
27 class ModelAPI_AttributeDouble;
28 class ModelAPI_AttributeIntArray;
29 class ModelAPI_AttributeInteger;
30 class ModelAPI_AttributeRefAttr;
31 class ModelAPI_AttributeRefAttrList;
32 class ModelAPI_AttributeReference;
33 class ModelAPI_AttributeRefList;
34 class ModelAPI_AttributeSelection;
35 class ModelAPI_AttributeSelectionList;
36 class ModelAPI_AttributeString;
37 class ModelAPI_Object;
38 //--------------------------------------------------------------------------------------
39 class ModelHighAPI_Double;
40 class ModelHighAPI_Integer;
41 class ModelHighAPI_RefAttr;
42 class ModelHighAPI_Selection;
43 //--------------------------------------------------------------------------------------
44 MODELHIGHAPI_EXPORT
45 void fillAttribute(const std::shared_ptr<GeomAPI_Pnt2d> & theValue,
46                    const std::shared_ptr<GeomDataAPI_Point2D> & theAttribute);
47
48 MODELHIGHAPI_EXPORT
49 void fillAttribute(const std::shared_ptr<GeomDataAPI_Point2D> & theAttribute,
50                    double theX, double theY);
51
52 MODELHIGHAPI_EXPORT
53 void fillAttribute(const std::shared_ptr<GeomAPI_Dir> & theValue,
54                    const std::shared_ptr<GeomDataAPI_Dir> & theAttribute);
55
56 MODELHIGHAPI_EXPORT
57 void fillAttribute(const std::shared_ptr<GeomAPI_Pnt> & theValue,
58                    const std::shared_ptr<GeomDataAPI_Point> & theAttribute);
59
60 //--------------------------------------------------------------------------------------
61 MODELHIGHAPI_EXPORT
62 void fillAttribute(bool theValue,
63                    const std::shared_ptr<ModelAPI_AttributeBoolean> & theAttribute);
64
65 MODELHIGHAPI_EXPORT
66 void fillAttribute(const ModelHighAPI_Double & theValue,
67                    const std::shared_ptr<ModelAPI_AttributeDouble> & theAttribute);
68
69 MODELHIGHAPI_EXPORT
70 void fillAttribute(double theValue,
71                    const std::shared_ptr<ModelAPI_AttributeDouble> & theAttribute);
72
73 MODELHIGHAPI_EXPORT
74 void fillAttribute(const ModelHighAPI_Integer & theValue,
75                    const std::shared_ptr<ModelAPI_AttributeInteger> & theAttribute);
76
77 MODELHIGHAPI_EXPORT
78 void fillAttribute(const ModelHighAPI_RefAttr & theValue,
79                    const std::shared_ptr<ModelAPI_AttributeRefAttr> & theAttribute);
80
81 MODELHIGHAPI_EXPORT
82 void fillAttribute(const std::list<ModelHighAPI_RefAttr> & theValue,
83                    const std::shared_ptr<ModelAPI_AttributeRefAttrList> & theAttribute);
84
85 MODELHIGHAPI_EXPORT
86 void fillAttribute(const std::shared_ptr<ModelAPI_Object> & theValue,
87                    const std::shared_ptr<ModelAPI_AttributeReference> & theAttribute);
88
89 MODELHIGHAPI_EXPORT
90 void fillAttribute(const std::list<std::shared_ptr<ModelAPI_Object> > & theValue,
91                    const std::shared_ptr<ModelAPI_AttributeRefList> & theAttribute);
92
93 MODELHIGHAPI_EXPORT
94 void fillAttribute(const ModelHighAPI_Selection & theValue,
95                    const std::shared_ptr<ModelAPI_AttributeSelection> & theAttribute);
96
97 MODELHIGHAPI_EXPORT
98 void fillAttribute(const std::list<ModelHighAPI_Selection> & theValue,
99                    const std::shared_ptr<ModelAPI_AttributeSelectionList> & theAttribute);
100
101 MODELHIGHAPI_EXPORT
102 void fillAttribute(const std::string & theValue,
103                    const std::shared_ptr<ModelAPI_AttributeString> & theAttribute);
104 MODELHIGHAPI_EXPORT
105 void fillAttribute(const char * theValue,
106                    const std::shared_ptr<ModelAPI_AttributeString> & theAttribute);
107
108 //--------------------------------------------------------------------------------------
109 //--------------------------------------------------------------------------------------
110 #endif /* SRC_MODELHIGHAPI_MODELHIGHAPI_TOOLS_H_ */