SignElementCalibrateTool.h

Go to the documentation of this file.
00001 /*
00002  *
00003  * Program:   Slicer Image-Guided Navigator (The SIGN)
00004  * Module:    $RCSfile: SignElementCalibrateTool.h,v $
00005  */
00013 #ifndef _SIGNELEMENTCALIBRATETOOL_H
00014 #define _SIGNELEMENTCALIBRATETOOL_H
00015 
00016 #include <map>
00017 
00018 #include <SignDLL.h>
00019 #include <SignElement.h>
00020 
00021 class SignPivotCalibration;
00022 
00023 class SIGN_EXPORT SignElementCalibrateTool : public SignElement
00024 {
00025  public:
00026   vtkTypeRevisionMacro(SignElementCalibrateTool,SignElement);
00027   virtual void PrintSelf(ostream& os, vtkIndent indent);
00028 
00029   static SignElementCalibrateTool* New();
00030 
00032   bool ActivateElement();
00034   bool DeActivateElement();
00036   void SetNumberOfCalibrationPoints(int);
00038   void SetPopUpMessageOnOff(bool);
00040         void SetCalibrationSink(std::string name);
00041 
00042  protected:
00043   SignElementCalibrateTool();
00044   ~SignElementCalibrateTool();
00045 
00046   SignElementCalibrateTool(const SignElementCalibrateTool&);  // Not implemented.
00047   void operator=(const SignElementCalibrateTool&);  // Not implemented.
00048 
00049  private:
00050   void StartCalibration();
00051 
00052         static void AcquireTrackingData(vtkObject *caller,unsigned long event, void* data,void*calldata);
00053   void CalculateCalibration();
00054 
00055   SignPivotCalibration *calibrator;
00056   int samples_acquired;
00057   unsigned long toid;
00058   int number_of_points;
00059   bool displayPopup;
00060   std::string calibrationSink;
00061 };
00062 #endif

Generated on Mon Feb 26 12:11:16 2007 for TheSIGN by  doxygen 1.4.6