MITK-IGT
IGT Extension of MITK
Loading...
Searching...
No Matches
mitkTrackingDeviceTypeCollection.h
Go to the documentation of this file.
1/*============================================================================
2
3The Medical Imaging Interaction Toolkit (MITK)
4
5Copyright (c) German Cancer Research Center (DKFZ)
6All rights reserved.
7
8Use of this source code is governed by a 3-clause BSD license that can be
9found 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
24namespace 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
77 us::ServiceRegistration<TrackingDeviceTypeCollection> m_ServiceRegistration;
78
79 std::vector<TrackingDeviceTypeInformation*> m_TrackingDeviceTypeInformations;
80 };
81} // namespace mitk
82MITK_DECLARE_SERVICE_INTERFACE(mitk::TrackingDeviceTypeCollection, "org.mitk.services.TrackingDeviceTypeCollection")
83#endif
This class is a collection for information of all Tracking Device Types (derived from abstract Tracki...
IGT Exceptions.
std::string TrackingDeviceType