summaryrefslogtreecommitdiff
path: root/Build/source/libs/poppler/poppler-src/poppler/FlateStream.cc
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/poppler/poppler-src/poppler/FlateStream.cc')
-rw-r--r--Build/source/libs/poppler/poppler-src/poppler/FlateStream.cc144
1 files changed, 0 insertions, 144 deletions
diff --git a/Build/source/libs/poppler/poppler-src/poppler/FlateStream.cc b/Build/source/libs/poppler/poppler-src/poppler/FlateStream.cc
deleted file mode 100644
index d23435ff649..00000000000
--- a/Build/source/libs/poppler/poppler-src/poppler/FlateStream.cc
+++ /dev/null
@@ -1,144 +0,0 @@
-//========================================================================
-//
-// FlateStream.cc
-//
-// Copyright (C) 2005, Jeff Muizelaar <jeff@infidigm.net>
-// Copyright (C) 2010, Albert Astals Cid <aacid@kde.org>
-// Copyright (C) 2016, William Bader <williambader@hotmail.com>
-// Copyright (C) 2017, Adrian Johnson <ajohnson@redneon.com>
-//
-// This file is under the GPLv2 or later license
-//
-//========================================================================
-
-#include <config.h>
-
-#ifdef USE_GCC_PRAGMAS
-#pragma implementation
-#endif
-
-#include "poppler-config.h"
-
-#ifdef ENABLE_ZLIB_UNCOMPRESS
-
-#include "FlateStream.h"
-
-FlateStream::FlateStream(Stream *strA, int predictor, int columns, int colors, int bits) :
- FilterStream(strA)
-{
- if (predictor != 1) {
- pred = new StreamPredictor(this, predictor, columns, colors, bits);
- } else {
- pred = NULL;
- }
- out_pos = 0;
- memset(&d_stream, 0, sizeof(d_stream));
- inflateInit(&d_stream);
-}
-
-FlateStream::~FlateStream() {
- inflateEnd(&d_stream);
- delete pred;
- delete str;
-}
-
-void FlateStream::reset() {
- //FIXME: what are the semantics of reset?
- //i.e. how much intialization has to happen in the constructor?
-
- /* reinitialize zlib */
- inflateEnd(&d_stream);
- memset(&d_stream, 0, sizeof(d_stream));
- inflateInit(&d_stream);
-
- str->reset();
- d_stream.avail_in = 0;
- status = Z_OK;
- out_pos = 0;
- out_buf_len = 0;
-}
-
-int FlateStream::getRawChar() {
- return doGetRawChar();
-}
-
-void FlateStream::getRawChars(int nChars, int *buffer) {
- for (int i = 0; i < nChars; ++i)
- buffer[i] = doGetRawChar();
-}
-
-int FlateStream::getChar() {
- if (pred)
- return pred->getChar();
- else
- return getRawChar();
-}
-
-int FlateStream::lookChar() {
- if (pred)
- return pred->lookChar();
-
- if (fill_buffer())
- return EOF;
-
- return out_buf[out_pos];
-}
-
-int FlateStream::fill_buffer() {
- /* only fill the buffer if it has all been used */
- if (out_pos >= out_buf_len) {
- /* check if the flatestream has been exhausted */
- if (status == Z_STREAM_END) {
- return -1;
- }
-
- /* set to the begining of out_buf */
- d_stream.avail_out = sizeof(out_buf);
- d_stream.next_out = out_buf;
- out_pos = 0;
-
- while (1) {
- /* buffer is empty so we need to fill it */
- if (d_stream.avail_in == 0) {
- int c;
- /* read from the source stream */
- while (d_stream.avail_in < sizeof(in_buf) && (c = str->getChar()) != EOF) {
- in_buf[d_stream.avail_in++] = c;
- }
- d_stream.next_in = in_buf;
- }
-
- /* keep decompressing until we can't anymore */
- if (d_stream.avail_out == 0 || d_stream.avail_in == 0 || (status != Z_OK && status != Z_BUF_ERROR))
- break;
- status = inflate(&d_stream, Z_SYNC_FLUSH);
- }
-
- out_buf_len = sizeof(out_buf) - d_stream.avail_out;
- if (status != Z_OK && status != Z_STREAM_END)
- return -1;
- if (!out_buf_len)
- return -1;
- }
-
- return 0;
-}
-
-GooString *FlateStream::getPSFilter(int psLevel, const char *indent) {
- GooString *s;
-
- if (psLevel < 3 || pred) {
- return NULL;
- }
- if (!(s = str->getPSFilter(psLevel, indent))) {
- return NULL;
- }
- s->append(indent)->append("<< >> /FlateDecode filter\n");
- return s;
-}
-
-GBool FlateStream::isBinary(GBool last) {
- return str->isBinary(gTrue);
-}
-
-#endif