33 #ifndef CXTRACKINGSERVICE_H 34 #define CXTRACKINGSERVICE_H 36 #include "cxResourceExport.h" 39 #include <boost/shared_ptr.hpp> 43 #define TrackingService_iid "cx::TrackingService" 51 typedef boost::shared_ptr<class Tool>
ToolPtr;
75 typedef std::map<QString, ToolPtr>
ToolMap;
82 virtual ToolPtr getTool(
const QString& uid) = 0;
83 virtual ToolPtr getActiveTool() = 0;
84 virtual void setActiveTool(
const QString& uid) = 0;
85 virtual ToolPtr getFirstProbe() = 0;
87 virtual ToolPtr getReferenceTool()
const = 0;
88 virtual ToolPtr getManualTool() = 0;
90 virtual ToolMap getTools() = 0;
92 virtual bool isPlaybackMode()
const = 0;
93 virtual void setPlaybackMode(PlaybackTimePtr controller) = 0;
95 virtual SessionToolHistoryMap getSessionHistory(
double startTime,
double stopTime) = 0;
96 virtual void runDummyTool(DummyToolPtr tool) = 0;
97 virtual TrackerConfigurationPtr getConfiguration() = 0;
99 virtual void installTrackingSystem(TrackingSystemServicePtr system) = 0;
100 virtual void unInstallTrackingSystem(TrackingSystemServicePtr system) = 0;
101 virtual std::vector<TrackingSystemServicePtr> getTrackingSystems() = 0;
103 virtual bool isNull() = 0;
104 static TrackingServicePtr getNullObject();
108 void activeToolChanged(
const QString& uId);
115 #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