18 #ifndef __igstkAscension3DGTracker_h
19 #define __igstkAscension3DGTracker_h
175 virtual void PrintSelf( std::ostream& os, ::itk::Indent indent )
const;
180 void operator=(
const Self&);
186 Ascension3DGTrackerToolConstPointer;
190 void EnableToolPorts(
void );
193 void DisableToolPorts(
void );
197 int CheckAPIReturnStatus(
int status);
200 unsigned int m_NumberOfTools;
202 enum {TRANSMITTER_OFF = -1};
205 itk::MutexLock::Pointer m_BufferLock;
207 typedef std::map< std::string, std::vector < double > >
208 TrackerToolTransformContainerType;
210 TrackerToolTransformContainerType m_ToolTransformBuffer;
212 typedef std::map< unsigned int, std::string> ErrorCodeContainerType;
214 static ErrorCodeContainerType m_ErrorCodeContainer;
216 enum ToolAvailabilityStatus {TOOL_UNAVAILABLE, TOOL_AVAILABLE};
218 std::map< std::string, ToolAvailabilityStatus > m_ToolStatusContainer;
221 static unsigned short ConvertToolNameToSensorID(
const std::string &name);
223 static std::string ConvertSensorIDToToolName(
unsigned short id);
232 std::vector<bool> m_SensorSaturated;
233 std::vector<bool> m_SensorAttached;
234 std::vector<bool> m_SensorInMotionBox;
235 bool m_TransmitterAttached;
238 void InvokeSensorToolEvent(std::string sensorName,
int sensorID,
242 void NoProcessing(){};
244 void ReportSensorSaturationProcessing();
245 void ReportSensorAttachedProcessing();
246 void ReportTransmitterAttachedProcessing();
247 void ReportSensorInMotionBoxProcessing();
253 igstkDeclareStateMacro(Idle);
254 igstkDeclareStateMacro(Initialized);
255 igstkDeclareStateMacro(AttemptingToGetSaturation);
256 igstkDeclareStateMacro(AttemptingToGetSensorAttached);
257 igstkDeclareStateMacro(AttemptingToGetTransmitterAttached);
258 igstkDeclareStateMacro(AttemptingToGetSensorInMotionBox);
261 igstkDeclareInputMacro(Initialize);
262 igstkDeclareInputMacro(GetSensorSaturation);
263 igstkDeclareInputMacro(GetSensorAttached);
264 igstkDeclareInputMacro(GetTransmitterAttached);
265 igstkDeclareInputMacro(GetSensorInMotionBox);
270 #endif //__igstk_Ascension3DGTracker_h_