13 #ifndef mitkOptitrackTrackingDevice_h
14 #define mitkOptitrackTrackingDevice_h
16 #include <MitkIGTExports.h>
20 #include <itksys/SystemTools.hxx>
31 #include "mitkIGTIOException.h"
33 #include "mitkIGTException.h"
64 bool IsDeviceInstalled()
override;
75 bool OpenConnection()
override;
83 bool CloseConnection()
override;
91 bool StartTracking()
override;
98 bool StopTracking()
override;
106 TrackingTool* GetTool(
unsigned int toolNumber)
const override;
121 unsigned int GetToolCount()
const override;
124 itkSetMacro(Exp,
int);
127 itkGetMacro(Exp,
int);
130 itkSetMacro(Led,
int);
133 itkGetMacro(Led,
int);
136 itkSetMacro(Thr,
int);
139 itkGetMacro(Thr,
int);
142 void SetCalibrationPath(std::string calibrationPath);
145 itkGetMacro(calibrationPath,std::string);
150 void ThreadStartTracking();
163 bool LoadCalibration();
176 bool SetCameraParams(
int exposure,
int threshold,
int intensity,
int videoType = 4);
183 bool InitializeCameras();
198 bool AddToolByDefinitionFile(std::string fileName);
220 std::string m_calibrationPath;
246 std::vector<mitk::OptitrackTrackingTool::Pointer> m_AllTools;
251 mutable std::mutex m_ToolsMutex;
253 std::thread m_Thread;