I'm already dealing with binary data (I16's). Data size is fairly large; several dozen channels at 25KHz for at leat 30 minutes. The end users of the data prefer compressed Matlab file format, which uses the same zlib compression, but you have to have the entire variable as a single block.
What I have been doing is saving each channel as a separate binary file (we recieve the data on one second interrupts). Once the test is complete, I can use gzip to compress each file, then I modify the file header to change it from a gzipped file to a matfile. (It's a bit more complicated than that, but that's the gist of it).
What I would perfer to do is skip having to save the (very large) binary files, but in order to do that, as I originally mentioned, I need to have a compression routine that will accept a stream of data rather than the entire block as the zlib vi's currently expect.
I've looked at the source code for the orginal zlib, and it can handle streams very well, but the labivew implemention does not, so I'm hoping someone knows of either a workaround or a different implentation of the zlib routines.
Thanks,
Chad