ImagingTools Core SDK
IObjectCollectionIterator.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/IObjectCollection.h>
7
8
9namespace imtbase
10{
11
12
17class IObjectCollectionIterator: virtual public istd::IPolymorphic
18{
19public:
23 virtual bool Next() const = 0;
24
28 virtual bool Previous() const = 0;
29
33 virtual QByteArray GetObjectId() const = 0;
34
38 virtual QByteArray GetObjectTypeId() const = 0;
39
43 virtual bool GetObjectData(IObjectCollection::DataPtr& dataPtr) const = 0;
44
48 virtual idoc::MetaInfoPtr GetDataMetaInfo() const = 0;
49
53 virtual int GetElementsCount() const = 0;
54
55 virtual idoc::MetaInfoPtr GetCollectionMetaInfo() const = 0;
56
60 virtual QVariant GetElementInfo(int infoType) const = 0;
61
65 virtual QVariant GetElementInfo(QByteArray infoId) const = 0;
66};
67
68
69} // namespace imtbase
70
virtual int GetElementsCount() const =0
virtual bool GetObjectData(IObjectCollection::DataPtr &dataPtr) const =0
virtual QVariant GetElementInfo(int infoType) const =0
virtual QByteArray GetObjectId() const =0
virtual QByteArray GetObjectTypeId() const =0
virtual QVariant GetElementInfo(QByteArray infoId) const =0
virtual bool Previous() const =0
virtual bool Next() const =0
virtual idoc::MetaInfoPtr GetDataMetaInfo() const =0