1214501Srpaulo/* 2214501SrpauloCopyright 2013 Google Inc. All Rights Reserved. 3214501SrpauloAuthor: lode@google.com (Lode Vandevenne) 4214501Srpaulo*/ 5214501Srpaulo 6214501Srpaulo/* 7214501SrpauloModified by madler@alumni.caltech.edu (Mark Adler) 8214501SrpauloMoved ZopfliInitOptions() to deflate.c. 9214501Srpaulo*/ 10214501Srpaulo 11214501Srpaulo#include "zopfli.h" 12214501Srpaulo 13214501Srpaulo#include "deflate.h" 14214501Srpaulo#include "gzip_container.h" 15214501Srpaulo#include "zlib_container.h" 16214501Srpaulo 17214501Srpaulo#include <assert.h> 18214501Srpaulo 19214501Srpaulovoid ZopfliCompress(const ZopfliOptions* options, ZopfliFormat output_type, 20214501Srpaulo const unsigned char* in, size_t insize, 21214501Srpaulo unsigned char** out, size_t* outsize) 22214501Srpaulo{ 23214501Srpaulo if (output_type == ZOPFLI_FORMAT_GZIP) { 24214501Srpaulo ZopfliGzipCompress(options, in, insize, out, outsize); 25214501Srpaulo } else if (output_type == ZOPFLI_FORMAT_ZLIB) { 26214501Srpaulo ZopfliZlibCompress(options, in, insize, out, outsize); 27214501Srpaulo } else if (output_type == ZOPFLI_FORMAT_DEFLATE) { 28214501Srpaulo unsigned char bp = 0; 29214501Srpaulo ZopfliDeflate(options, 2 /* Dynamic block */, 1, 30 in, insize, &bp, out, outsize); 31 } else { 32 assert(0); 33 } 34} 35