X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fbitio.h;h=cf6a3cb457a6f0b1fc72b6db424802f95a0b5339;hp=888a54fa4a99d2ef50f241d8368d3b7357f0f8cc;hb=879d0eec420fe0fd5ddcd56c8fe62b82a6744edd;hpb=823bc6bb3d2ea1f328e49b6194b2aa512aeddae8 diff --git a/lib/bitio.h b/lib/bitio.h index 888a54f..cf6a3cb 100644 --- a/lib/bitio.h +++ b/lib/bitio.h @@ -21,6 +21,11 @@ #include #include "types.h" +#include "../config.h" + +#ifdef HAVE_ZZIP +#include "zzip/lib.h" +#endif #ifndef __rfxswf_bitio_h__ #define __rfxswf_bitio_h__ @@ -31,6 +36,8 @@ #define READER_TYPE_ZLIB_C 4 #define READER_TYPE_ZLIB READER_TYPE_ZLIB_U #define READER_TYPE_NULL 5 +#define READER_TYPE_FILE2 6 +#define READER_TYPE_ZZIP 7 #define WRITER_TYPE_FILE 1 #define WRITER_TYPE_MEM 2 @@ -43,6 +50,7 @@ typedef struct _reader { int (*read)(struct _reader*, void*data, int len); + int (*seek)(struct _reader*, int pos); void (*dealloc)(struct _reader*); void *internal; @@ -55,6 +63,7 @@ typedef struct _reader typedef struct _writer { int (*write)(struct _writer*, void*data, int len); + void (*flush)(struct _writer*); void (*finish)(struct _writer*); void *internal; @@ -89,9 +98,13 @@ void writer_writeString(writer_t*w, const char*s); /* standard readers / writers */ void reader_init_filereader(reader_t*r, int handle); +void reader_init_filereader2(reader_t*r, const char*filename); void reader_init_zlibinflate(reader_t*r, reader_t*input); void reader_init_memreader(reader_t*r, void*data, int length); void reader_init_nullreader(reader_t*r); +#ifdef HAVE_ZZIP +void reader_init_zzipreader(reader_t*r,ZZIP_FILE*z); +#endif void writer_init_filewriter(writer_t*w, int handle); void writer_init_filewriter2(writer_t*w, char*filename); @@ -100,6 +113,8 @@ void writer_init_memwriter(writer_t*r, void*data, int length); void writer_init_nullwriter(writer_t*w); void writer_init_growingmemwriter(writer_t*r, U32 grow); +void* writer_growmemwrite_memptr(writer_t*w, int*len); void* writer_growmemwrite_getmem(writer_t*w); +void writer_growmemwrite_reset(writer_t*w); #endif //__rfxswf_bitio_h__