Difference between revisions of "Org.simantics.fastlz"

From Developer Documents
Jump to navigation Jump to search
Line 10: Line 10:
 
All use of the FastLZ java library happens through the [[svn:utils/trunk/org.simantics.fastlz/src/org/simantics/fastlz/FastLZ.java|org.simantics.fastlz.FastLZ]] facade class:
 
All use of the FastLZ java library happens through the [[svn:utils/trunk/org.simantics.fastlz/src/org/simantics/fastlz/FastLZ.java|org.simantics.fastlz.FastLZ]] facade class:
  
     public static native int compressBuffer(ByteBuffer input, int inputOffset, int length,
+
     public static int compressBuffer(ByteBuffer input, int inputOffset, int length,
 
                                       ByteBuffer output, int outputOffset);
 
                                       ByteBuffer output, int outputOffset);
 
   
 
   
     public static native int decompressBuffer(ByteBuffer input, int inputOffset, int length,  
+
     public static int decompressBuffer(ByteBuffer input, int inputOffset, int length,  
 
                                         ByteBuffer output, int outputOffset, int maxout);
 
                                         ByteBuffer output, int outputOffset, int maxout);
 
   
 
   

Revision as of 12:13, 29 June 2011

org.simantics.fastlz is a simple JNI wrapper for the open-source FastLZ real-time data compression library. The native library is a pure C implementation. Our version is based on SVN revision 12. The library also contains a Java port of the algorithm which is employed by the front-end if the native library is not available.

Dependencies

  • None, it is a self-sufficient JAR ready for deployment
  • Data to compress/decompress!

Manual

All use of the FastLZ java library happens through the org.simantics.fastlz.FastLZ facade class:

    public static int compressBuffer(ByteBuffer input, int inputOffset, int length,
                                      ByteBuffer output, int outputOffset);

    public static int decompressBuffer(ByteBuffer input, int inputOffset, int length, 
                                        ByteBuffer output, int outputOffset, int maxout);

    public static InputStream read(File file) throws FileNotFoundException;

    public static OutputStream write(File file) throws FileNotFoundException;

ByteBuffers used in this interface can be either heap (ByteBuffer.allocate) or direct (ByteBuffer.allocateDirect). Use the same buffer type for both arguments for best performance.

Download

Version Date Download
1.1.0 now SVN

Current Development

Works, no plans for further development.