/* File : example.h */ // Some template definitions template T max(T a, T b) { return a>b ? a : b; } template class vector { T *v; int sz; public: vector(int _sz) { v = new T[_sz]; sz = _sz; } T &get(int index) { return v[index]; } void set(int index, T &val) { v[index] = val; } #ifdef SWIG %extend { T getitem(int index) { return $self->get(index); } void setitem(int index, T val) { $self->set(index,val); } } #endif };