12 #ifndef CXTRACKINGSERVICE_H 13 #define CXTRACKINGSERVICE_H 15 #include "cxResourceExport.h" 18 #include <boost/shared_ptr.hpp> 22 #define TrackingService_iid "cx::TrackingService" 30 typedef boost::shared_ptr<class Tool>
ToolPtr;
54 typedef std::map<QString, ToolPtr>
ToolMap;
61 virtual ToolPtr getTool(
const QString& uid) = 0;
62 virtual ToolPtr getActiveTool() = 0;
63 virtual void setActiveTool(
const QString& uid) = 0;
64 virtual ToolPtr getFirstProbe() = 0;
66 virtual ToolPtr getReferenceTool()
const = 0;
67 virtual ToolPtr getManualTool() = 0;
69 virtual ToolMap getTools() = 0;
71 virtual bool isPlaybackMode()
const = 0;
72 virtual void setPlaybackMode(PlaybackTimePtr controller) = 0;
74 virtual SessionToolHistoryMap getSessionHistory(
double startTime,
double stopTime) = 0;
75 virtual void runDummyTool(DummyToolPtr tool) = 0;
76 virtual TrackerConfigurationPtr getConfiguration() = 0;
78 virtual void installTrackingSystem(TrackingSystemServicePtr system) = 0;
79 virtual void unInstallTrackingSystem(TrackingSystemServicePtr system) = 0;
80 virtual std::vector<TrackingSystemServicePtr> getTrackingSystems() = 0;
82 virtual bool isNull() = 0;
83 static TrackingServicePtr getNullObject();
87 void activeToolChanged(
const QString& uId);
94 #endif // CXTRACKINGSERVICE_H virtual ~TrackingService()
std::map< ToolPtr, TimedTransformMap > SessionToolHistoryMap
boost::shared_ptr< class TrackingService > TrackingServicePtr
boost::shared_ptr< class ManualTool > ManualToolPtr
boost::shared_ptr< class Landmarks > LandmarksPtr
boost::shared_ptr< class PlaybackTime > PlaybackTimePtr
boost::shared_ptr< class DummyTool > DummyToolPtr
boost::shared_ptr< class TrackerConfiguration > TrackerConfigurationPtr
#define TrackingService_iid
Service providing tools and tracking systems.
std::map< QString, ToolPtr > ToolMap
std::map< double, Transform3D > TimedTransformMap
Namespace for all CustusX production code.
boost::shared_ptr< class Tool > ToolPtr
boost::shared_ptr< class TrackingSystemService > TrackingSystemServicePtr