/usr/include/IGSTK/igstkPolarisTrackerTool.h is in libigstk4-dev 4.4.0-2build2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 | /*=========================================================================
Program: Image Guided Surgery Software Toolkit
Module: $RCSfile: igstkPolarisTrackerTool.h,v $
Language: C++
Date: $Date: 2008-04-21 20:29:36 $
Version: $Revision: 1.16 $
Copyright (c) ISC Insight Software Consortium. All rights reserved.
See IGSTKCopyright.txt or http://www.igstk.org/copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
#ifndef __igstkPolarisTrackerTool_h
#define __igstkPolarisTrackerTool_h
#include "igstkTrackerTool.h"
namespace igstk
{
igstkEventMacro( PolarisTrackerToolEvent,StringEvent);
igstkEventMacro( PolarisTrackerToolErrorEvent, TrackerToolErrorEvent);
igstkEventMacro( InvalidPolarisPortNumberErrorEvent,
PolarisTrackerToolErrorEvent);
igstkEventMacro( InvalidPolarisSROMFilenameErrorEvent,
PolarisTrackerToolErrorEvent);
igstkEventMacro( InvalidPolarisPartNumberErrorEvent,
PolarisTrackerToolErrorEvent);
class PolarisTracker;
/** \class PolarisTrackerTool
* \brief A Polaris-specific TrackerTool class.
*
* This class is a for providing Polaris-specific functionality
* for TrackerTools, and also to allow compile-time type enforcement
* for other classes and functions that specifically require
* an Polaris tool.
*
* \image html igstkPolarisTrackerTool.png "PolarisTrackerTool State
* Machine Diagram"
*
* \image latex igstkPolarisTrackerTool.eps "PolarisTrackerTool State
* Machine Diagram"
*
* \ingroup Tracker
*
*/
class PolarisTrackerTool : public TrackerTool
{
public:
/** Macro with standard traits declarations. */
igstkStandardClassTraitsMacro( PolarisTrackerTool, TrackerTool )
/** Request setting the port number. The tool can only be attached to a
* tracker after its port number has been defined. Valid port numbers are
* in [0,11]. */
void RequestSetPortNumber( unsigned int portNumber );
/** Set the TrackerTool to be wired */
void RequestSelectWiredTrackerTool();
/** Set the TrackerTool to be wireless */
void RequestSelectWirelessTrackerTool();
/** Request set the SROM file name */
void RequestSetSROMFileName( const std::string & filename );
/** Request set the PartNumber */
void RequestSetPartNumber( const std::string & toolId );
/** Check if the tracker tool is wireless type */
bool IsToolWirelessType() const;
/** Check if SROM file name specified. */
bool IsSROMFileNameSpecified() const;
/** Check if Tool part number is specified. */
bool IsPartNumberSpecified() const;
/** Get SROM file name */
igstkGetStringMacro( SROMFileName );
/** Get tracker tool port number */
igstkGetMacro( PortNumber, unsigned int );
/** Get tracker tool part number */
igstkGetStringMacro( PartNumber );
protected:
PolarisTrackerTool();
virtual ~PolarisTrackerTool();
/** Print object information */
virtual void PrintSelf( std::ostream& os, ::itk::Indent indent ) const;
private:
/** Report that a wired tracker tool selected */
void ReportWiredTrackerToolSelectedProcessing();
/** Report that a wireless tracker tool selected */
void ReportWirelessTrackerToolSelectedProcessing();
/** Set port number */
void SetPortNumberProcessing( );
/** Report Invalid port number specified */
void ReportInValidPortNumberSpecifiedProcessing( );
/** Set SROM filename */
void SetSROMFileNameProcessing( );
/** Report Invalid SROM filename specified */
void ReportInValidSROMFileSpecifiedProcessing( );
/** Set part number */
void SetPartNumberProcessing( );
/** Report Invalid part number specified */
void ReportInValidPartNumberSpecifiedProcessing( );
PolarisTrackerTool(const Self&); //purposely not implemented
void operator=(const Self&); //purposely not implemented
/** Get boolean variable to check if the tracker tool is
* initialized or not */
virtual bool CheckIfTrackerToolIsConfigured() const;
/** Get boolean variable to check if SROM file is specified */
igstkGetMacro( SROMFileNameSpecified, bool );
/** Get boolean variable to check if the tracker toolId is
* specified. */
igstkGetMacro( PartNumberSpecified, bool );
/** States for the State Machine */
igstkDeclareStateMacro( Idle );
igstkDeclareStateMacro( WirelessTrackerToolSelected );
igstkDeclareStateMacro( WiredTrackerToolSelected );
igstkDeclareStateMacro( WiredTrackerToolPortNumberSpecified );
igstkDeclareStateMacro( WirelessTrackerToolSROMFileNameSpecified );
igstkDeclareStateMacro( WiredTrackerToolSROMFileNameSpecified );
igstkDeclareStateMacro( WirelessTrackerToolPartNumberSpecified );
igstkDeclareStateMacro( WiredTrackerToolPartNumberSpecified );
/** Inputs to the State Machine */
igstkDeclareInputMacro( SelectWiredTrackerTool );
igstkDeclareInputMacro( SelectWirelessTrackerTool );
igstkDeclareInputMacro( ValidPortNumber );
igstkDeclareInputMacro( InValidPortNumber );
igstkDeclareInputMacro( ValidSROMFileName );
igstkDeclareInputMacro( InValidSROMFileName );
igstkDeclareInputMacro( ValidPartNumber);
igstkDeclareInputMacro( InValidPartNumber);
/** Port number that identifies this tool in the Tracker. */
unsigned int m_PortNumberToBeSet;
unsigned int m_PortNumber;
/** SROM file */
std::string m_SROMFileNameToBeSet;
std::string m_SROMFileName;
/** PartNumber */
std::string m_PartNumberToBeSet;
std::string m_PartNumber;
/** boolean to indicate if the tracker tool initialized or not. */
bool m_TrackerToolConfigured;
/** boolean to indicate if a tool part number is specified or not. */
bool m_PartNumberSpecified;
/** boolean to indicate if SROM filename is specified or not. */
bool m_SROMFileNameSpecified;
/** boolean to indicate if a wireless or wired tracker tool
* type is selected. */
bool m_WirelessTrackerToolSelected;
};
} // namespace igstk
#endif // __igstk_PolarisTrackerTool_h_
|