/trunk/Examples/tcl/reference/example.i
Swig | 46 lines | 29 code | 12 blank | 5 comment | 0 complexity | f938896108e73666eec0117148301e11 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"
- %}
- 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;
- }
- }
- };