/* File : template_classes.i */ /* Tests the use of one templated class within another */ %module template_classes %{ %} %inline %{ template class Point { public: T getX() {return x;} private: T x; }; template class RectangleTest { public: Point& getPoint() {return point;} void setPoint(Point& value) {point = value;} private: Point point; }; %} %template(PointInt) Point; %template(RectangleInt) RectangleTest;