ImagingTools Core SDK
CStaticObjectCollection.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// ImtCore includes
6#include <imtbase/CObjectCollectionBase.h>
7
8
9namespace imtbase
10{
11
12
18{
19public:
21
25 virtual void SetObject(const QByteArray& objectId, DataPtr objectPtr);
26
31 virtual QByteArray RegisterObject(
32 const QByteArray& objectId,
33 const QByteArray& typeId,
34 const QString& name,
35 const QString& description = QString(),
36 DataPtr objectPtr = DataPtr());
37
38 // reimplemented (IObjectCollection)
39 virtual int GetOperationFlags(const QByteArray& objectId = QByteArray()) const override;
40 virtual QByteArray InsertNewObject(
41 const QByteArray& typeId,
42 const QString& name,
43 const QString& description,
44 const istd::IChangeable* defaultValuePtr = nullptr,
45 const QByteArray& proposedObjectId = QByteArray(),
46 const idoc::IDocumentMetaInfo* dataMetaInfoPtr = nullptr,
47 const idoc::IDocumentMetaInfo* collectionItemMetaInfoPtr = nullptr,
48 const IOperationContext* operationContextPtr = nullptr) override;
49
50 // reimplemented (istd::IChangeable)
51 virtual int GetSupportedOperations() const override;
52 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
53
54protected:
55 // reimplemented (CObjectCollectionBase)
56 virtual istd::IChangeableUniquePtr CreateObjectInstance(const QByteArray& typeId) const override;
57 virtual IObjectCollection* CreateSubCollectionInstance() const override;
58};
59
60
61} // namespace imtbase
62
63
virtual QByteArray RegisterObject(const QByteArray &objectId, const QByteArray &typeId, const QString &name, const QString &description=QString(), DataPtr objectPtr=DataPtr())
virtual void SetObject(const QByteArray &objectId, DataPtr objectPtr)