Извини, не увидел, читал по диагонали.
Вот ф-ии из его inc файла:
Код:
// for the following functions, store some more information in the compressed buffer:
// - first integer is the source-uncompressed length, 2nd integer is the compressed length
// - so you can reserve memory for dest before calling lzodecompress(source,dest)
function lzocompress(var source, dest; sourcelen: integer): integer;
var buf: array[word] of byte;
destB: array [0..2] of integer absolute dest;
begin
lzo_compress(source,long,destB[2],result,buf);
destB[0] := sourcelen;
destB[1] := result;
inc(result,8); { size srclen+destlen }
end;
function lzodecompress(var source, dest: integer;
var destB: array [0..2] of integer absolute source;
begin
lzo_decompress(destB[2],destB[1],dest,result);
assert(result=destB[0]);
end;