Home | History | Annotate | Download | only in C
      1 /* Bcj2.h -- Converter for x86 code (BCJ2)
      2 2009-02-07 : Igor Pavlov : Public domain */
      3 
      4 #ifndef __BCJ2_H
      5 #define __BCJ2_H
      6 
      7 #include "Types.h"
      8 
      9 #ifdef __cplusplus
     10 extern "C" {
     11 #endif
     12 
     13 /*
     14 Conditions:
     15   outSize <= FullOutputSize,
     16   where FullOutputSize is full size of output stream of x86_2 filter.
     17 
     18 If buf0 overlaps outBuf, there are two required conditions:
     19   1) (buf0 >= outBuf)
     20   2) (buf0 + size0 >= outBuf + FullOutputSize).
     21 
     22 Returns:
     23   SZ_OK
     24   SZ_ERROR_DATA - Data error
     25 */
     26 
     27 int Bcj2_Decode(
     28     const Byte *buf0, SizeT size0,
     29     const Byte *buf1, SizeT size1,
     30     const Byte *buf2, SizeT size2,
     31     const Byte *buf3, SizeT size3,
     32     Byte *outBuf, SizeT outSize);
     33 
     34 #ifdef __cplusplus
     35 }
     36 #endif
     37 
     38 #endif
     39