Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
I/src/mitkModuleActivator.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkModuleActivator_h
14 #define mitkModuleActivator_h
15 
17 #include <usModuleActivator.h>
18 #include <memory>
19 
20 namespace mitk::Forms::UI
21 {
29  {
30  public:
32  ~ModuleActivator() override;
33 
35  void Load(us::ModuleContext* context) override;
36 
38  void Unload(us::ModuleContext* context) override;
39 
40  private:
41  template <class TQuestion, class TWidget>
42  void RegisterQuestionWidget()
43  {
44  auto question = std::make_unique<TQuestion>();
45  m_QuestionWidgetFactory->Register(question->GetType(), new TWidget);
46  }
47 
48  std::unique_ptr<IQuestionWidgetFactory> m_QuestionWidgetFactory;
49  };
50 }
51 
52 #endif
Module activator for the FormsUI module.
void Load(us::ModuleContext *context) override
Register all built-in question widget types with the widget factory.
~ModuleActivator() override
Virtual destructor.
void Unload(us::ModuleContext *context) override
Unregister the question widget factory service.
Customizes the starting and stopping of a CppMicroServices module.