12 #ifndef CXTRACKINGIMPLSERVICE_H_ 13 #define CXTRACKINGIMPLSERVICE_H_ 15 #include "org_custusx_core_tracking_Export.h" 27 class ctkPluginContext;
79 virtual bool isPlaybackMode()
const;
82 virtual ToolPtr getTool(
const QString& uid);
84 virtual ToolPtr getActiveTool();
85 virtual void setActiveTool(
const QString& uid);
86 virtual void clearActiveTool();
88 virtual ToolPtr getReferenceTool()
const;
90 virtual ToolPtr getManualTool();
95 virtual ToolPtr getFirstProbe();
97 virtual void setPlaybackMode(PlaybackTimePtr controller);
98 virtual std::vector<TrackerConfigurationPtr> getConfigurations();
101 virtual QString getCurrentTrackingSystemImplementation();
103 virtual void installTrackingSystem(TrackingSystemServicePtr system);
104 virtual void unInstallTrackingSystem(TrackingSystemServicePtr system);
105 virtual std::vector<TrackingSystemServicePtr> getTrackingSystems();
106 virtual void resetTimeSynchronization();
109 virtual void setCurrentTrackingSystemImplementation(QString trackingSystemImplementation);
114 void globalConfigurationFileChangedSlot(QString key);
115 void onSystemStateChanged();
116 void activeCheckSlot();
117 void onTooltipOffset(
double val);
119 void onSessionChanged();
120 void onSessionCleared();
121 void onSessionLoad(QDomElement& node);
122 void onSessionSave(QDomElement& node);
125 void listenForTrackingSystemServices(ctkPluginContext *context);
131 void rebuildCachedTools();
132 void initializeManualTool();
133 void setConfigurationFile(QString configurationFile);
134 void resetTrackingPositionFilters();
136 void imbueManualToolWithRealProperties();
137 void addToolsFrom(TrackingSystemServicePtr system);
138 bool manualToolHasMostRecentTimestamp();
139 std::vector<ToolPtr> getVisibleTools();
141 void addXml(QDomNode& parentNode);
142 void parseXml(QDomNode& dataNode);
143 virtual void savePositionHistory();
144 virtual void loadPositionHistory();
146 QString getLoggingFolder();
152 ManualToolAdapterPtr mManualTool;
154 double mLastLoadPositionHistory;
156 std::vector<TrackingSystemServicePtr> mTrackingSystems;
157 TrackingSystemPlaybackServicePtr mPlaybackSystem;
158 ctkPluginContext *mContext;
159 SessionStorageServicePtr mSession;
161 double mToolTipOffset;
163 boost::shared_ptr<ServiceTrackerListener<TrackingSystemService> > mServiceListener;
164 QString mTrackingSystemImplementation;
std::map< ToolPtr, TimedTransformMap > SessionToolHistoryMap
boost::shared_ptr< class TrackingSystemPlaybackService > TrackingSystemPlaybackServicePtr
bool toolTypeSort(const ToolPtr tool1, const ToolPtr tool2)
function for sorting tools by type
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
boost::shared_ptr< class TrackingImplService > TrackingImplServicePtr
boost::shared_ptr< class ManualToolAdapter > ManualToolAdapterPtr
boost::shared_ptr< class SessionStorageService > SessionStorageServicePtr
Interface towards the navigation system.
Namespace for all CustusX production code.
boost::shared_ptr< class Tool > ToolPtr
boost::shared_ptr< class TrackingSystemService > TrackingSystemServicePtr