NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
niftkPointRegServiceRAII.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef niftkPointRegServiceRAII_h
16 #define niftkPointRegServiceRAII_h
17 
18 #include <niftkIGIServicesExports.h>
19 #include "niftkPointRegServiceI.h"
20 
21 #include <usServiceReference.h>
22 #include <usModuleContext.h>
23 
24 #include <mitkPointSet.h>
25 #include <vtkMatrix4x4.h>
26 
27 namespace niftk
28 {
29 
36 class NIFTKIGISERVICES_EXPORT PointRegServiceRAII : public PointRegServiceI
37 {
38 
39 public:
40 
44  PointRegServiceRAII(const std::string& method="SVD");
45 
49  virtual ~PointRegServiceRAII();
50 
56  virtual double Register(const mitk::PointSet::Pointer fixedPoints,
57  const mitk::PointSet::Pointer movingPoints,
58  vtkMatrix4x4& matrix) const override;
59 
60 private:
61  PointRegServiceRAII(const PointRegServiceRAII&); // deliberately not implemented
62  PointRegServiceRAII& operator=(const PointRegServiceRAII&); // deliberately not implemented
63 
64  us::ModuleContext* m_ModuleContext;
65  std::vector<us::ServiceReference<PointRegServiceI> > m_Refs;
66  niftk::PointRegServiceI* m_Service;
67 };
68 
69 } // end namespace
70 
71 #endif
RAII object to run Point Based Registration via a PointRegServiceI implementation.
Definition: niftkPointRegServiceRAII.h:36
GLuint GLenum matrix
Definition: glew.h:12775
Interface for a Point Based Registration Service.
Definition: niftkPointRegServiceI.h:33
Definition: niftkExceptionObject.h:21
GLsizei const GLcharARB ** string
Definition: glew.h:5194