[Bf-blender-cvs] SVN commit: /data/svn/repos/bf-blender [61673] trunk/lib/win64_vc14/blosc: MSVC 2015 windows x64 (vc140) blosc 1.7.1
Martijn Berger
martijn.berger at gmail.com
Tue May 31 14:40:55 CEST 2016
Revision: 61673
https://developer.blender.org/rBL61673
Author: juicyfruit
Date: 2016-05-31 14:40:55 +0200 (Tue, 31 May 2016)
Log Message:
-----------
MSVC 2015 windows x64 (vc140) blosc 1.7.1
Added Paths:
-----------
trunk/lib/win64_vc14/blosc/
trunk/lib/win64_vc14/blosc/include/
trunk/lib/win64_vc14/blosc/include/blosc-export.h
trunk/lib/win64_vc14/blosc/include/blosc.h
trunk/lib/win64_vc14/blosc/lib/
trunk/lib/win64_vc14/blosc/lib/libblosc.lib
Added: trunk/lib/win64_vc14/blosc/include/blosc-export.h
===================================================================
--- trunk/lib/win64_vc14/blosc/include/blosc-export.h (rev 0)
+++ trunk/lib/win64_vc14/blosc/include/blosc-export.h 2016-05-31 12:40:55 UTC (rev 61673)
@@ -0,0 +1,45 @@
+/*********************************************************************
+ Blosc - Blocked Shuffling and Compression Library
+
+ Author: Francesc Alted <francesc at blosc.org>
+
+ See LICENSES/BLOSC.txt for details about copyright and rights to use.
+**********************************************************************/
+#ifndef BLOSC_EXPORT_H
+#define BLOSC_EXPORT_H
+
+/* Macros for specifying exported symbols.
+ BLOSC_EXPORT is used to decorate symbols that should be
+ exported by the blosc shared library.
+ BLOSC_NO_EXPORT is used to decorate symbols that should NOT
+ be exported by the blosc shared library.
+*/
+#if defined(BLOSC_SHARED_LIBRARY)
+ #if defined(_MSC_VER)
+ #define BLOSC_EXPORT __declspec(dllexport)
+ #elif (defined(__GNUC__) && __GNUC__ >= 4) || defined(__clang__)
+ #if defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__)
+ #define BLOSC_EXPORT __attribute__((dllexport))
+ #else
+ #define BLOSC_EXPORT __attribute__((visibility("default")))
+ #endif /* defined(_WIN32) || defined(__CYGWIN__) */
+ #else
+ #error Cannot determine how to define BLOSC_EXPORT for this compiler.
+ #endif
+#else
+ #define BLOSC_EXPORT
+#endif /* defined(BLOSC_SHARED_LIBRARY) */
+
+#if defined(__GNUC__) || defined(__clang__)
+ #define BLOSC_NO_EXPORT __attribute__((visibility("hidden")))
+#else
+ #define BLOSC_NO_EXPORT
+#endif /* defined(__GNUC__) || defined(__clang__) */
+
+/* When testing, export everything to make it easier to implement tests. */
+#if defined(BLOSC_TESTING)
+ #undef BLOSC_NO_EXPORT
+ #define BLOSC_NO_EXPORT BLOSC_EXPORT
+#endif /* defined(BLOSC_TESTING) */
+
+#endif /* BLOSC_EXPORT_H */
Added: trunk/lib/win64_vc14/blosc/include/blosc.h
===================================================================
--- trunk/lib/win64_vc14/blosc/include/blosc.h (rev 0)
+++ trunk/lib/win64_vc14/blosc/include/blosc.h 2016-05-31 12:40:55 UTC (rev 61673)
@@ -0,0 +1,397 @@
+/*********************************************************************
+ Blosc - Blocked Shuffling and Compression Library
+
+ Author: Francesc Alted <francesc at blosc.org>
+
+ See LICENSES/BLOSC.txt for details about copyright and rights to use.
+**********************************************************************/
+#ifndef BLOSC_H
+#define BLOSC_H
+
+#include <limits.h>
+#include <stdlib.h>
+#include "blosc-export.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Version numbers */
+#define BLOSC_VERSION_MAJOR 1 /* for major interface/format changes */
+#define BLOSC_VERSION_MINOR 7 /* for minor interface/format changes */
+#define BLOSC_VERSION_RELEASE 1 /* for tweaks, bug-fixes, or development */
+
+#define BLOSC_VERSION_STRING "1.7.1" /* string version. Sync with above! */
+#define BLOSC_VERSION_REVISION "$Rev$" /* revision version */
+#define BLOSC_VERSION_DATE "$Date:: 2016-02-03 #$" /* date version */
+
+#define BLOSCLZ_VERSION_STRING "1.0.5" /* the internal compressor version */
+
+/* The *_FORMAT symbols should be just 1-byte long */
+#define BLOSC_VERSION_FORMAT 2 /* Blosc format version, starting at 1 */
+
+/* Minimum header length */
+#define BLOSC_MIN_HEADER_LENGTH 16
+
+/* The maximum overhead during compression in bytes. This equals to
+ BLOSC_MIN_HEADER_LENGTH now, but can be higher in future
+ implementations */
+#define BLOSC_MAX_OVERHEAD BLOSC_MIN_HEADER_LENGTH
+
+/* Maximum source buffer size to be compressed */
+#define BLOSC_MAX_BUFFERSIZE (INT_MAX - BLOSC_MAX_OVERHEAD)
+
+/* Maximum typesize before considering source buffer as a stream of bytes */
+#define BLOSC_MAX_TYPESIZE 255 /* Cannot be larger than 255 */
+
+/* The maximum number of threads (for some static arrays) */
+#define BLOSC_MAX_THREADS 256
+
+/* Codes for shuffling (see blosc_compress) */
+#define BLOSC_NOSHUFFLE 0 /* no shuffle */
+#define BLOSC_SHUFFLE 1 /* byte-wise shuffle */
+#define BLOSC_BITSHUFFLE 2 /* bit-wise shuffle */
+
+/* Codes for internal flags (see blosc_cbuffer_metainfo) */
+#define BLOSC_DOSHUFFLE 0x1 /* byte-wise shuffle */
+#define BLOSC_MEMCPYED 0x2 /* plain copy */
+#define BLOSC_DOBITSHUFFLE 0x4 /* bit-wise shuffle */
+
+/* Codes for the different compressors shipped with Blosc */
+#define BLOSC_BLOSCLZ 0
+#define BLOSC_LZ4 1
+#define BLOSC_LZ4HC 2
+#define BLOSC_SNAPPY 3
+#define BLOSC_ZLIB 4
+
+/* Names for the different compressors shipped with Blosc */
+#define BLOSC_BLOSCLZ_COMPNAME "blosclz"
+#define BLOSC_LZ4_COMPNAME "lz4"
+#define BLOSC_LZ4HC_COMPNAME "lz4hc"
+#define BLOSC_SNAPPY_COMPNAME "snappy"
+#define BLOSC_ZLIB_COMPNAME "zlib"
+
+/* Codes for the different compression libraries shipped with Blosc */
+#define BLOSC_BLOSCLZ_LIB 0
+#define BLOSC_LZ4_LIB 1
+#define BLOSC_SNAPPY_LIB 2
+#define BLOSC_ZLIB_LIB 3
+
+/* Names for the different compression libraries shipped with Blosc */
+#define BLOSC_BLOSCLZ_LIBNAME "BloscLZ"
+#define BLOSC_LZ4_LIBNAME "LZ4"
+#define BLOSC_SNAPPY_LIBNAME "Snappy"
+#define BLOSC_ZLIB_LIBNAME "Zlib"
+
+/* The codes for compressor formats shipped with Blosc (code must be < 8) */
+#define BLOSC_BLOSCLZ_FORMAT BLOSC_BLOSCLZ_LIB
+#define BLOSC_LZ4_FORMAT BLOSC_LZ4_LIB
+ /* LZ4HC and LZ4 share the same format */
+#define BLOSC_LZ4HC_FORMAT BLOSC_LZ4_LIB
+#define BLOSC_SNAPPY_FORMAT BLOSC_SNAPPY_LIB
+#define BLOSC_ZLIB_FORMAT BLOSC_ZLIB_LIB
+
+
+/* The version formats for compressors shipped with Blosc */
+/* All versions here starts at 1 */
+#define BLOSC_BLOSCLZ_VERSION_FORMAT 1
+#define BLOSC_LZ4_VERSION_FORMAT 1
+#define BLOSC_LZ4HC_VERSION_FORMAT 1 /* LZ4HC and LZ4 share the same format */
+#define BLOSC_SNAPPY_VERSION_FORMAT 1
+#define BLOSC_ZLIB_VERSION_FORMAT 1
+
+
+/**
+ Initialize the Blosc library environment.
+
+ You must call this previous to any other Blosc call, unless you want
+ Blosc to be used simultaneously in a multi-threaded environment, in
+ which case you should *exclusively* use the
+ blosc_compress_ctx()/blosc_decompress_ctx() pair (see below).
+ */
+BLOSC_EXPORT void blosc_init(void);
+
+
+/**
+ Destroy the Blosc library environment.
+
+ You must call this after to you are done with all the Blosc calls,
+ unless you have not used blosc_init() before (see blosc_init()
+ above).
+ */
+BLOSC_EXPORT void blosc_destroy(void);
+
+
+/**
+ Compress a block of data in the `src` buffer and returns the size of
+ compressed block. The size of `src` buffer is specified by
+ `nbytes`. There is not a minimum for `src` buffer size (`nbytes`).
+
+ `clevel` is the desired compression level and must be a number
+ between 0 (no compression) and 9 (maximum compression).
+
+ `doshuffle` specifies whether the shuffle compression preconditioner
+ should be applied or not. BLOSC_NOSHUFFLE means not applying it,
+ BLOSC_SHUFFLE means applying it at a byte level and BLOSC_BITSHUFFLE
+ at a bit level (slower but may achieve better entropy alignment).
+
+ `typesize` is the number of bytes for the atomic type in binary
+ `src` buffer. This is mainly useful for the shuffle preconditioner.
+ For implementation reasons, only a 1 < typesize < 256 will allow the
+ shuffle filter to work. When typesize is not in this range, shuffle
+ will be silently disabled.
+
+ The `dest` buffer must have at least the size of `destsize`. Blosc
+ guarantees that if you set `destsize` to, at least,
+ (`nbytes`+BLOSC_MAX_OVERHEAD), the compression will always succeed.
+ The `src` buffer and the `dest` buffer can not overlap.
+
+ Compression is memory safe and guaranteed not to write the `dest`
+ buffer more than what is specified in `destsize`.
+
+ If `src` buffer cannot be compressed into `destsize`, the return
+ value is zero and you should discard the contents of the `dest`
+ buffer.
+
+ A negative return value means that an internal error happened. This
+ should never happen. If you see this, please report it back
+ together with the buffer data causing this and compression settings.
+ */
+BLOSC_EXPORT int blosc_compress(int clevel, int doshuffle, size_t typesize,
+ size_t nbytes, const void *src, void *dest,
+ size_t destsize);
+
+
+/**
+ Context interface to blosc compression. This does not require a call
+ to blosc_init() and can be called from multithreaded applications
+ without the global lock being used, so allowing Blosc be executed
+ simultaneously in those scenarios.
+
+ It uses the same parameters than the blosc_compress() function plus:
+
+ `compressor`: the string representing the type of compressor to use.
+
+ `blocksize`: the requested size of the compressed blocks. If 0, an
+ automatic blocksize will be used.
+
+ `numinternalthreads`: the number of threads to use internally.
+
+ A negative return value means that an internal error happened. This
+ should never happen. If you see this, please report it back
+ together with the buffer data causing this and compression settings.
+*/
+BLOSC_EXPORT int blosc_compress_ctx(int clevel, int doshuffle, size_t typesize,
+ size_t nbytes, const void* src, void* dest,
+ size_t destsize, const char* compressor,
+ size_t blocksize, int numinternalthreads);
+
+/**
+ Decompress a block of compressed data in `src`, put the result in
+ `dest` and returns the size of the decompressed block.
+
+ The `src` buffer and the `dest` buffer can not overlap.
+
+ Decompression is memory safe and guaranteed not to write the `dest`
+ buffer more than what is specified in `destsize`.
+
+ If an error occurs, e.g. the compressed data is corrupted or the
+ output buffer is not large enough, then 0 (zero) or a negative value
+ will be returned instead.
+*/
+BLOSC_EXPORT int blosc_decompress(const void *src, void *dest, size_t destsize);
+
+
+/**
+ Context interface to blosc decompression. This does not require a
+ call to blosc_init() and can be called from multithreaded
+ applications without the global lock being used, so allowing Blosc
+ be executed simultaneously in those scenarios.
+
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list