IGSTK
igstkAuroraTracker.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Image Guided Surgery Software Toolkit
4  Module: $RCSfile: igstkAuroraTracker.h,v $
5  Language: C++
6  Date: $Date: 2009-06-17 14:13:10 $
7  Version: $Revision: 1.29 $
8 
9  Copyright (c) ISC Insight Software Consortium. All rights reserved.
10  See IGSTKCopyright.txt or http://www.igstk.org/copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 
18 #ifndef __igstkAuroraTracker_h
19 #define __igstkAuroraTracker_h
20 
21 #include "igstkAuroraTrackerTool.h"
22 #include "igstkNDITracker.h"
23 
24 namespace igstk
25 {
43 const unsigned int MAX_PORT_NUMBER = 12;
44 const unsigned int MAX_WIRED_PORT_NUMBER = 4;
45 const unsigned int NUMBER_OF_ATTEMPTS = 256;
46 const unsigned int MAX_CHANNEL_NUMBER = 1;
47 
48 class AuroraTracker : public NDITracker
49 {
50 public:
51 
54 
55 
56  typedef igstk::AuroraTrackerTool AuroraTrackerToolType;
57 
60  igstkSetMacro( SimulatedTestMaintainCoverage, bool );
61  igstkGetMacro( SimulatedTestMaintainCoverage, bool );
62 
63 protected:
64 
65  AuroraTracker(void);
66 
67  virtual ~AuroraTracker(void);
68 
71 
74  virtual ResultType ValidateSpecifiedFrequency( double frequencyInHz );
75 
77  virtual void PrintSelf( std::ostream& os, ::itk::Indent indent ) const;
78 
81  const TrackerToolType * trackerTool );
82 
83 private:
84 
85  AuroraTracker(const Self&); //purposely not implemented
86  void operator=(const Self&); //purposely not implemented
87 
88  // Keep track of initialized port with spliter
89  int m_HasSpliter[MAX_WIRED_PORT_NUMBER];
90  int m_SpliterHandle[MAX_WIRED_PORT_NUMBER][2];
91  bool m_SimulatedTestMaintainCoverage;
92 };
93 
94 }
95 
96 #endif //__igstk_AuroraTracker_h_
virtual void PrintSelf(std::ostream &os,::itk::Indent indent) const
Print object information.
const unsigned int MAX_WIRED_PORT_NUMBER
#define igstkGetMacro(name, type)
Get built-in type.
Definition: igstkMacros.h:105
const unsigned int NUMBER_OF_ATTEMPTS
Base class for all the IGSTK classes.
Definition: igstkObject.h:40
const unsigned int MAX_CHANNEL_NUMBER
#define igstkStandardClassTraitsMacro(classname, superclassname)
Convenience macro for traits of a non-templated class.
Definition: igstkMacros.h:275
virtual ~AuroraTracker(void)
Provides support for the NDI trackers.
virtual ResultType ValidateSpecifiedFrequency(double frequencyInHz)
The "ValidateSpecifiedFrequency" method checks if the specified frequency is valid for the tracking d...
virtual ResultType RemoveTrackerToolFromInternalDataContainers(const TrackerToolType *trackerTool)
Remove tracker tool entry from internal containers.
An Aurora-specific TrackerTool class.
igstkStandardAbstractClassTraitsMacro(Tracker, Object) public typedef TrackerTool TrackerToolType
Macro with standard traits declarations.
Definition: igstkTracker.h:101
#define igstkSetMacro(name, type)
Set built-in type.
Definition: igstkMacros.h:93
Provides support for the AURORA magnetic tracker.
virtual ResultType VerifyTrackerToolInformation(const TrackerToolType *)
Verify tracker tool information.
const unsigned int MAX_PORT_NUMBER