Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
mitkRegEvaluationObject.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 #ifndef mitkRegEvaluationObject_h
14 #define mitkRegEvaluationObject_h
15 
16 //MITK
17 #include <mitkImage.h>
18 #include <mitkDataNode.h>
19 
20 //MatchPoint
21 #include <mapRegistrationBase.h>
22 #include <mapRegistration.h>
23 #include <mapExceptionObjectMacros.h>
24 #include <mapContinuousElements.h>
25 
26 //MITK
29 
30 namespace mitk
31 {
37  {
38  public:
39 
41 
42  itkNewMacro( Self );
43 
48 
53 
57  bool VerifyRequestedRegion() override;
58 
62  void SetRequestedRegion(const itk::DataObject*) override;
63 
64  itkSetObjectMacro(Registration, mitk::MAPRegistrationWrapper);
65 
67  void SetTargetImage(const mitk::Image* tImg);
69  void SetMovingImage(const mitk::Image* mImg);
70 
71  itkGetObjectMacro(Registration, mitk::MAPRegistrationWrapper);
72  itkGetObjectMacro(TargetImage, mitk::Image);
73  itkGetObjectMacro(MovingImage, mitk::Image);
74 
75  itkGetConstObjectMacro(Registration, mitk::MAPRegistrationWrapper);
76  itkGetConstObjectMacro(TargetImage, mitk::Image);
77  itkGetConstObjectMacro(MovingImage, mitk::Image);
78 
80  void SetTargetNode(const mitk::DataNode* tNode);
82  void SetMovingNode(const mitk::DataNode* mNode);
83 
84  itkGetConstObjectMacro(TargetNode, mitk::DataNode);
85  itkGetConstObjectMacro(MovingNode, mitk::DataNode);
86 
87  protected:
88  typedef ::itk::Image<unsigned char, 3> InternalImageType;
89 
90  template <typename TPixelType, unsigned int VImageDimension >
91  void doConversion(const ::itk::Image<TPixelType,VImageDimension>* input, mitk::Image::Pointer& result) const;
92 
93  void PrintSelf (std::ostream &os, itk::Indent indent) const override;
94 
97 
98  mitk::MAPRegistrationWrapper::Pointer m_Registration;
101  mitk::DataNode::ConstPointer m_TargetNode;
102  mitk::DataNode::ConstPointer m_MovingNode;
103 
104  private:
105  RegEvaluationObject& operator = (const RegEvaluationObject&);
107  };
108 
109 }
110 
111 #endif
#define MITKMATCHPOINTREGISTRATION_EXPORT
Base of all data objects.
Definition: mitkBaseData.h:44
Class for nodes of the DataTree.
Definition: mitkDataNode.h:64
Image class for storing images.
Definition: mitkImage.h:70
MAPRegistrationWrapper Wrapper class to allow the handling of MatchPoint registration objects as mitk...
RegEvaluationObject Class that contains all data to realize an evaluation of registrations via images...
void PrintSelf(std::ostream &os, itk::Indent indent) const override
void SetRequestedRegionToLargestPossibleRegion() override
bool RequestedRegionIsOutsideOfTheBufferedRegion() override
mitk::MAPRegistrationWrapper::Pointer m_Registration
void SetTargetImage(const mitk::Image *tImg)
mitk::Image::Pointer m_MovingImage
mitk::DataNode::ConstPointer m_MovingNode
mitkClassMacro(RegEvaluationObject, BaseData)
mitk::Image::Pointer m_TargetImage
bool VerifyRequestedRegion() override
mitk::DataNode::ConstPointer m_TargetNode
void SetRequestedRegion(const itk::DataObject *) override
::itk::Image< unsigned char, 3 > InternalImageType
void doConversion(const ::itk::Image< TPixelType, VImageDimension > *input, mitk::Image::Pointer &result) const
void SetMovingNode(const mitk::DataNode *mNode)
void SetMovingImage(const mitk::Image *mImg)
void SetTargetNode(const mitk::DataNode *tNode)
Find image slices visible on a given plane.