Medical Imaging Interaction Toolkit
2023.04.00
Medical Imaging Interaction Toolkit
mitkToolManagerProvider.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 mitkToolManagerProvider_h
14
#define mitkToolManagerProvider_h
15
16
#include <
MitkSegmentationExports.h
>
17
18
#include <
mitkServiceInterface.h
>
19
#include <
usModuleContext.h
>
20
21
#include "
mitkToolManager.h
"
22
#include <itkObjectFactory.h>
23
#include <
mitkCommon.h
>
24
25
#include <string>
26
#include <map>
27
28
namespace
mitk
29
{
30
class
SegmentationModuleActivator;
31
44
class
MITKSEGMENTATION_EXPORT
ToolManagerProvider
:
public
itk::LightObject
45
{
46
public
:
47
mitkClassMacroItkParent
(
ToolManagerProvider
, itk::LightObject);
48
49
using
ProviderMapType
= std::map<std::string, mitk::ToolManager::Pointer>;
50
51
// Known ToolManager contexts
52
static
const
char
*
const
SEGMENTATION
;
53
60
virtual
mitk::ToolManager
*GetToolManager(
const
std::string& context = SEGMENTATION);
61
65
ProviderMapType
GetToolManagers()
const
;
66
70
static
mitk::ToolManagerProvider
*GetInstance();
71
72
// ONLY SegmentationModuleActivator is able to create instances of the service.
73
friend
class
mitk::SegmentationModuleActivator;
74
75
protected
:
76
itkFactorylessNewMacro(Self);
77
itkCloneMacro(Self);
78
79
// hide everything
80
ToolManagerProvider
();
81
~
ToolManagerProvider
()
override
;
82
ToolManagerProvider
(
const
ToolManagerProvider
&);
83
ToolManagerProvider
&operator=(
const
ToolManagerProvider
&);
84
85
ProviderMapType
m_ToolManagers
;
86
};
87
}
88
89
MITK_DECLARE_SERVICE_INTERFACE
(
mitk::ToolManagerProvider
,
"org.mitk.services.ToolManagerProvider"
)
90
91
#endif
mitkServiceInterface.h
mitk::ToolManagerProvider::m_ToolManagers
ProviderMapType m_ToolManagers
Definition:
mitkToolManagerProvider.h:85
mitk::ToolManagerProvider::ProviderMapType
std::map< std::string, mitk::ToolManager::Pointer > ProviderMapType
Definition:
mitkToolManagerProvider.h:49
mitkClassMacroItkParent
#define mitkClassMacroItkParent(className, SuperClassName)
Definition:
mitkCommon.h:45
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition:
RenderingTests.dox:1
mitk::ToolManager
Manages and coordinates instances of mitk::Tool.
Definition:
mitkToolManager.h:80
mitk::ToolManagerProvider::SEGMENTATION
static const char *const SEGMENTATION
Definition:
mitkToolManagerProvider.h:52
mitkCommon.h
MITKSEGMENTATION_EXPORT
#define MITKSEGMENTATION_EXPORT
Definition:
MitkSegmentationExports.h:15
usModuleContext.h
mitk::ToolManagerProvider
Micro Service Singleton to get an instance of mitk::ToolManager.
Definition:
mitkToolManagerProvider.h:44
MitkSegmentationExports.h
MITK_DECLARE_SERVICE_INTERFACE
#define MITK_DECLARE_SERVICE_INTERFACE(IFace, IId)
Definition:
mitkServiceInterface.h:26
mitkToolManager.h
src
MITK
Modules
Segmentation
Controllers
mitkToolManagerProvider.h
Generated on Wed May 17 2023 16:26:12 for Medical Imaging Interaction Toolkit by
1.8.17