00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Module: $RCSfile$ 00005 Language: C++ 00006 Date: $Date: 2009-05-28 17:19:30 +0200 (Do, 28 Mai 2009) $ 00007 Version: $Revision: 17495 $ 00008 00009 Copyright (c) German Cancer Research Center, Division of Medical and 00010 Biological Informatics. All rights reserved. 00011 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00012 00013 This software is distributed WITHOUT ANY WARRANTY; without even 00014 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00015 PURPOSE. See the above copyright notices for more information. 00016 00017 =========================================================================*/ 00018 00019 #ifndef _QMITKPREPROCESSINGVIEW_H_INCLUDED 00020 #define _QMITKPREPROCESSINGVIEW_H_INCLUDED 00021 00022 #include <QmitkFunctionality.h> 00023 00024 #include <string> 00025 00026 #include "ui_QmitkPreprocessingViewControls.h" 00027 00028 #include "mitkDiffusionImage.h" 00029 00030 #include <berryIPartListener.h> 00031 #include <berryISelectionListener.h> 00032 #include <berryIStructuredSelection.h> 00033 00034 typedef short DiffusionPixelType; 00035 00036 struct PrpSelListener; 00037 00047 class QmitkPreprocessingView : public QObject, public QmitkFunctionality 00048 { 00049 00050 friend struct PrpSelListener; 00051 00052 // this is needed for all Qt objects that should have a MOC object (everything that derives from QObject) 00053 Q_OBJECT 00054 00055 public: 00056 00057 static const std::string VIEW_ID; 00058 00059 QmitkPreprocessingView(); 00060 virtual ~QmitkPreprocessingView(); 00061 00062 virtual void CreateQtPartControl(QWidget *parent); 00063 00065 virtual void CreateConnections(); 00066 00068 virtual void Activated(); 00069 00070 virtual void Deactivated(); 00071 00072 virtual void StdMultiWidgetAvailable (QmitkStdMultiWidget &stdMultiWidget); 00073 virtual void StdMultiWidgetNotAvailable(); 00074 00075 static const int nrconvkernels; 00076 00077 protected slots: 00078 00079 void AverageGradients(); 00080 void DoAverageGradients(mitk::DataStorage::SetOfObjects::Pointer inImages); 00081 00082 void ExtractB0(); 00083 void DoExtractB0(mitk::DataStorage::SetOfObjects::Pointer inImages); 00084 00085 void BrainMask(); 00086 void DoBrainMask(mitk::DataStorage::SetOfObjects::Pointer inImages); 00087 00088 00089 protected: 00090 00091 Ui::QmitkPreprocessingViewControls* m_Controls; 00092 00093 QmitkStdMultiWidget* m_MultiWidget; 00094 00095 void SetDefaultNodeProperties(mitk::DataNode::Pointer node, std::string name); 00096 00097 berry::ISelectionListener::Pointer m_SelListener; 00098 berry::IStructuredSelection::ConstPointer m_CurrentSelection; 00099 00100 }; 00101 00102 00103 00104 00105 #endif // _QMITKPREPROCESSINGVIEW_H_INCLUDED 00106