ImagingTools Core SDK
IRoleInfoProvider.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 <iprm/IParamsSet.h>
7#include <istd/IChangeable.h>
8#include <idoc/IDocumentMetaInfo.h>
9
10
11namespace imtbase
12{
13class ICollectionInfo;
14}
15
16
17namespace imtauth
18{
19
20
21class IRole;
22typedef istd::TUniqueInterfacePtr<IRole> IRoleUniquePtr;
23
24
29class IRoleInfoProvider: virtual public istd::IChangeable
30{
31public:
33 {
37 MIT_ROLE_INFO_LIST = idoc::IDocumentMetaInfo::MIT_USER + 1
38 };
39
43 virtual const imtbase::ICollectionInfo& GetRoleList() const = 0;
44
48 virtual imtauth::IRoleUniquePtr GetRole(const QByteArray& objectId, const iprm::IParamsSet* paramsPtr = nullptr) const = 0;
49};
50
51
52} // namespace imtauth
53
54
virtual const imtbase::ICollectionInfo & GetRoleList() const =0
virtual imtauth::IRoleUniquePtr GetRole(const QByteArray &objectId, const iprm::IParamsSet *paramsPtr=nullptr) const =0