summaryrefslogtreecommitdiff
path: root/src/config1c.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/config1c.h')
-rw-r--r--src/config1c.h148
1 files changed, 148 insertions, 0 deletions
diff --git a/src/config1c.h b/src/config1c.h
new file mode 100644
index 0000000..32ca1f3
--- /dev/null
+++ b/src/config1c.h
@@ -0,0 +1,148 @@
+/* config1c.h -- configuration for the LZO1C algorithm
+
+ This file is part of the LZO real-time data compression library.
+
+ Copyright (C) 2011 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2010 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2009 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2008 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2007 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2006 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
+ Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
+ All Rights Reserved.
+
+ The LZO library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of
+ the License, or (at your option) any later version.
+
+ The LZO library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with the LZO library; see the file COPYING.
+ If not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ Markus F.X.J. Oberhumer
+ <markus@oberhumer.com>
+ http://www.oberhumer.com/opensource/lzo/
+ */
+
+
+/* WARNING: this file should *not* be used by applications. It is
+ part of the implementation of the library and is subject
+ to change.
+ */
+
+
+#ifndef __LZO_CONFIG1C_H
+#define __LZO_CONFIG1C_H 1
+
+#include "lzo_conf.h"
+#include "lzo/lzo1c.h"
+
+
+/***********************************************************************
+// algorithm configuration
+************************************************************************/
+
+/* run bits (4 - 5) - the compressor and the decompressor
+ * must use the same value. */
+#if !defined(RBITS)
+# define RBITS 5
+#endif
+
+/* dictionary depth (0 - 6) - this only affects the compressor.
+ * 0 is fastest, 6 is best compression ratio */
+#if !defined(DDBITS)
+# define DDBITS 0
+#endif
+
+/* compression level (1 - 9) - this only affects the compressor.
+ * 1 is fastest, 9 is best compression ratio */
+#if !defined(CLEVEL)
+# define CLEVEL 1 /* fastest by default */
+#endif
+
+
+/* check configuration */
+#if (RBITS < 4 || RBITS > 5)
+# error "invalid RBITS"
+#endif
+#if (DDBITS < 0 || DDBITS > 6)
+# error "invalid DDBITS"
+#endif
+#if (CLEVEL < 1 || CLEVEL > 9)
+# error "invalid CLEVEL"
+#endif
+
+
+/***********************************************************************
+// internal configuration
+************************************************************************/
+
+/* add a special code so that the decompressor can detect the
+ * end of the compressed data block (overhead is 3 bytes per block) */
+#define LZO_EOF_CODE 1
+
+
+/***********************************************************************
+// algorithm internal configuration
+************************************************************************/
+
+/* choose the hashing strategy */
+#ifndef LZO_HASH
+#define LZO_HASH LZO_HASH_LZO_INCREMENTAL_A
+#endif
+
+/* config */
+#define R_BITS RBITS
+#define DD_BITS DDBITS
+#ifndef D_BITS
+#define D_BITS 14
+#endif
+
+
+/***********************************************************************
+// optimization and debugging
+************************************************************************/
+
+/* Collect statistics */
+#if 0 && !defined(LZO_COLLECT_STATS)
+# define LZO_COLLECT_STATS 1
+#endif
+
+
+/***********************************************************************
+//
+************************************************************************/
+
+/* good parameters when using a blocksize of 8kB */
+#define M3O_BITS 6
+#undef LZO_DETERMINISTIC
+
+
+#include "lzo1b_de.h"
+#include "stats1c.h"
+
+#include "lzo1c_cc.h"
+
+
+#endif /* already included */
+
+/*
+vi:ts=4:et
+*/
+