/tags/Root-branch-php-utl/SWIG/Examples/python/reference/example.i
Swig | 48 lines | 30 code | 13 blank | 5 comment | 0 complexity | edff5e7d19cfc9349a9da02312c4fd16 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- /* File : example.i */
- /* This file has a few "typical" uses of C++ references. */
- %module example
- %{
- #include "example.h"
- %}
- %rename(cprint) print;
- class Vector {
- public:
- Vector(double x, double y, double z);
- ~Vector();
- char *print();
- };
- /* This helper function calls an overloaded operator */
- %inline %{
- Vector addv(Vector &a, Vector &b) {
- return a+b;
- }
- %}
- /* Wrapper around an array of vectors class */
- class VectorArray {
- public:
- VectorArray(int maxsize);
- ~VectorArray();
- int size();
-
- /* This wrapper provides an alternative to the [] operator */
- %extend {
- Vector &get(int index) {
- return (*self)[index];
- }
- void set(int index, Vector &a) {
- (*self)[index] = a;
- }
- }
- };