Salome HOME
Issue #634 API must be wrapped by SWIG
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI.i
1 /* GeomAPI.i */
2 %module GeomAlgoAPI
3 %{
4   #include "GeomAlgoAPI.h"
5   #include "GeomAlgoAPI_Boolean.h"
6   #include "GeomAlgoAPI_CompoundBuilder.h"
7   #include "GeomAlgoAPI_DFLoader.h"
8   #include "GeomAlgoAPI_EdgeBuilder.h"
9   #include "GeomAlgoAPI_Extrusion.h"
10   #include "GeomAlgoAPI_FaceBuilder.h"
11   #include "GeomAlgoAPI_MakeShape.h"
12   #include "GeomAlgoAPI_MakeShapeList.h"
13   #include "GeomAlgoAPI_Movement.h"
14   #include "GeomAlgoAPI_Placement.h"
15   #include "GeomAlgoAPI_PointBuilder.h"
16   #include "GeomAlgoAPI_Prism.h"
17   #include "GeomAlgoAPI_Revolution.h"
18   #include "GeomAlgoAPI_Rotation.h"
19   #include "GeomAlgoAPI_ShapeProps.h"
20   #include "GeomAlgoAPI_SketchBuilder.h"
21   #include "GeomAlgoAPI_Tools.h"
22
23   #include <memory>
24   #include <string>
25   #include <list>
26 %}
27
28 // to avoid error on this
29 #define GEOMALGOAPI_EXPORT
30
31 // standard definitions
32 %include "typemaps.i"
33 %include "std_string.i"
34 %include "std_list.i"
35 %include "std_shared_ptr.i"
36
37 // all supported interfaces
38 %include "GeomAlgoAPI_Boolean.h"
39 %include "GeomAlgoAPI_CompoundBuilder.h"
40 %include "GeomAlgoAPI_DFLoader.h"
41 %include "GeomAlgoAPI_EdgeBuilder.h"
42 %include "GeomAlgoAPI_Extrusion.h"
43 %include "GeomAlgoAPI_FaceBuilder.h"
44 %include "GeomAlgoAPI_MakeShape.h"
45 %include "GeomAlgoAPI_MakeShapeList.h"
46 %include "GeomAlgoAPI_Movement.h"
47 %include "GeomAlgoAPI_Placement.h"
48 %include "GeomAlgoAPI_PointBuilder.h"
49 %include "GeomAlgoAPI_Prism.h"
50 %include "GeomAlgoAPI_Revolution.h"
51 %include "GeomAlgoAPI_Rotation.h"
52 %include "GeomAlgoAPI_ShapeProps.h"
53 %include "GeomAlgoAPI_SketchBuilder.h"
54 %include "GeomAlgoAPI_Tools.h"
55
56 %typemap(out) std::list< std::shared_ptr< GeomAPI_Shape > >::value_type & {
57   $result = SWIG_NewPointerObj(SWIG_as_voidptr(new std::shared_ptr<GeomAPI_Shape>(*$1)), $descriptor(std::shared_ptr<GeomAPI_Shape> *), SWIG_POINTER_OWN | 0 );
58 }
59 %template(ShapeList) std::list<std::shared_ptr<GeomAPI_Shape> >;