IGSTK

/build/buildd/igstk-4.2.0/Source/igstkAuroraTracker.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Image Guided Surgery Software Toolkit
00004   Module:    $RCSfile: igstkAuroraTracker.h,v $
00005   Language:  C++
00006   Date:      $Date: 2009-06-17 14:13:10 $
00007   Version:   $Revision: 1.29 $
00008 
00009   Copyright (c) ISC  Insight Software Consortium.  All rights reserved.
00010   See IGSTKCopyright.txt or http://www.igstk.org/copyright.htm for details.
00011 
00012      This software is distributed WITHOUT ANY WARRANTY; without even
00013      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00014      PURPOSE.  See the above copyright notices for more information.
00015 
00016 =========================================================================*/
00017 
00018 #ifndef __igstkAuroraTracker_h
00019 #define __igstkAuroraTracker_h
00020 
00021 #include "igstkAuroraTrackerTool.h"
00022 #include "igstkNDITracker.h"
00023 
00024 namespace igstk
00025 {
00043 const unsigned int MAX_PORT_NUMBER = 12;
00044 const unsigned int MAX_WIRED_PORT_NUMBER = 4;
00045 const unsigned int NUMBER_OF_ATTEMPTS = 256;
00046 const unsigned int MAX_CHANNEL_NUMBER = 1;
00047 
00048 class AuroraTracker : public NDITracker
00049 {
00050 public:
00051 
00053   igstkStandardClassTraitsMacro( AuroraTracker, NDITracker )
00054 
00055   
00056   typedef igstk::AuroraTrackerTool      AuroraTrackerToolType;
00057       
00060    igstkSetMacro( SimulatedTestMaintainCoverage, bool );   
00061    igstkGetMacro( SimulatedTestMaintainCoverage, bool );
00062       
00063 protected:
00064 
00065   AuroraTracker(void);
00066 
00067   virtual ~AuroraTracker(void);
00068 
00070   virtual ResultType VerifyTrackerToolInformation( const TrackerToolType * );
00071 
00074   virtual ResultType ValidateSpecifiedFrequency( double frequencyInHz );
00075  
00077   virtual void PrintSelf( std::ostream& os, ::itk::Indent indent ) const; 
00078 
00080   virtual ResultType RemoveTrackerToolFromInternalDataContainers(
00081                                   const TrackerToolType * trackerTool ); 
00082 
00083 private:
00084 
00085   AuroraTracker(const Self&);   //purposely not implemented
00086   void operator=(const Self&);   //purposely not implemented
00087 
00088   // Keep track of initialized port with spliter
00089   int                               m_HasSpliter[MAX_WIRED_PORT_NUMBER];
00090   int                               m_SpliterHandle[MAX_WIRED_PORT_NUMBER][2];
00091   bool                              m_SimulatedTestMaintainCoverage;
00092 };
00093 
00094 }
00095 
00096 #endif //__igstk_AuroraTracker_h_