CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxTrackingServiceNull.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 
12 #ifndef CXTRACKINGSERVICENULL_H
13 #define CXTRACKINGSERVICENULL_H
14 
15 #include "cxResourceExport.h"
16 
17 #include "cxTrackingService.h"
18 
19 namespace cx
20 {
21 
26 class cxResource_EXPORT TrackingServiceNull : public TrackingService
27 {
28 public:
30 
31  virtual Tool::State getState() const;
32  virtual void setState(const Tool::State val);
33 
34  virtual ToolPtr getTool(const QString& uid);
35  virtual ToolPtr getActiveTool();
36  virtual void setActiveTool(const QString& uid);
37  virtual void clearActiveTool();
38  virtual ToolPtr getFirstProbe();
39 
40  virtual ToolPtr getReferenceTool() const;
41  virtual ToolPtr getManualTool();
42 
43  virtual ToolMap getTools();
44 
45  virtual bool isPlaybackMode() const;
46  virtual void setPlaybackMode(PlaybackTimePtr controller);
47 
48  virtual SessionToolHistoryMap getSessionHistory(double startTime, double stopTime);
49  virtual void runDummyTool(DummyToolPtr tool);
50  virtual std::vector<TrackerConfigurationPtr> getConfigurations();
51  //virtual TrackerConfigurationPtr getConfiguration(QString trackingSystemImplementation);
52  virtual TrackerConfigurationPtr getConfiguration();
53  virtual void setCurrentTrackingSystemImplementation(QString trackingSystemImplementation);
54  virtual QString getCurrentTrackingSystemImplementation();
55 
56  virtual void installTrackingSystem(TrackingSystemServicePtr system);
57  virtual void unInstallTrackingSystem(TrackingSystemServicePtr system);
58  virtual std::vector<TrackingSystemServicePtr> getTrackingSystems();
59  virtual void resetTimeSynchronization();
60 
61  virtual bool isNull();
62 private:
63  void printWarning() const;
64 };
65 } //cx
66 #endif // CXTRACKINGSERVICENULL_H
std::map< ToolPtr, TimedTransformMap > SessionToolHistoryMap
boost::shared_ptr< class PlaybackTime > PlaybackTimePtr
boost::shared_ptr< class DummyTool > DummyToolPtr
boost::shared_ptr< class TrackerConfiguration > TrackerConfigurationPtr
Service providing tools and tracking systems.
std::map< QString, ToolPtr > ToolMap
Namespace for all CustusX production code.
boost::shared_ptr< class Tool > ToolPtr
boost::shared_ptr< class TrackingSystemService > TrackingSystemServicePtr