ImagingTools Core SDK
CParamSetRepresentationControllerComp.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 <imtserverapp/TJsonRepresentationControllerCompWrap.h>
7#include <imtserverapp/CParamSetRepresentationController.h>
8#include <GeneratedFiles/imtbasesdl/SDL/1.0/CPP/ImtBaseTypes.h>
9
10
11namespace imtserverapp
12{
13
14
15class CParamSetRepresentationControllerComp: public TJsonRepresentationControllerCompWrap<sdl::imtbase::ImtBaseTypes::CParamsSet::V1_0>
16{
17public:
18 typedef TJsonRepresentationControllerCompWrap<sdl::imtbase::ImtBaseTypes::CParamsSet::V1_0> BaseClass;
19
20 I_BEGIN_COMPONENT(CParamSetRepresentationControllerComp)
21 I_ASSIGN_MULTI_0(m_paramRepresentationControllersCompPtr, "ParamRepresentationControllers", "Sub parameters representation controllers", false);
22 I_END_COMPONENT;
23
24protected:
25 // reimplemented (TJsonRepresentationControllerCompWrap<sdl::imtbase::ImtBaseTypes::CParamsSet>)
26 virtual QByteArray GetTypeId() const override;
27 virtual bool IsModelSupported(const istd::IChangeable& dataModel) const override;
28 virtual bool GetSdlRepresentationFromDataModel(
29 sdl::imtbase::ImtBaseTypes::CParamsSet::V1_0& sdlRepresentation,
30 const istd::IChangeable& dataModel,
31 const iprm::IParamsSet* paramsPtr = nullptr) const override;
32 virtual bool GetDataModelFromSdlRepresentation(
33 istd::IChangeable& dataModel,
34 const sdl::imtbase::ImtBaseTypes::CParamsSet::V1_0& sdlRepresentation) const override;
35
36 // reimplemented (icomp::CComponentBase)
37 virtual void OnComponentCreated() override;
38
39protected:
40 I_MULTIREF(IJsonRepresentationController, m_paramRepresentationControllersCompPtr);
41
42private:
43 CParamSetRepresentationController m_representationController;
44};
45
46
47} // namespace imtserverapp
48
49