blob: 96069142b94024c9c0b3d0be1c5202d99b692d9f [file]
// File: basisu_tinyexr.cpp
#if defined(_WIN32)
#ifndef NOMINMAX
#define NOMINMAX
#endif
#endif
#define MINIZ_HEADER_FILE_ONLY
#define MINIZ_NO_ZLIB_COMPATIBLE_NAMES
#include "basisu_miniz.h"
// Force tinyexr to use zlib-style compression API's, then we'll direct them to our own customized copy of miniz. (Binomial wrote the original miniz library.)
// This allows us to use tinyexr.h without modify it at all, or relying on zlib.
#define TINYEXR_USE_MINIZ (0)
enum { Z_OK = 0, Z_STREAM_END = 1, Z_NEED_DICT = 2, Z_ERRNO = -1, Z_STREAM_ERROR = -2, Z_DATA_ERROR = -3, Z_MEM_ERROR = -4, Z_BUF_ERROR = -5, Z_VERSION_ERROR = -6, Z_PARAM_ERROR = -10000 };
typedef unsigned long uLongf;
typedef unsigned long uLong;
typedef unsigned char Byte;
typedef Byte Bytef;
uLong compressBound(uLong src_size)
{
return buminiz::mz_compressBound(src_size);
}
int compress(Bytef* dest, uLongf* destLen, const Bytef* source, uLong sourceLen)
{
return buminiz::mz_compress(dest, destLen, source, sourceLen);
}
int uncompress(Bytef* dest, uLongf* destLen, const Bytef* source, uLong sourceLen)
{
return buminiz::mz_uncompress(dest, destLen, source, sourceLen);
}
#ifdef _MSC_VER
#pragma warning (disable: 4060)
#pragma warning (disable: 4100)
#pragma warning (disable: 4245)
#pragma warning (disable: 4505)
#pragma warning (disable: 4702)
#endif
#define TINYEXR_IMPLEMENTATION
#include "3rdparty/tinyexr.h"