00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __igstkInfiniTrackTrackerTool_h
00020 #define __igstkInfiniTrackTrackerTool_h
00021
00022 #ifdef _MSC_VER
00023 #pragma warning ( disable : 4018 )
00024
00025
00026 #pragma warning( disable : 4284 )
00027 #endif
00028
00029 #include "igstkTrackerTool.h"
00030
00031
00032 namespace igstk
00033 {
00034
00035 class igstkInfiniTrackTracker;
00036
00051 class InfiniTrackTrackerTool : public TrackerTool
00052 {
00053
00054 public:
00055
00057 igstkStandardClassTraitsMacro (InfiniTrackTrackerTool, TrackerTool )
00058
00059
00060 igstkGetStringMacro (MarkerName);
00061
00063 void RequestSetMarkerName (const std::string & markerName);
00064
00065 protected:
00066
00068 InfiniTrackTrackerTool();
00069
00071 virtual ~InfiniTrackTrackerTool();
00072
00074 virtual void PrintSelf( std::ostream& os, ::itk::Indent indent ) const;
00075
00076 private:
00077 InfiniTrackTrackerTool(const Self&);
00078 void operator=(const Self&);
00079
00083 virtual bool CheckIfTrackerToolIsConfigured () const;
00084
00086 void ReportInvalidMarkerNameSpecifiedProcessing ();
00087
00089 void ReportInvalidRequestProcessing ();
00090
00092 void SetMarkerNameProcessing ();
00093
00095 igstkDeclareStateMacro (Idle);
00096 igstkDeclareStateMacro (MarkerNameSpecified);
00097
00099 igstkDeclareInputMacro (ValidMarkerName);
00100 igstkDeclareInputMacro (InValidMarkerName);
00101
00103 std::string m_MarkerName;
00104 std::string m_MarkerNameToBeSet;
00105
00107 bool m_TrackerToolConfigured;
00108
00109 };
00110
00111 }
00112
00113
00114 #endif // __igstk_InfiniTrackTrackerTool_h_