17 #ifndef OptitrackTrackingDevice_H_HEADER_INCLUDED
18 #define OptitrackTrackingDevice_H_HEADER_INCLUDED
20 #include <MitkIGTExports.h>
22 #include <itkMultiThreader.h>
25 #include <itkFastMutexLock.h>
26 #include <itksys/SystemTools.hxx>
27 #include <itkMutexLockHolder.h>
36 #include "mitkIGTIOException.h"
38 #include "mitkIGTException.h"
78 virtual bool IsDeviceInstalled()
override;
89 virtual bool OpenConnection()
override;
97 virtual bool CloseConnection()
override;
105 virtual bool StartTracking()
override;
112 virtual bool StopTracking()
override;
120 TrackingTool* GetTool(
unsigned int toolNumber)
const override;
135 unsigned int GetToolCount()
const override;
138 itkSetMacro(Exp,
int);
141 itkGetMacro(Exp,
int);
144 itkSetMacro(Led,
int);
147 itkGetMacro(Led,
int);
150 itkSetMacro(Thr,
int);
153 itkGetMacro(Thr,
int);
156 void SetCalibrationPath(std::string calibrationPath);
159 itkGetMacro(calibrationPath,std::string);
165 static ITK_THREAD_RETURN_TYPE ThreadStartTracking(
void* data);
178 bool LoadCalibration();
191 bool SetCameraParams(
int exposure,
int threshold,
int intensity,
int videoType = 4);
198 bool InitializeCameras();
213 bool AddToolByDefinitionFile(std::string fileName);
235 std::string m_calibrationPath;
261 std::vector<mitk::OptitrackTrackingTool::Pointer> m_AllTools;
itk::SmartPointer< Self > Pointer
mitk::TrackingDeviceType OptiTrackTrackingDeviceType
An object of this class represents the Optitrack device. You can add tools to this device...
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Interface for all Tracking Devices.
itk::MutexLockHolder< itk::FastMutexLock > MutexLockHolder
IGT Exceptions.
std::string TrackingDeviceType