ImagingTools Core SDK
COperationContext.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/IOperationContext.h>
7#include <imtbase/CObjectCollection.h>
8
9
10namespace imtbase
11{
12
13
14class COperationContext: virtual public imtbase::IOperationContext
15{
16public:
17 COperationContext();
18
19 void SetOperationOwnerId(const imtbase::IOperationContext::IdentifableObjectInfo& operationOwnerId);
20 void SetOperationDescription(const QString& operationDescription);
21
22 // reimplemented (imtbase::IOperationContext)
23 virtual IdentifableObjectInfo GetOperationOwnerId() const override;
24 virtual QString GetOperationDescription() const override;
25 virtual imtbase::IObjectCollection* GetChangesCollection() override;
26
27private:
28 IdentifableObjectInfo m_operationOwnerId;
29 QString m_operationDescription;
30 imtbase::CObjectCollection m_changesCollection;
31};
32
33
34} // namespace imtbase
35
36