
import gnosis.xml.pickle as xml_pickle
import Numeric,array
import funcs

funcs.set_parser()

class foo: pass

f = foo()

f.a = Numeric.array([[1,2,3,4],[5,6,7,8]])
f.b = Numeric.array([1.2,2.3,3.4,4.5])
f.y = array.array('b',[1,2,3,4])
f.z = array.array('f',[1,2,3,4])

a = Numeric.array([6,7,8,9])

# make sure refs work
f.l = [a,a,a]

f.d = {'One':a,'Two':Numeric.array([10,11,12])}
f.e = f.d['Two']

print f.a, f.b, f.y,f.z,f.l,f.d,f.e

x = xml_pickle.dumps(f)
#print x

del f

g = xml_pickle.loads(x)
print g.a,g.b,g.y,g.z,g.l,g.d,g.e


print "XML ", x
