ABWZlibStream.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3  * This file is part of the libabw project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  */
9 
10 #ifndef __ABWZLIBSTREAM_H__
11 #define __ABWZLIBSTREAM_H__
12 
13 #include <vector>
14 #include <libwpd-stream/libwpd-stream.h>
15 
16 namespace libabw
17 {
18 
19 class ABWZlibStream : public WPXInputStream
20 {
21 public:
22  ABWZlibStream(WPXInputStream *input);
24 
25  bool isOLEStream()
26  {
27  return false;
28  }
29  WPXInputStream *getDocumentOLEStream(const char *)
30  {
31  return 0;
32  }
33 
34  const unsigned char *read(unsigned long numBytes, unsigned long &numBytesRead);
35  int seek(long offset, WPX_SEEK_TYPE seekType);
36  long tell();
37  bool atEOS();
38 
39 private:
40  WPXInputStream *m_input;
41  volatile long m_offset;
42  std::vector<unsigned char> m_buffer;
45 };
46 
47 } // namespace libabw
48 
49 #endif // __ABWZLIBSTREAM_H__
50 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
const unsigned char * read(unsigned long numBytes, unsigned long &numBytesRead)
Definition: ABWZlibStream.cpp:97
ABWZlibStream & operator=(const ABWZlibStream &)
volatile long m_offset
Definition: ABWZlibStream.h:41
Definition: ABWZlibStream.h:19
ABWZlibStream(WPXInputStream *input)
Definition: ABWZlibStream.cpp:79
~ABWZlibStream()
Definition: ABWZlibStream.h:23
WPXInputStream * m_input
Definition: ABWZlibStream.h:40
long tell()
Definition: ABWZlibStream.cpp:149
bool atEOS()
Definition: ABWZlibStream.cpp:157
WPXInputStream * getDocumentOLEStream(const char *)
Definition: ABWZlibStream.h:29
bool isOLEStream()
Definition: ABWZlibStream.h:25
int seek(long offset, WPX_SEEK_TYPE seekType)
Definition: ABWZlibStream.cpp:125
std::vector< unsigned char > m_buffer
Definition: ABWZlibStream.h:42

Generated for libwpd by doxygen 1.8.5