zipios++  2.0.2
Zipios++ – a small C++ library that provides easy access to .zip files.
backbuffer.hpp
Go to the documentation of this file.
1 #pragma once
2 #ifndef BACKBUFFER_HPP
3 #define BACKBUFFER_HPP
4 
5 /*
6  Zipios++ - a small C++ library that provides easy access to .zip files.
7 
8  Copyright (C) 2000-2007 Thomas Sondergaard
9  Copyright (C) 2015 Made to Order Software Corporation
10 
11  This library is free software; you can redistribute it and/or
12  modify it under the terms of the GNU Lesser General Public
13  License as published by the Free Software Foundation; either
14  version 2 of the License, or (at your option) any later version.
15 
16  This library is distributed in the hope that it will be useful,
17  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19  Lesser General Public License for more details.
20 
21  You should have received a copy of the GNU Lesser General Public
22  License along with this library; if not, write to the Free Software
23  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 */
25 
33 
34 #include "zipios_common.hpp"
35 
36 
37 namespace zipios
38 {
39 
40 
42 {
43 public:
44  BackBuffer(std::istream& is, VirtualSeeker const& vs = VirtualSeeker(), ssize_t const chunk_size = 1024);
45 
46  ssize_t readChunk(ssize_t& read_pointer);
47 
48 private:
50  ssize_t m_chunk_size;
51  std::istream& m_is;
52  std::streampos m_file_pos;
53 };
54 
55 
56 } // zipios namespace
57 
58 // Local Variables:
59 // mode: cpp
60 // indent-tabs-mode: nil
61 // c-basic-offset: 4
62 // tab-width: 4
63 // End:
64 
65 // vim: ts=4 sw=4 et
66 #endif
Define the zipios::VirtualSeeker class.
std::istream & m_is
Definition: backbuffer.hpp:51
A virtual class used to see in a file embedded in another.
BackBuffer(std::istream &is, VirtualSeeker const &vs=VirtualSeeker(), ssize_t const chunk_size=1024)
Definition: backbuffer.cpp:79
std::vector< unsigned char > buffer_t
A buffer of characters.
Various functions used throughout the library.
ssize_t readChunk(ssize_t &read_pointer)
Read a chunk of data.
Definition: backbuffer.cpp:140
std::streampos m_file_pos
Definition: backbuffer.hpp:52
VirtualSeeker m_vs
Definition: backbuffer.hpp:49
To read a file by chunk from the end.
Definition: backbuffer.hpp:41