ACF $AcfVersion:0$
CStandardAttributesFactory.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 <iser/IObject.h>
7
8
9namespace iattr
10{
11
12
17{
18public:
19 // reimplemented (istd::TIFactory<iser::IObject>)
20 virtual istd::TUniqueInterfacePtr<iser::IObject> CreateInstance(const QByteArray& keyId = "") const override;
21
22 // reimplemented (istd::IFactoryInfo)
23 virtual KeyList GetFactoryKeys() const override;
24
25 // static methods
27
28private:
29 static KeyList GetInitialFactoryKeys();
30
31 // static attributes
32 static KeyList s_factoryKeys;
33 static CStandardAttributesFactory s_instance;
34};
35
36
37} // namespace iattr
38
39
40
41
Basic implementation of an property container.
static const CStandardAttributesFactory & GetInstance()
virtual istd::TUniqueInterfacePtr< iser::IObject > CreateInstance(const QByteArray &keyId="") const override
Create an instance of the object, mapped to the keyId keyId.
virtual KeyList GetFactoryKeys() const override
Returns all possible keys for this factory.
QSet< QByteArray > KeyList
Generic interface for a factory.
Definition TIFactory.h:19
Unique ownership smart pointer for interface types.
This namespace containes implementations of attributes concept.