ImagingTools Core SDK
Main Page
Related Pages
Topics
Namespaces
Classes
Examples
ImtCore
Include
imtservergql
CModelPublisherComp.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 <imod/TSingleModelObserverBase.h>
7
8
// ImtCore includes
9
#include <imtservergql/CGqlQueryBasedPublisherCompBase.h>
10
11
12
namespace
imtservergql
13
{
14
15
20
class
CModelPublisherComp
:
21
public
imtservergql::CGqlQueryBasedPublisherCompBase
,
22
public
imod::TSingleModelObserverBase<istd::IChangeable>
23
{
24
public
:
25
typedef
imtservergql::CGqlQueryBasedPublisherCompBase
BaseClass
;
26
27
I_BEGIN_COMPONENT(
CModelPublisherComp
);
28
I_ASSIGN(m_modelCompPtr,
"Model"
,
"Observed data model. On changes of this data model the subscriber will be notified"
,
true
,
"Model"
);
29
I_ASSIGN(m_useAwsStyle,
"UseAwsStyleGraphQl"
,
"Use AWS Stlye GraphQl subscriptions"
,
true
,
true
);
30
I_END_COMPONENT;
31
32
protected
:
33
// reimplemented (icomp::CComponentBase)
34
virtual
void
OnComponentCreated()
override
;
35
virtual
void
OnComponentDestroyed()
override
;
36
37
// reimplemented (imod::CSingleModelObserverBase)
38
virtual
void
OnUpdate(
const
istd::IChangeable::ChangeSet& changeSet)
override
;
39
40
protected
:
41
I_REF(imod::IModel, m_modelCompPtr);
42
I_ATTR(
bool
, m_useAwsStyle);
43
};
44
45
46
}
// namespace imtservergql
47
48
imtservergql::CGqlQueryBasedPublisherCompBase
Definition
CGqlQueryBasedPublisherCompBase.h:17
imtservergql::CModelPublisherComp
Definition
CModelPublisherComp.h:23
Generated by
1.9.8