Loading...
Searching...
No Matches
FusionWizardPage.h
Go to the documentation of this file.
1/* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2
3 This file is part of the TerraLib - a Framework for building GIS enabled applications.
4
5 TerraLib is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
9
10 TerraLib is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with TerraLib. See COPYING. If not, write to
17 TerraLib Team at <terralib-team@terralib.org>.
18 */
19
20/*!
21 \file terralib/qt/widgets/rp/FusionWizardPage.h
22
23 \brief This file defines a class for a Fusion Wizard page.
24*/
25
26#ifndef __TERRALIB_QT_WIDGETS_RP_INTERNAL_FUSIONWIZARDPAGE_H
27#define __TERRALIB_QT_WIDGETS_RP_INTERNAL_FUSIONWIZARDPAGE_H
28
29// TerraLib
30#ifndef Q_MOC_RUN
31#include "../../../maptools/AbstractLayer.h"
32#include "../../../rp/IHSFusion.h"
33#include "../../../rp/PCAFusion.h"
34#include "../../../rp/WisperFusion.h"
35#include "../../../qt/widgets/charts/ChartDisplay.h"
36#include "../../../qt/widgets/charts/Scatter.h"
37#endif
38#include "../../../qt/widgets/charts/ScatterChart.h"
39#include "../Config.h"
40
41// STL
42#include <memory>
43
44// Qt
45#include <QComboBox>
46#include <QToolButton>
47#include <QWizardPage>
48
49
50// Forward declaration
51namespace Ui { class FusionWizardPageForm; }
52
53namespace te
54{
55 namespace qt
56 {
57 namespace widgets
58 {
60 {
64 };
65
66 /*!
67 \class FusionWizardPage
68
69 \brief This class is GUI used to define the fusion parameters for the RP fusion operation.
70 */
71 class TEQTWIDGETSEXPORT FusionWizardPage : public QWizardPage
72 {
73 Q_OBJECT
74
75 public:
76
77 FusionWizardPage(QWidget* parent = 0);
78
80
81 bool isComplete() const;
82
83 public:
84
85 /*!
86 \brief This method is used to set the selected layer for classifier operation
87
88 \param layer The layer ptr
89
90 \note This layer MUST HAVE a valid raster object.
91 */
93
94 /*!
95 \brief This method is used to set the selected layer for classifier operation
96
97 \param layer The layer ptr
98
99 \note This layer MUST HAVE a valid raster object.
100 */
102
104
106
108
110
112
114
116
118
120
121 protected slots:
122
124
126
128
130
131 protected:
132
134
135 void fillSensorTypes(QComboBox* combo);
136
138
140
142
143 std::map<double, double> getSRFMap(const int& st, std::string stName);
144
145 private:
146
147 std::unique_ptr<Ui::FusionWizardPageForm> m_ui;
148
150
152
155
156 std::vector<te::qt::widgets::Scatter*> m_scatterLowResVec;
157 std::vector<te::qt::widgets::ScatterChart*> m_scatterChartLowResVec;
158
159 std::map<QComboBox*, int> m_comboMap;
160 std::map<QToolButton*, int> m_buttonMap;
161
164 };
165
166 } // end namespace widgets
167 } // end namespace qt
168} // end namespace te
169
170#endif // __TERRALIB_QT_WIDGETS_RP_INTERNAL_FUSIONWIZARDPAGE_H
A class to represent a chart display.
Definition: ChartDisplay.h:66
This class is GUI used to define the fusion parameters for the RP fusion operation.
te::qt::widgets::Scatter * m_scatterHighRes
te::rp::PCAFusion::OutputParameters getOutputPCAParams()
void setLower(te::map::AbstractLayerPtr layer)
This method is used to set the selected layer for classifier operation.
std::vector< te::qt::widgets::ScatterChart * > m_scatterChartLowResVec
FusionWizardPage(QWidget *parent=0)
te::qt::widgets::ScatterChart * m_scatterChartHighRes
void onHighResSensorTypeActivated(int idx)
std::map< QToolButton *, int > m_buttonMap
std::map< QComboBox *, int > m_comboMap
te::rp::IHSFusion::OutputParameters getOutputIHSParams()
te::map::AbstractLayerPtr m_layerHigher
std::unique_ptr< Ui::FusionWizardPageForm > m_ui
void setHigher(te::map::AbstractLayerPtr layer)
This method is used to set the selected layer for classifier operation.
te::rp::IHSFusion::InputParameters getInputIHSParams()
te::rp::WisperFusion::OutputParameters getOutputWisperParams()
te::rp::PCAFusion::InputParameters getInputPCAParams()
void fillSensorTypes(QComboBox *combo)
std::vector< te::qt::widgets::Scatter * > m_scatterLowResVec
te::qt::widgets::ChartDisplay * m_chartDisplay
te::map::AbstractLayerPtr m_layerLower
te::rp::WisperFusion::InputParameters getInputWisperParams()
std::map< double, double > getSRFMap(const int &st, std::string stName)
A class to represent a scatter chart.
Definition: ScatterChart.h:56
A class to represent a scatter.
Definition: Scatter.h:52
IHSFusion input parameters.
Definition: IHSFusion.h:68
IHSFusion output parameters.
Definition: IHSFusion.h:133
PCAFusion input parameters.
Definition: PCAFusion.h:62
PCAFusion output parameters.
Definition: PCAFusion.h:119
WisperFusion input parameters.
Definition: WisperFusion.h:66
WisperFusion output parameters.
Definition: WisperFusion.h:123
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr
TerraLib.
#define slots
#define TEQTWIDGETSEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:63