ACF $AcfVersion:0$
IVersionInfo.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtCore/QString>
7#include <QtCore/QSet>
8
9// ACF includes
10#include <istd/IChangeable.h>
11
12
13namespace iser
14{
15
16
22class IVersionInfo: virtual public istd::IChangeable
23{
24public:
32 {
35 UserVersionId = 1024
36 };
37
38 enum{
42 UnknownVersion = 0xffffffff
43 };
44
45 typedef QSet<int> VersionIds;
46
50 virtual VersionIds GetVersionIds() const = 0;
51
60 virtual bool GetVersionNumber(int versionId, quint32& result) const = 0;
61
68 virtual QString GetVersionIdDescription(int versionId) const = 0;
69
73 virtual QString GetEncodedVersionName(int versionId, quint32 versionNumber) const = 0;
74};
75
76
77} // namespace iser
78
79
80
81
Provides access to version information.
virtual QString GetEncodedVersionName(int versionId, quint32 versionNumber) const =0
Encode version number to human readable form.
virtual bool GetVersionNumber(int versionId, quint32 &result) const =0
Get version of archived stream for specific versioning type.
QSet< int > VersionIds
virtual VersionIds GetVersionIds() const =0
Get list of version ID's.
VersionId
Type of version.
virtual QString GetVersionIdDescription(int versionId) const =0
Get description of version ID.
@ UnknownVersion
Biggest version value used if no version is needed or known.
Common interface for data model objects, which can be changed.
Definition IChangeable.h:28
Contains general persistence mechanism with basic archives implementations.