bit7z 4.0.0
A C++ library for interfacing with the 7-zip shared libs.
Loading...
Searching...
No Matches
bitabstractarchiveopener.hpp
1/*
2 * bit7z - A C++ static library to interface with the 7-zip shared libraries.
3 * Copyright (c) 2014-2023 Riccardo Ostani - All Rights Reserved.
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 https://mozilla.org/MPL/2.0/.
8 */
9
10#ifndef BITABSTRACTARCHIVEOPENER_HPP
11#define BITABSTRACTARCHIVEOPENER_HPP
12
13#include <vector>
14#include <map>
15
16#include "bitabstractarchivehandler.hpp"
17#include "bitformat.hpp"
18
19namespace bit7z {
20
21using std::ostream;
22
27 public:
29
31
32 auto operator=( const BitAbstractArchiveOpener& ) -> BitAbstractArchiveOpener& = delete;
33
34 auto operator=( BitAbstractArchiveOpener&& ) -> BitAbstractArchiveOpener& = delete;
35
36 ~BitAbstractArchiveOpener() override = default;
37
41 BIT7Z_NODISCARD auto format() const noexcept -> const BitInFormat& override;
42
46 BIT7Z_NODISCARD auto extractionFormat() const noexcept -> const BitInFormat&;
47
48 protected:
50 const BitInFormat& format,
51 const tstring& password = {} );
52
53 private:
54 const BitInFormat& mFormat;
55};
56
57} // namespace bit7z
58
59#endif // BITABSTRACTARCHIVEOPENER_HPP
The Bit7zLibrary class allows accessing the basic functionalities provided by the 7z DLLs.
Definition bit7zlibrary.hpp:56
Abstract class representing a generic archive handler.
Definition bitabstractarchivehandler.hpp:74
auto password() const -> tstring
The BitAbstractArchiveOpener abstract class represents a generic archive opener.
Definition bitabstractarchiveopener.hpp:26
auto format() const noexcept -> const BitInFormat &override
auto extractionFormat() const noexcept -> const BitInFormat &
The BitInFormat class specifies an extractable archive format.
Definition bitformat.hpp:58
The main namespace of the bit7z library.
Definition bit7zlibrary.hpp:30