diff --git a/AUTHORS.txt b/AUTHORS.txt index 8e8c0cf..b4f5d38 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -7,10 +7,19 @@ Address: Dept. of Bioengineering URL: http://fanglab.org Email: -ZMAT Website : http://iso2mesh.sf.net/jsonlab +ZMAT Website : https://github.com/fangq/zmat + The base64_{encode,decode} functions in the zmat.cpp functions were copied from http://web.mit.edu/freebsd/head/contrib/wpa/src/utils/base64.c http://web.mit.edu/freebsd/head/contrib/wpa/src/utils/base64.h written by Jouni Malinen licensed under the BSD license + + +The optional LZMA/LZIP compression support is provided by +the easylzma library written by Lloyd Hilaiel, which was +built on Igor Pavlov's LZMA library (both previous works +were released under the public domain) + +https://github.com/lloyd/easylzma diff --git a/ChangeLog.txt b/ChangeLog.txt index d505780..83bc4e0 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -1,5 +1,11 @@ = Change Log = +== ZMAT 0.8.0 (Mox-the-fox), FangQ == + + 2019-05-07 [27a8583] make lzma optional in compilation, use static library + 2019-05-06 [3d8de61] support lzma compression via easylzma, close #1 + + == ZMAT 0.5.0 (Zac-the-rat), FangQ == 2019-05-04 [ ] tag and release v0.5.0 diff --git a/LICENSE.txt b/LICENSE.txt index 617a305..a737dcf 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,28 +1,3 @@ -=============================================================================== -= ZMAT - a portable compression/decompression toobox for MATLAB/Octave = -=============================================================================== - -Copyright (c) 2019 Qianqian Fang - -The base64_{encode,decode} functions in the zmat.cpp functions are copyrighted by -Copyright (c) 2005-2011, Jouni Malinen - -------------------------------------------------------------------------------- - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . - ------------------------------------------------------------------------- GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 diff --git a/README.rst b/README.rst index fc2362c..83df812 100644 --- a/README.rst +++ b/README.rst @@ -4,7 +4,7 @@ * Copyright (C) 2019 Qianqian Fang * License: GNU General Public License version 3 (GPL v3), see License*.txt -* Version: 0.5 (Zac-the-rat) +* Version: 0.8 (Mox-the-fox) * Binaries: http://github.com/fangq/zmat_mex * URL: http://github.com/fangq/zmat @@ -19,9 +19,9 @@ Table of Contents Introduction ============ -ZMat is a portable mex function to enable zlib/gzip based data -compression/decompression and base64 encoding/decoding support in -MATLAB and GNU Octave. It is fast and portable, can compress a +ZMat is a portable mex function to enable zlib/gzip/lzma/lzip based +data compression/decompression and base64 encoding/decoding support +in MATLAB and GNU Octave. It is fast and portable, can compress a large array within a fraction of a second. ZMat accepts 3 types of inputs: char-based strings, uint8 arrays @@ -104,8 +104,8 @@ zmat.m input: input: a string, int8 or uint8 array - iscompress: (optional) if iscompress is 1, zmat compresses the input, - if 0, it decompresses the input. Default value is 1. + iscompress: (optional) if iscompress is 1, zmat compresses/encodes the input, + if 0, it decompresses/decodes the input. Default value is 1. method: (optional) compression method, currently, zmat supports the below methods 'zlib': zlib/zip based data compression (default) 'gzip': gzip formatted data compression @@ -122,13 +122,14 @@ zmat.m example: - [ss, info]=zmat(uint8(eye(5))) % compress an 5x5 identity matrix - orig=zmat(ss,0) % decompress the compressed matrix - orig=reshape(orig, info.size) % restore the original size using info output - ss=char(zmat('zmat test',1,'base64')) % encode a string using base64 - orig=char(zmat(ss,0,'base64')) % decode the base64 string + [ss, info]=zmat(uint8(eye(5))) + orig=zmat(ss,0) + orig=reshape(orig, info.size) + ss=char(zmat('zmat test',1,'base64')) + orig=char(zmat(ss,0,'base64')) - -- this function is part of the zmat toolbox (http://github.com/fangq/zmat) + -- this function is part of the ZMAT toolbox (http://github.com/fangq/zmat) + --------- examples diff --git a/zmat.m b/zmat.m index f940c04..a266352 100644 --- a/zmat.m +++ b/zmat.m @@ -11,8 +11,8 @@ % % input: % input: a string, int8 or uint8 array -% iscompress: (optional) if iscompress is 1, zmat compresses the input, -% if 0, it decompresses the input. Default value is 1. +% iscompress: (optional) if iscompress is 1, zmat compresses/encodes the input, +% if 0, it decompresses/decodes the input. Default value is 1. % method: (optional) compression method, currently, zmat supports the below methods % 'zlib': zlib/zip based data compression (default) % 'gzip': gzip formatted data compression