120 likes | 312 Views
LabVIEW Zip Tools. “A multi-platform Zip utility for LabVIEW”. As Presented by Jim Kring April 1, 2003. Presentation Outline. Background The shared library zlib wrapper LabVIEW API High-level VIs Advanced (De)Compression VIs Utility-level VIs and Shared Library API String Compression
E N D
LabVIEW Zip Tools “A multi-platform Zip utility for LabVIEW” As Presented by Jim Kring April 1, 2003
Presentation Outline • Background • The shared library zlib wrapper • LabVIEW API • High-level VIs • Advanced (De)Compression VIs • Utility-level VIs and Shared Library API • String Compression • MacBinary Support OpenG User Group Meeting
Background • LabVIEW Zip Tools is an OpenG Toolkit (OGTK) package http://opengtoolkit.sf.net • Rolf Kalbermatter wrote the shared library wrapper around the zlib 1.1.4 (de)compression library http://www.gzip.org/zlib/ • Chris Salzmann Compiled in Mac Classic & OS X and extended the shared library to support MacBinary Format. • lvzlib shared library compiled for Win32, Mac, Linux OpenG User Group Meeting
Zlib 1.1.4 • Open Source “freeware” • http://www.gzip.org/zlib/zlib_license.html • Adler-32 Error Checking (faster than CRC-32 but slightly more probabilty of false positive on random errors 655212 vs. 232 ) • .zip file compatible OpenG User Group Meeting
High-level LabVIEW API • Compress files and directories to an archive • Extract All files in an archive to a Dir OpenG User Group Meeting
Advanced Compression • Open Store Store … Close OpenG User Group Meeting
Advanced Decompression • Open, Extract, Close, and other File Indexing Operations OpenG User Group Meeting
Utility and Shared Library Functions • Allow binary data (as opposed to files) to be written/read to/from the zip archive. • Other useful features that are abstracted from the high-level API. OpenG User Group Meeting
String Compression • Operate on strings rather than files • Useful for compressing data that will be sent over TCP-IP and many other applications • This API is identical to that of a tool found on the NI DevZone OpenG User Group Meeting
MacBinary Support • Macintosh file’s have a resource fork which stores metadata. • MacBinary encoding stores the file and its resource fork into a single file, so that it may be zipped. • OGPI will need this for OpenG Packages with Macintosh Files OpenG User Group Meeting
Recap • http://opengtoolkit.sf.net/ or http://OpenG.org • shared library wrapper for Zlib 1.1.4 • LabVIEW API • High-level VIs • Advanced (De)Compression VIs • Utility-level VIs and Shared Library API • String Compression • MacBinary Support • Used By OGPI for (un)packing OpenG Package (.ogp) files OpenG User Group Meeting