00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision: 1.12 $ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 #ifndef QmitkKullbackLeiblerCompareHistogramMetricViewWidgetHIncluded 00019 #define QmitkKullbackLeiblerCompareHistogramMetricViewWidgetHIncluded 00020 00021 #include "ui_QmitkKullbackLeiblerCompareHistogramMetricControls.h" 00022 #include "MitkRigidRegistrationUIExports.h" 00023 #include "QmitkRigidRegistrationMetricsGUIBase.h" 00024 #include <itkArray.h> 00025 #include <itkObject.h> 00026 #include <itkImage.h> 00027 00033 class MITK_RIGIDREGISTRATION_UI_EXPORT QmitkKullbackLeiblerCompareHistogramMetricView : public QmitkRigidRegistrationMetricsGUIBase 00034 { 00035 00036 public: 00037 00038 QmitkKullbackLeiblerCompareHistogramMetricView( QWidget* parent = 0, Qt::WindowFlags f = 0 ); 00039 ~QmitkKullbackLeiblerCompareHistogramMetricView(); 00040 00041 00042 virtual itk::Object::Pointer GetMetric(); 00043 00044 virtual itk::Array<double> GetMetricParameters(); 00045 00046 virtual void SetMetricParameters(itk::Array<double> metricValues); 00047 00048 virtual QString GetName(); 00049 00050 virtual void SetupUI(QWidget* parent); 00051 00052 private: 00053 00054 template < class TPixelType, unsigned int VImageDimension > 00055 itk::Object::Pointer GetMetric2(itk::Image<TPixelType, VImageDimension>* itkImage1); 00056 00057 protected: 00058 00059 Ui::QmitkKullbackLeiblerCompareHistogramMetricControls m_Controls; 00060 00061 itk::Object::Pointer m_MetricObject; 00062 00063 }; 00064 00065 #endif