ImagingTools Core SDK
CPersonInfo.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ACF includes
6#include <imtauth/IPersonInfo.h>
7
8// ImtCore includes
9#include <imtauth/CPersonBaseInfo.h>
10
11
12namespace imtauth
13{
14
15
16class CPersonInfo: virtual public IPersonInfo, virtual public CPersonBaseInfo
17{
18public:
19 typedef CPersonBaseInfo BaseClass;
20
21 // reimplemented (IPersonInfo)
22 virtual const IAddressProvider* GetAddresses() const override;
23
24 // reimplemented (iser::ISerializable)
25 virtual bool Serialize(iser::IArchive& archive) override;
26
27 // reimplemented (istd::IChangeable)
28 virtual int GetSupportedOperations() const override;
29 virtual bool CopyFrom(const IChangeable& object, CompatibilityMode mode = CM_WITHOUT_REFS) override;
30 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
31 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS) override;
32
33private:
34 imod::TModelWrap<CAddressCollection> m_addresses;
35};
36
37
38}
39
40