Medical Imaging Interaction Toolkit  2021.02.99-8b0f5727
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 TRACKINGDEVICETYPECOLLECTION_H_INCLUDED
14 #define TRACKINGDEVICETYPECOLLECTION_H_INCLUDED
15 
16 #include <MitkIGTExports.h>
17 
19 
20 // Microservices
21 #include <mitkServiceInterface.h>
22 #include <usServiceRegistration.h>
23 
24 namespace mitk {
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 //TRACKINGDEVICETYPECOLLECTION_H_INCLUDED
#define MITK_DECLARE_SERVICE_INTERFACE(IFace, IId)
DataCollection - Class to facilitate loading/accessing structured data.
This class is a collection for information of all Tracking Device Types (derived from abstract Tracki...
#define MITKIGT_EXPORT
std::string TrackingDeviceType