Medical Imaging Interaction Toolkit  2018.4.99-f51274ea
Medical Imaging Interaction Toolkit
mitkRegistrationHelper.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 
14 #ifndef _mitkRegistrationHelper_h
15 #define _mitkRegistrationHelper_h
16 
17 //ITK
18 #include "itkScalableAffineTransform.h"
19 
20 //MatchPoint
21 #include "mapRegistrationAlgorithmBase.h"
22 #include "mapRegistration.h"
23 
24 //MITK
25 #include <mitkImage.h>
26 #include <mitkDataNode.h>
27 #include <mitkNodePredicateBase.h>
28 
29 //MITK
32 
33 namespace mitk
34 {
40 {
41 public:
42 
43  typedef ::itk::ScalableAffineTransform< ::mitk::ScalarType,3 > Affine3DTransformType;
44  typedef ::map::core::Registration<3,3> Registration3DType;
45  typedef ::map::core::RegistrationBase RegistrationBaseType;
46 
53  static Affine3DTransformType::Pointer getAffineMatrix(const mitk::MAPRegistrationWrapper* wrapper, bool inverseKernel);
54  static Affine3DTransformType::Pointer getAffineMatrix(const RegistrationBaseType* registration, bool inverseKernel);
55 
56  static bool is3D(const mitk::MAPRegistrationWrapper* wrapper);
57  static bool is3D(const RegistrationBaseType* regBase);
58 ;
63  static bool IsRegNode(const mitk::DataNode* node);
64 
66  static NodePredicateBase::ConstPointer RegNodePredicate();
67 
69  static NodePredicateBase::ConstPointer ImageNodePredicate();
70 
72  static NodePredicateBase::ConstPointer MaskNodePredicate();
73 
75  static NodePredicateBase::ConstPointer PointSetNodePredicate();
76 
77 private:
78  typedef ::map::core::Registration<3,3>::DirectMappingType RegistrationKernel3DBase;
79  static Affine3DTransformType::Pointer getAffineMatrix(const RegistrationKernel3DBase& kernel);
80 
85 
86 };
87 
88 }
89 
90 #endif
91 
DataCollection - Class to facilitate loading/accessing structured data.
::map::core::RegistrationBase RegistrationBaseType
MAPRegistrationWrapper Wrapper class to allow the handling of MatchPoint registration objects as mitk...
#define MITKMATCHPOINTREGISTRATION_EXPORT
::map::core::Registration< 3, 3 > Registration3DType
::itk::ScalableAffineTransform< ::mitk::ScalarType, 3 > Affine3DTransformType
Class for nodes of the DataTree.
Definition: mitkDataNode.h:57