import os
import struct
rowsize=171
binaryFile = file('/mnt/ramses1/mar/gpsSource03-04h.nat', 'rb')

#sourceID,ra,dec,sigra,sigdec,epoch,mura,mudec,sigmura,sigmudec,chi2,mergedClassStat,mergedclass,pStar,pGalaxy,pNoise,psaturated,nframes,priOrSec,jAperMag3,jAperMag3Err,jErrBits,jppErrBits,hAperMag3,hAperMag3Err,hErrBits,hppErrBits,k_1AperMag3,k_1AperMag3Err,k_1ErrBits,k_1ppErrBits,k_2AperMag3,k_2AperMag3Err,k_2ErrBits,k_2ppErrBits,h2AperMag3,h2AperMag3Err,h2ErrBits,h2ppErrBits 
 

while True:
      rowBinary = binaryFile.read(rowsize)
      if not rowBinary:
      	 break
      row= struct.unpack('<q 2d 2f d 6f h 4f b q 2f 2i 2f 2i 2f 2i 2f 2i 2f 2i', rowBinary)
      print row
binaryFile.close()
