ACF $AcfVersion:0$
CArchiveBase.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// ACF includes
6#include <istd/ILogger.h>
7
8#include <iser/IArchive.h>
9#include <iser/CArchiveTag.h>
10
11
12namespace iser
13{
14
15
21 virtual public IArchive,
22 virtual protected istd::ILogger
23{
24public:
25 // reimplemented (iser::IArchive)
26 virtual bool IsTagSkippingSupported() const override;
27 virtual bool BeginMultiTag(const CArchiveTag& tag, const CArchiveTag& subTag, int& count) override;
28
29 static const CArchiveTag& GetAcfRootTag();
30
31protected:
33
34 // list of standard tags used to serialize header
36
37private:
42};
43
44
45} // namespace iser
46
47
48
49
Base implementation of iser::IArchive interface.
virtual bool BeginMultiTag(const CArchiveTag &tag, const CArchiveTag &subTag, int &count) override
Begins a tagged section containing multiple elements of the same type.
virtual bool IsTagSkippingSupported() const override
Checks if skipping to the end of a tag on EndTag() is supported.
static const CArchiveTag & GetAcfRootTag()
static CArchiveTag s_acfRootTag
Process tag used to group data in archive stream.
Definition CArchiveTag.h:22
Represents an input/output persistence archive for object serialization.
Definition IArchive.h:164
Common interface for classes sending some log info.
Definition ILogger.h:23
Contains general persistence mechanism with basic archives implementations.