zlib
The zlib Mosel module is an interface to the zlib compression library by Jean-Loup Gailly and Mark Adler (http://zlib.net). Thanks to two IO drivers it makes possible the creation and use of compressed files from Mosel models. As an additional feature this module also integrates the MiniZip library by Gilles Vollant (http://www.winimage.com/zLibDll/minizip.html) for supporting the ZIP archive format.
I/O drivers
The following two drivers behave the same: a stream open for reading is decompressed and a stream open for writing is created compressed. Both drivers are also based on the same compression algorithm (deflate) but use different container formats. The last published driver (zip) can only be open for reading: it will be used to access a file stored in a zip archive. For more advanced use of ZIP archives please refer to the dedicated routines proposed by the mmsystem module.
Driver gzip
gzip:filename
This driver handles files compressed using the gzip compression format: this corresponds to files created using the gzip compression tool.
For instance the following statement decompresses the file "myfile.gz":
fcopy("zlib.gzip:myfile.gz","myfile")
Driver deflate
deflate:filename
This driver handles files compressed using the zlib compression format. This driver can read documents compressed by gzip but compressed files it generates are not compatible with this tool.
Driver zip
zip:zipfile,filename
This driver handles archives using the ZIP format. It can be used only for reading files: the filename of this driver consists in two parts separated by a coma. The first part is the name of the archive to open and the second one is the archive member name.
For instance the following statement compiles the file "main.mos" stored in the archive "myproject.zip":
compile("G","zlib.zip:myproject.zip,main.mos","tmp:main.bim")