public static int rawUncompress(byte[] input, int inputOffset, int inputLength, Object output, int outputOffset)
            throws IOException
    {
        if (input == null || output == null) {
            throw new NullPointerException("input or output is null");
        }
        return impl.rawUncompress(input, inputOffset, inputLength, output, outputOffset);
    }
public static int rawUncompress ( byte [ ] input , int inputOffset , int inputLength , Object output , int outputOffset ) throws IOException { if ( input == null || output == null ) { throw new NullPointerException ( "input or output is null" ) ; } return impl . rawUncompress ( input , inputOffset , inputLength , output , outputOffset ) ; }
Uncompress the content in the input buffer. The uncompressed data is
written to the output buffer.
<p/>
Note that if you pass the wrong data or the range [inputOffset,
inputOffset + inputLength) that cannot be uncompressed, your JVM might
crash due to the access violation exception issued in the native code
written in C++. To avoid this type of crash, use
{@link #isValidCompressedBuffer(byte[], int, int)} first.

@param input input byte array
@param inputOffset byte offset in the input byte array
@param inputLength byte length of the input data
@param output output buffer, MUST be a primitive type array
@param outputOffset byte offset in the output buffer
@return the byte size of the uncompressed data
@throws IOException when failed to uncompress the input data