Commits

David Campbell committed b6b9b82

array test added

Comments (0)

Files changed (5)

 #include "./test.h"
 
 void stuff(PYTEST2* pyt) {
-	printf("%d", pyt->pytest->i);
+	int i;
+	printf("%d\n", pyt->pytest->i);
+	for (i = 0; i < pyt->pytest->i; i++)
+		printf("%d ", pyt->pytest->ints[i]);
+	printf("\n");
 }
 
 typedef struct pytest1 {
 	int i;
+	int* ints;
 } PYTEST1;
 
 typedef struct PYTEST2 {

svmlight/test.h.gch

Binary file modified.
 from ctypes import *
 
 class PY1(Structure):
-	_fields_ = [("i", c_int)]
-
+	_fields_ = [("i", c_int),
+			    ("arr", POINTER(c_int))]
 
 class PY2(Structure):
-	_fields_ = [("pytest", PY1)]
+	_fields_ = [("pytest", POINTER(PY1))]
 
 if __name__ == "__main__":
 	t = CDLL("./test.so")
+	py1 = PY1()
+	py1.i = 5
+	ints = (c_int * 5)()
+	ints[2] = 99
+	py1.arr = ints
 	py2 = PY2()
-	t.stuff(py2)
+	py2.pytest = pointer(py1)
+	print "hi"
+	t.stuff(pointer(py2))

svmlight/test.so

Binary file modified.