Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef TRACKINGDEVICETYPECOLLECTION_H_INCLUDED
18 #define TRACKINGDEVICETYPECOLLECTION_H_INCLUDED
19 
20 #include <MitkIGTExports.h>
21 
23 
24 // Microservices
25 #include <mitkServiceInterface.h>
26 #include <usServiceRegistration.h>
27 
28 namespace mitk {
39  class MITKIGT_EXPORT TrackingDeviceTypeCollection
40  {
41  public:
42 
45 
50  virtual void RegisterAsMicroservice();
51 
55  virtual void UnRegisterMicroservice();
56 
57  void RegisterTrackingDeviceType(TrackingDeviceTypeInformation* typeInformation);
58 
59  TrackingDeviceTypeInformation* GetTrackingDeviceTypeInformation(TrackingDeviceType type);
60 
61  std::vector<std::string> GetTrackingDeviceTypeNames();
62 
66  std::vector<TrackingDeviceData> GetDeviceDataForLine(TrackingDeviceType type);
67 
72  TrackingDeviceData GetFirstCompatibleDeviceDataForLine(TrackingDeviceType type);
73 
77  TrackingDeviceData GetDeviceDataByName(const std::string& modelName);
78 
79  private:
80 
82 
83  std::vector<TrackingDeviceTypeInformation*> m_TrackingDeviceTypeInformations;
84  };
85 } // namespace mitk
86 MITK_DECLARE_SERVICE_INTERFACE(mitk::TrackingDeviceTypeCollection, "org.mitk.services.TrackingDeviceTypeCollection")
87 #endif //TRACKINGDEVICETYPECOLLECTION_H_INCLUDED
DataCollection - Class to facilitate loading/accessing structured data.
This class is a collection for information of all Tracking Device Types (derived from abstract Tracki...
std::string TrackingDeviceType
MITK_DECLARE_SERVICE_INTERFACE(mitk::ISimulationService,"org.mitk.ISimulationService")