bit7z 4.0.0
A C++ library for interfacing with the 7-zip shared libs.
Loading...
Searching...
No Matches
bitarchiveiteminfo.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 BITARCHIVEITEMINFO_HPP
11#define BITARCHIVEITEMINFO_HPP
12
13#include <map>
14
15#include "bitarchiveitem.hpp"
16
17namespace bit7z {
18
19using std::wstring;
20using std::map;
21
25class BitArchiveItemInfo final : public BitArchiveItem {
26 public:
34 BIT7Z_NODISCARD auto itemProperty( BitProperty property ) const -> BitPropVariant override;
35
39 BIT7Z_NODISCARD auto itemProperties() const -> map< BitProperty, BitPropVariant >;
40
41 private:
42 map< BitProperty, BitPropVariant > mItemProperties;
43
44 /* BitArchiveItem objects can be created and updated only by BitArchiveReader */
45 explicit BitArchiveItemInfo( uint32_t itemIndex );
46
47 void setProperty( BitProperty property, const BitPropVariant& value );
48
49 friend class BitArchiveReader;
50};
51
52} // namespace bit7z
53
54#endif // BITARCHIVEITEMINFO_HPP
The BitArchiveItem class represents a generic item inside an archive.
Definition bitarchiveitem.hpp:20
The BitArchiveItemInfo class represents an archived item and that stores all its properties for later...
Definition bitarchiveiteminfo.hpp:25
auto itemProperties() const -> map< BitProperty, BitPropVariant >
auto itemProperty(BitProperty property) const -> BitPropVariant override
Gets the specified item property.
The BitArchiveReader class allows reading metadata of archives, as well as extracting them.
Definition bitarchivereader.hpp:27
The main namespace of the bit7z library.
Definition bit7zlibrary.hpp:30
BitProperty
The BitProperty enum represents the archive/item properties that 7-zip can read or write.
Definition bitpropvariant.hpp:30
The BitPropVariant struct is a light extension to the WinAPI PROPVARIANT struct providing useful gett...
Definition bitpropvariant.hpp:150