7 #ifndef __vtkPlusBrachyTracker_h 8 #define __vtkPlusBrachyTracker_h 10 #include "vtkPlusDataCollectionExport.h" 13 #include "PlusConfigure.h" 31 PROBEHOME_TO_PROBE_TRANSFORM = 0,
34 NUMBER_OF_BRACHY_TOOLS
40 ROW_PROBE_POSITION = 0,
41 ROW_PROBE_ROTATION = 1,
42 ROW_TEMPLATE_POSITION = 2
65 PlusStatus InitializeStepper(std::string& calibMsg);
71 PlusStatus GetStepperEncoderValues(
BufferItemUidType uid,
double& probePosition,
double& probeRotation,
double& templatePosition, ToolStatus& status);
74 PlusStatus GetLatestStepperEncoderValues(
double& probePosition,
double& probeRotation,
double& templatePosition, ToolStatus& status);
77 PlusStatus GetStepperEncoderValues(
double timestamp,
double& probePosition,
double& probeRotation,
double& templatePosition, ToolStatus& status);
83 PlusStatus GetProbeHomeToProbeTransform(
double timestamp, vtkMatrix4x4* probeHomeToProbeMatrix, ToolStatus& status);
86 PlusStatus GetTemplateHomeToTemplateTransform(
BufferItemUidType uid, vtkMatrix4x4* templateHomeToTemplateMatrix, ToolStatus& status);
89 PlusStatus GetTemplateHomeToTemplateTransform(
double timestamp, vtkMatrix4x4* templateHomeToTemplateMatrix, ToolStatus& status);
95 PlusStatus GetRawEncoderValuesTransform(
double timestamp, vtkMatrix4x4* rawEncoderValuesTransform, ToolStatus& status);
100 vtkGetStringMacro(ModelVersion);
103 vtkGetStringMacro(ModelNumber);
106 vtkGetStringMacro(ModelSerialNumber);
109 vtkSetMacro(SerialPort,
unsigned long);
112 vtkGetMacro(SerialPort,
unsigned long);
115 vtkSetMacro(BaudRate,
unsigned long);
118 vtkGetMacro(BaudRate,
unsigned long);
121 vtkGetStringMacro(CalibrationAlgorithmVersion);
124 vtkSetStringMacro(CalibrationAlgorithmVersion);
127 vtkGetStringMacro(CalibrationDate);
130 vtkSetStringMacro(CalibrationDate);
133 vtkSetVector3Macro(ProbeTranslationAxisOrientation,
double);
136 vtkGetVector3Macro(ProbeTranslationAxisOrientation,
double);
139 vtkSetVector3Macro(ProbeRotationAxisOrientation,
double);
142 vtkGetVector3Macro(ProbeRotationAxisOrientation,
double);
145 vtkSetVector3Macro(TemplateTranslationAxisOrientation,
double);
148 vtkGetVector3Macro(TemplateTranslationAxisOrientation,
double);
151 vtkSetMacro(ProbeRotationEncoderScale,
double);
154 vtkGetMacro(ProbeRotationEncoderScale,
double);
157 vtkSetMacro(CompensationEnabled,
bool);
160 vtkGetMacro(CompensationEnabled,
bool);
163 vtkBooleanMacro(CompensationEnabled,
bool);
184 std::string GetBrachyToolSourceId(BRACHY_STEPPER_TOOL tool);
187 vtkSetStringMacro(ModelVersion);
190 vtkSetStringMacro(ModelNumber);
193 vtkSetStringMacro(ModelSerialNumber);
231 double ProbeTranslationAxisOrientation[3];
234 double ProbeRotationAxisOrientation[3];
237 double TemplateTranslationAxisOrientation[3];
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
virtual PlusStatus InternalStopRecording()
Abstract interface for tracker and video devices.
PlusBrachyStepper::BRACHY_STEPPER_TYPE BrachyStepperType
virtual PlusStatus InternalConnect()
PlusBrachyStepper::BRACHY_STEPPER_TYPE GetBrachyStepperType()
virtual PlusStatus Probe()
virtual bool IsTracker() const
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *)
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *)
Interface to brachytherapy steppers.
virtual PlusStatus InternalStartRecording()
double ProbeRotationEncoderScale
char * CalibrationAlgorithmVersion
virtual PlusStatus NotifyConfigured()
PlusBrachyStepper * Device
virtual PlusStatus InternalDisconnect()
unsigned long long BufferItemUidType
virtual PlusStatus InternalUpdate()
static vtkPlusDevice * New()