]> Creatis software - clitk.git/blob - vv/vvDeformationDialog.h
Fusion windows level is now 4 decimals
[clitk.git] / vv / vvDeformationDialog.h
1 /*=========================================================================
2   Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
3
4   Authors belong to: 
5   - University of LYON              http://www.universite-lyon.fr/
6   - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
7   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
8
9   This software is distributed WITHOUT ANY WARRANTY; without even
10   the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11   PURPOSE.  See the copyright notices for more information.
12
13   It is distributed under dual licence
14
15   - BSD        See included LICENSE.txt file
16   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ======================================================================-====*/
18 #ifndef VV_DEFORMATION_DIALOG
19 #define VV_DEFORMATION_DIALOG
20 #include <vector>
21 #include <QDialog>
22 #include <QString>
23 class vvSlicerManager;
24 #include <vvImage.h>
25 #include "ui_vvDeformationDialog.h"
26
27 class vvDeformationDialog : public QDialog, private Ui::vvDeformationDialog
28 {
29     Q_OBJECT
30
31 public:
32     vvDeformationDialog(int initialSlicer,const std::vector<vvSlicerManager*>& slicerManagers);
33     int GetInputFileIndex() const {
34         return inputSequenceBox->currentIndex();
35     }
36     QString getFieldFile() const {
37         return outputLineEdit->text();
38     }
39     vvImage::Pointer GetOutput() {
40         return mOutput;
41     }
42     vvSlicerManager * GetSelectedSlicer() const;
43     int GetReferenceFrameIndex() const;
44
45 private slots:
46     void computeDeformationField();
47     void updateSliderLabel(int refimage);
48     void resetSlider(int slicer_index);
49     void selectOutputFile();
50 protected:
51     template<unsigned int Dim> void Update_WithDim();
52     template<unsigned int Dim,class PixelType> void Update_WithDimAndPixelType();
53     std::vector<vvSlicerManager*> mSlicerManagers;
54     vvImage::Pointer mOutput;
55 };
56
57
58
59 #endif