PlusLib  2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
vtkPlusBrachyStepperPhantomRegistrationAlgo.h
Go to the documentation of this file.
1 /*=Plus=header=begin======================================================
2  Program: Plus
3  Copyright (c) Laboratory for Percutaneous Surgery. All rights reserved.
4  See License.txt for details.
5 =========================================================Plus=header=end*/
6 
7 #ifndef __vtkPlusBrachyStepperPhantomRegistrationAlgo_h
8 #define __vtkPlusBrachyStepperPhantomRegistrationAlgo_h
9 
10 #include "PlusConfigure.h"
11 #include "vtkPlusCalibrationExport.h"
12 
13 #include "vtkObject.h"
14 #include "vtkIGSIOTrackedFrameList.h"
16 
17 class vtkMatrix4x4;
18 //class vtkIGSIOTransformRepository;
19 
31 class vtkPlusCalibrationExport vtkPlusBrachyStepperPhantomRegistrationAlgo : public vtkObject
32 {
33 public:
34 
37  virtual void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
38 
47  virtual void SetInputs(vtkIGSIOTrackedFrameList* trackedFrameList, double spacing[2], double centerOfRotationPx[2], vtkIGSIOTransformRepository* transformRepository, const std::vector<PlusNWire>& nWires);
48 
53  PlusStatus ReadConfiguration(vtkXMLDataElement* aConfig);
54 
56  virtual PlusStatus GetPhantomToReferenceTransformMatrix(vtkMatrix4x4* phantomToReferenceTransform);
57 
59  vtkGetStringMacro(PhantomCoordinateFrame);
60 
62  vtkGetStringMacro(ReferenceCoordinateFrame);
63 
64 protected:
67 
69  virtual PlusStatus Update();
70 
72  vtkSetObjectMacro(TrackedFrameList, vtkIGSIOTrackedFrameList);
73 
75  vtkGetObjectMacro(TrackedFrameList, vtkIGSIOTrackedFrameList);
76 
78  vtkSetVector2Macro(Spacing, double);
79 
81  vtkSetVector2Macro(CenterOfRotationPx, double);
82 
84  vtkSetStringMacro(PhantomCoordinateFrame);
85 
87  vtkSetStringMacro(ReferenceCoordinateFrame);
88 
90  void SetTransformRepository(vtkIGSIOTransformRepository*);
91 
92 protected:
94  double Spacing[2];
95 
97  double CenterOfRotationPx[2];
98 
100  vtkIGSIOTrackedFrameList* TrackedFrameList;
101 
103  std::vector<PlusNWire> NWires;
104 
107 
109  vtkTimeStamp UpdateTime;
110 
112  vtkIGSIOTransformRepository* TransformRepository;
113 
116 
119 };
120 
121 #endif
igsioStatus PlusStatus
Definition: PlusCommon.h:40
#define VTK_OVERRIDE
Definition: PlusCommon.h:49
Phantom registration algorithm for image to probe calibration with brachy stepper.