misc/libphysfs/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaRamDecode.h
branchui-scaling
changeset 15283 c4fd2813b127
parent 13390 0135e64c6c66
parent 15279 7ab5cf405686
child 15663 d92eeb468dad
equal deleted inserted replaced
13390:0135e64c6c66 15283:c4fd2813b127
     1 /* LzmaRamDecode.h */
       
     2 
       
     3 #ifndef __LzmaRamDecode_h
       
     4 #define __LzmaRamDecode_h
       
     5 
       
     6 #include <stdlib.h>
       
     7 
       
     8 /*
       
     9 LzmaRamGetUncompressedSize:
       
    10   In: 
       
    11     inBuffer - input data
       
    12     inSize   - input data size
       
    13   Out: 
       
    14     outSize  - uncompressed size
       
    15   Return code:
       
    16     0 - OK
       
    17     1 - Error in headers
       
    18 */
       
    19 
       
    20 int LzmaRamGetUncompressedSize(
       
    21     const unsigned char *inBuffer, 
       
    22     size_t inSize,
       
    23     size_t *outSize);
       
    24 
       
    25 
       
    26 /*
       
    27 LzmaRamDecompress:
       
    28   In: 
       
    29     inBuffer  - input data
       
    30     inSize    - input data size
       
    31     outBuffer - output data
       
    32     outSize   - output size
       
    33     allocFunc - alloc function (can be malloc)
       
    34     freeFunc  - free function (can be free)
       
    35   Out: 
       
    36     outSizeProcessed - processed size
       
    37   Return code:
       
    38     0 - OK
       
    39     1 - Error in headers / data stream
       
    40     2 - Memory allocating error
       
    41 
       
    42 Memory requirements depend from properties of LZMA stream.
       
    43 With default lzma settings it's about 16 KB.
       
    44 */
       
    45 
       
    46 int LzmaRamDecompress(
       
    47     const unsigned char *inBuffer, 
       
    48     size_t inSize,
       
    49     unsigned char *outBuffer,
       
    50     size_t outSize,
       
    51     size_t *outSizeProcessed,
       
    52     void * (*allocFunc)(size_t size), 
       
    53     void (*freeFunc)(void *));
       
    54 
       
    55 #endif