X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGeomDataAPI%2FGeomDataAPI.i;h=24da73652b8bbf0ddb185b9a499c39802f8940c1;hb=6f77dfcd9833cdba0c583e6218350f1f7043eb8b;hp=455e0122e642146eaa073e5176c52bd11564da39;hpb=1a6a9c1c0c466abb867f2c2815b20aa0620a444c;p=modules%2Fshaper.git diff --git a/src/GeomDataAPI/GeomDataAPI.i b/src/GeomDataAPI/GeomDataAPI.i index 455e0122e..24da73652 100644 --- a/src/GeomDataAPI/GeomDataAPI.i +++ b/src/GeomDataAPI/GeomDataAPI.i @@ -1,28 +1,44 @@ /* GeomDataAPI.i */ %module GeomDataAPI %{ + #include "ModelAPI_Attribute.h" #include "GeomDataAPI.h" #include "GeomDataAPI_Point.h" #include "GeomDataAPI_Dir.h" #include "GeomDataAPI_Point2D.h" - #include + + #include + #include + #include + + template std::shared_ptr castTo(std::shared_ptr theObject) + { + return std::dynamic_pointer_cast(theObject); + } %} // to avoid error on this #define GEOMDATAAPI_EXPORT +#define MODELAPI_EXPORT // standard definitions %include "typemaps.i" %include "std_string.i" -//%include +%include "std_list.i" +%include "std_shared_ptr.i" -// boost pointers -%include +%shared_ptr(ModelAPI_Attribute) %shared_ptr(GeomDataAPI_Point) %shared_ptr(GeomDataAPI_Dir) %shared_ptr(GeomDataAPI_Point2D) // all supported interfaces +%include "ModelAPI_Attribute.h" %include "GeomDataAPI_Point.h" %include "GeomDataAPI_Dir.h" %include "GeomDataAPI_Point2D.h" + +template std::shared_ptr castTo(std::shared_ptr theObject); +%template(geomDataAPI_Point) castTo; +%template(geomDataAPI_Dir) castTo; +%template(geomDataAPI_Point2D) castTo;