Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
mitkTrackingDeviceTypeCollection.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 mitkTrackingDeviceTypeCollection_h
14 #define mitkTrackingDeviceTypeCollection_h
15 
16 #include <MitkIGTExports.h>
17 
19 
20 // Microservices
21 #include <mitkServiceInterface.h>
22 #include <usServiceRegistration.h>
23 
24 namespace mitk {
35  class MITKIGT_EXPORT TrackingDeviceTypeCollection
36  {
37  public:
38 
41 
46  virtual void RegisterAsMicroservice();
47 
51  virtual void UnRegisterMicroservice();
52 
53  void RegisterTrackingDeviceType(TrackingDeviceTypeInformation* typeInformation);
54 
55  TrackingDeviceTypeInformation* GetTrackingDeviceTypeInformation(TrackingDeviceType type);
56 
57  std::vector<std::string> GetTrackingDeviceTypeNames();
58 
62  std::vector<TrackingDeviceData> GetDeviceDataForLine(TrackingDeviceType type);
63 
68  TrackingDeviceData GetFirstCompatibleDeviceDataForLine(TrackingDeviceType type);
69 
73  TrackingDeviceData GetDeviceDataByName(const std::string& modelName);
74 
75  private:
76 
78 
79  std::vector<TrackingDeviceTypeInformation*> m_TrackingDeviceTypeInformations;
80  };
81 } // namespace mitk
82 MITK_DECLARE_SERVICE_INTERFACE(mitk::TrackingDeviceTypeCollection, "org.mitk.services.TrackingDeviceTypeCollection")
83 #endif
mitkServiceInterface.h
mitk::TrackingDeviceTypeCollection
This class is a collection for information of all Tracking Device Types (derived from abstract Tracki...
Definition: mitkTrackingDeviceTypeCollection.h:35
mitk::TrackingDeviceData
Definition: mitkTrackingTypes.h:34
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
mitkTrackingDeviceTypeInformation.h
usServiceRegistration.h
mitk::TrackingDeviceTypeInformation
Abstract class containing.
Definition: mitkTrackingDeviceTypeInformation.h:34
us::ServiceRegistration
Definition: usServiceRegistration.h:48
MITK_DECLARE_SERVICE_INTERFACE
#define MITK_DECLARE_SERVICE_INTERFACE(IFace, IId)
Definition: mitkServiceInterface.h:26
mitk::TrackingDeviceType
std::string TrackingDeviceType
Definition: mitkTrackingTypes.h:22