1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
<swigxml:swig name="namespaces" xmlns:swigxml="http://jniplusplus.sourceforge.net" xmlns:swig="http://swig.sourceforge.net" xmlns:c="http://www.ansi.org" >
<swig:top >
<swigxml:child >
<swig:file name="../../Lib/swig.swg" >
<swigxml:type string="include" />
</swig:file>
<swig:file name="example_inl.i" >
<swigxml:child >
<swig:module name="example" />
<swig:insert >
<swigxml:code >
#include "example.h"
</swigxml:code>
</swig:insert>
<c:function name="dot_product" >
<swigxml:parms >
<swigxml:parm name="a" >
<swigxml:type string="Vector" />
</swigxml:parm>
<swigxml:parm name="b" >
<swigxml:type string="Vector" />
</swigxml:parm>
</swigxml:parms>
<swigxml:storage string="extern" />
<swigxml:type string="double" />
</c:function>
<c:function name="vector_add" >
<swigxml:parms >
<swigxml:parm name="a" >
<swigxml:type string="Vector" />
</swigxml:parm>
<swigxml:parm name="b" >
<swigxml:type string="Vector" />
</swigxml:parm>
</swigxml:parms>
<swigxml:storage string="extern" />
<swigxml:type string="Vector" />
</c:function>
<c:function name="free" >
<swigxml:parms >
<swigxml:parm >
<swigxml:type string="p.void" />
</swigxml:parm>
</swigxml:parms>
<swigxml:type string="void" />
</c:function>
<swig:insert >
<swigxml:code >
Vector *new_Vector(double x, double y, double z) {
Vector *v = (Vector *) malloc(sizeof(Vector));
v->x = x;
v->y = y;
v->z = z;
return v;
}
void vector_print(Vector *v) {
printf("Vector %x = (%g, %g, %g)\n", v, v->x, v->y, v->z);
}
</swigxml:code>
</swig:insert>
<c:function name="new_Vector" >
<swigxml:parms >
<swigxml:parm name="x" >
<swigxml:type string="double" />
</swigxml:parm>
<swigxml:parm name="y" >
<swigxml:type string="double" />
</swigxml:parm>
<swigxml:parm name="z" >
<swigxml:type string="double" />
</swigxml:parm>
</swigxml:parms>
<swigxml:code >
{
Vector *v = (Vector *) malloc(sizeof(Vector));
v->x = x;
v->y = y;
v->z = z;
return v;
} </swigxml:code>
<swigxml:type string="p.Vector" />
</c:function>
<c:function name="vector_print" >
<swigxml:parms >
<swigxml:parm name="v" >
<swigxml:type string="p.Vector" />
</swigxml:parm>
</swigxml:parms>
<swigxml:code >
{
printf("Vector %x = (%g, %g, %g)\n", v, v->x, v->y, v->z);
} </swigxml:code>
<swigxml:type string="void" />
</c:function>
</swigxml:child>
<swigxml:type string="include" />
</swig:file>
</swigxml:child>
</swig:top>
</swigxml:swig>
|