IGSTK
|
Provides support for the Ascension 3D Guidance trackers. More...
#include <igstkAscension3DGTracker.h>
Public Member Functions | |
igstkStandardClassTraitsMacro (Ascension3DGTracker, Tracker) virtual unsigned int GetNumberOfTools() | |
Macro with standard traits declarations. | |
void | RequestSensorAttached (int sensorID) |
Request whether the particular sensor (0 based), is attached. | |
void | RequestTransmitterAttached () |
Request whether a transmitter, is attached. | |
void | RequestSensorSaturated (int sensorID) |
Request whether the particular sensor (0 based), is too close to the magnetic transmitter and is saturated. | |
void | RequestSensorInMotionBox (int sensorID) |
Request whether the particular sensor (0 based), is outside of the tracking motion box. | |
![]() | |
void | RequestOpen (void) |
The "RequestOpen" method attempts to open communication with the tracking device. | |
void | RequestClose (void) |
The "RequestClose" method closes communication with the device. | |
void | RequestReset (void) |
The "RequestReset" tracker method should be used to bring the tracker | |
void | RequestStartTracking (void) |
The "RequestStartTracking" method readies the tracker for tracking the | |
void | RequestStopTracking (void) |
The "RequestStopTracking" stops tracker from tracking the tools. | |
void | RequestSetFrequency (double frequencyInHz) |
The "RequestSetFrequency" method defines the frequency at which the Transform information will be queried from the Tracker device. | |
void | RequestSetReferenceTool (TrackerToolType *trackerTool) |
Set a reference tracker tool. | |
virtual void | SetThreadingEnabled (bool _arg) |
SetThreadingEnabled(bool) : set m_ThreadingEnabled value. | |
virtual bool | GetThreadingEnabled () |
GetThreadingEnabled(bool) : get m_ThreadingEnabled value. | |
![]() | |
virtual const char * | GetNameOfClass () const |
void | SetLogger (LoggerType *logger) |
Connect the Logger for this class. | |
void | RemoveObserver (unsigned long tag) const |
Protected Types | |
typedef Tracker::ResultType | ResultType |
typedef for internal boolean return type | |
![]() | |
enum | ResultType { FAILURE = 0, SUCCESS } |
typedef Transform::TimePeriodType | TimePeriodType |
typedef for times used by the tracker | |
typedef Transform | TransformType |
typedefs from Transform class | |
typedef std::map< std::string, TrackerToolType * > | TrackerToolsContainerType |
typedefs from TrackerTool class |
Protected Member Functions | |
Ascension3DGTracker (void) | |
protected constructor | |
virtual | ~Ascension3DGTracker (void) |
virtual ResultType | InternalOpen (void) |
Open communication with the tracking device. | |
virtual ResultType | InternalClose (void) |
Close communication with the tracking device. | |
virtual ResultType | InternalStartTracking (void) |
Put the tracking device into tracking mode. | |
virtual ResultType | InternalStopTracking (void) |
Take the tracking device out of tracking mode. | |
virtual ResultType | InternalUpdateStatus (void) |
Update the status and the transforms for all TrackerTools. | |
virtual ResultType | InternalThreadedUpdateStatus (void) |
Update the status and the transforms. | |
virtual ResultType | VerifyTrackerToolInformation (const TrackerToolType *trackerTool) |
Verify tracker tool information. | |
virtual ResultType | ValidateSpecifiedFrequency (double frequencyInHz) |
Verify the specified tracker measurement frequency. | |
virtual ResultType | AddTrackerToolToInternalDataContainers (const TrackerToolType *trackerTool) |
Add tracker tool entry from internal containers. | |
virtual ResultType | RemoveTrackerToolFromInternalDataContainers (const TrackerToolType *trackerTool) |
Remove tracker tool from internal containers. | |
virtual ResultType | InternalReset (void) |
Reset the tracking device to put it back to its original state. | |
virtual void | PrintSelf (std::ostream &os,::itk::Indent indent) const |
Print object information. | |
![]() | |
Tracker (void) | |
virtual | ~Tracker (void) |
virtual TimePeriodType | GetValidityTime () |
Get the validity time. | |
virtual void | PrintSelf (std::ostream &os, itk::Indent indent) const |
Print the object information in a stream. | |
const TrackerToolsContainerType & | GetTrackerToolContainer () const |
Access method for the tracker tool container. | |
void | ReportTrackingToolNotAvailable (TrackerToolType *trackerTool) const |
Report to tracker tool that it is not available for tracking. | |
void | ReportTrackingToolVisible (TrackerToolType *trackerTool) const |
Report to tracker tool that it is visible. | |
void | SetTrackerToolRawTransform (TrackerToolType *trackerTool, const TransformType transform) |
Set tracker tool raw transform. | |
void | SetTrackerToolTransformUpdate (TrackerToolType *trackerTool, bool flag) const |
Turn on/off update flag of the tracker tool. | |
void | ExitTrackingStateProcessing (void) |
Depending on the tracker type, the tracking thread should be terminated or left untouched when we stop tracking. | |
void | ExitTrackingWithoutTerminatingTrackingThread () |
Exit tracking without terminating tracking thread. | |
void | ExitTrackingTerminatingTrackingThread () |
Exit tracking after terminating tracking thread. | |
![]() | |
LoggerType * | GetLogger () const |
Object (void) | |
Constructor is protected in order to enforce the use of the New() operator. | |
virtual | ~Object (void) |
void | RegisterObservedObject (const ::igstk::Object *object, unsigned long tag) |
Register observed objects in an internal array so that they can be disconnected upon destruction. | |
void | RemoveFromObservedObjects () |
Remove observers that this object may have connected to other objects. |
Additional Inherited Members | |
![]() | |
typedef Object | Self |
General Typedefs. | |
typedef ::itk::Object | Superclass |
typedef ::itk::SmartPointer< Self > | Pointer |
typedef ::itk::SmartPointer < const Self > | ConstPointer |
typedef igstk::Logger | LoggerType |
![]() | |
static Pointer | New (void) |
![]() | |
igstkStandardAbstractClassTraitsMacro(Tracker, Object) public typedef TrackerTool | TrackerToolType |
Macro with standard traits declarations. |
Provides support for the Ascension 3D Guidance trackers.
This class provides an interface to Ascension Technology Corporation's 3D Guidance family of magnetic trackers.
Events are provided that can be used to monitor the status of the tracker. These include notifications when sensors are attached or detached, when a sensor is too close or too far away from the magnetic transmitter, and if the magnetic transmitter is unplugged. At startup the state of the system can be querried with the Request methods. After the initial state is learned, changes can be monitored by setting up an observer for Ascension3DGToolEvent events.
Definition at line 86 of file igstkAscension3DGTracker.h.
|
protected |
typedef for internal boolean return type
Definition at line 135 of file igstkAscension3DGTracker.h.
|
protected |
protected constructor
|
protectedvirtual |
igstk::Ascension3DGTracker::igstkStandardClassTraitsMacro | ( | Ascension3DGTracker | , |
Tracker | |||
) |
Macro with standard traits declarations.
Get the number of tools that have been detected.
void igstk::Ascension3DGTracker::RequestSensorAttached | ( | int | sensorID | ) |
Request whether the particular sensor (0 based), is attached.
An Ascension3DGToolEvent event will be sent. The tracker must have already been initialized with RequestOpen(). It is intended that this method be called on application startup to learn the initial state of the tracker system. After that, an observer can be set up to monitor Ascension3DGToolEvents for changes to the system.
void igstk::Ascension3DGTracker::RequestTransmitterAttached | ( | ) |
Request whether a transmitter, is attached.
An Ascension3DGToolEvent event will be sent. The tracker must have already been initialized with RequestOpen(). It is intended that this method be called on application startup to learn the initial state of the tracker system. After that, an observer can be set up to monitor Ascension3DGToolEvents for changes to the system.
void igstk::Ascension3DGTracker::RequestSensorSaturated | ( | int | sensorID | ) |
Request whether the particular sensor (0 based), is too close to the magnetic transmitter and is saturated.
An Ascension3DGToolEvent event will be sent. The tracker must have already been initialized with RequestOpen(). It is intended that this method be called on application startup to learn the initial state of the tracker system. After that, an observer can be set up to monitor Ascension3DGToolEvents for changes to the system.
void igstk::Ascension3DGTracker::RequestSensorInMotionBox | ( | int | sensorID | ) |
Request whether the particular sensor (0 based), is outside of the tracking motion box.
An Ascension3DGToolEvent event will be sent. The tracker must have already been initialized with RequestOpen(). It is intended that this method be called on application startup to learn the initial state of the tracker system. After that, an observer can be set up to monitor Ascension3DGToolEvents for changes to the system.
|
protectedvirtual |
Open communication with the tracking device.
Implements igstk::Tracker.
|
protectedvirtual |
Close communication with the tracking device.
Implements igstk::Tracker.
|
protectedvirtual |
Put the tracking device into tracking mode.
Implements igstk::Tracker.
|
protectedvirtual |
Take the tracking device out of tracking mode.
Implements igstk::Tracker.
|
protectedvirtual |
Update the status and the transforms for all TrackerTools.
Implements igstk::Tracker.
|
protectedvirtual |
Update the status and the transforms.
This function is called by a separate thread.
Implements igstk::Tracker.
|
protectedvirtual |
Verify tracker tool information.
Implements igstk::Tracker.
|
protectedvirtual |
Verify the specified tracker measurement frequency.
Reimplemented from igstk::Tracker.
|
protectedvirtual |
Add tracker tool entry from internal containers.
Implements igstk::Tracker.
|
protectedvirtual |
Remove tracker tool from internal containers.
Implements igstk::Tracker.
|
protectedvirtual |
Reset the tracking device to put it back to its original state.
Implements igstk::Tracker.
|
protectedvirtual |
Print object information.