Line data Source code
1 : #pragma once
2 : #ifndef ZIPCENTRALDIRECTORYENTRY_HPP
3 : #define ZIPCENTRALDIRECTORYENTRY_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-2019 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.1 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 : */
25 :
26 : /** \file
27 : * \brief Declaration of the zipios::ZipCentralDirectoryEntry, which represents a
28 : * directory Zip archive entry.
29 : *
30 : * This header file contains the zipios::ZipCentralDirectoryEntry class used
31 : * to read the central directory fields found in a zip archive.
32 : * It can also be used to write a central directory to an output
33 : * Zip archive.
34 : */
35 :
36 : #include "ziplocalentry.hpp"
37 :
38 :
39 : namespace zipios
40 : {
41 :
42 :
43 1073 : class ZipCentralDirectoryEntry : public ZipLocalEntry
44 : {
45 : public:
46 : ZipCentralDirectoryEntry();
47 : ZipCentralDirectoryEntry(FileEntry const& entry);
48 : virtual pointer_t clone() const override;
49 : virtual ~ZipCentralDirectoryEntry() override;
50 :
51 : virtual size_t getHeaderSize() const override;
52 :
53 : virtual void read(std::istream& is) override;
54 : virtual void write(std::ostream& os) override;
55 : };
56 :
57 :
58 : } // zipios namespace
59 :
60 : // Local Variables:
61 : // mode: cpp
62 : // indent-tabs-mode: nil
63 : // c-basic-offset: 4
64 : // tab-width: 4
65 : // End:
66 :
67 : // vim: ts=4 sw=4 et
68 : #endif
|