GEMMA python module home

Source code for gemma.readfuncs

import struct
import numpy as np

[docs]def readbool(f): return struct.unpack('?', f.read(1))[0]
[docs]def readint(f): return struct.unpack('i', f.read(4))[0]
[docs]def readlong(f, x64=False): '''if x64: return struct.unpack('q', f.read(8))[0] else:''' return struct.unpack('l', f.read(4))[0]
[docs]def readfloat(f): return struct.unpack('f', f.read(4))[0]
[docs]def readstring(f): l = readint(f) return struct.unpack('%ds'%(l), f.read(l))[0]
[docs]def readarray(f, m, n): if m == 1: return np.array(struct.unpack('%if'%n, f.read(n*4))) else: A = np.empty((m, n)) for i in xrange(m): A[i] = struct.unpack('%if'%n, f.read(n*4)) return A