RasterTransformWizardPage.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 #ifndef TE_QT_WIDGETS_RASTERTRANSFORMWIZARDPAGE_H
22 #define TE_QT_WIDGETS_RASTERTRANSFORMWIZARDPAGE_H
23 
24 #include "ui/ui_RasterTransformWizardPageForm.h"
25 #include "../../../maptools/AbstractLayer.h"
26 #include "../Config.h"
27 
28 #include <QWizardPage>
29 #include <QActionGroup>
30 
31 #include <memory>
32 #include <vector>
33 
34 namespace te
35 {
36  namespace rst { class Raster; }
37 
38  namespace qt
39  {
40  namespace widgets
41  {
42 
43  class TEQTWIDGETSEXPORT RasterTransformWizardPage : public QWizardPage
44  {
45  Q_OBJECT
46 
47  public:
48 
49  std::unique_ptr<Ui::RasterTransformWizardPageForm> m_uiPageForm;
50 
51  RasterTransformWizardPage(QWidget* parent=0);
52 
54 
55  bool isComplete() const;
56 
57  /*!
58  \brief This method is used to set the selected layer for vectorization operation
59 
60  \param layer The layer ptr
61 
62  \note This layer MUST HAVE a valid raster object.
63  */
65 
66  /*!
67  \brief return the current layer pointer or null pointer.
68  \return return the current layer pointer or null pointer.
69  */
71 
72  /*!
73  \brief Returns the output raster data type.
74  \brief Returns the output raster data type.
75  */
76  unsigned int getOutDataType() const;
77 
78  /*!
79  \brief Returns the interpolator type.
80  \return Returns the interpolator data type.
81  */
82  unsigned int getInterpolator() const;
83 
84  /*!
85  \brief Return the current selected band indexes.
86  \param bandsIndexes Current selected band indexes.
87  */
88  void getSelectedInBandIndexes( std::vector< unsigned int >& bandsIndexes ) const;
89 
90  /*!
91  \brief Returns the output raster no-data values.
92  \brief Returns the output raster no-data values.
93  */
94  std::vector< double > getOutNoDataValues() const;
95 
96  protected:
97 
98  bool getInRaster(
99  std::unique_ptr<te::da::DataSet>& inDataSet,
100  std::unique_ptr<te::rst::Raster >& inRasterPtr ) const;
101 
103 
104  protected slots:
105 
107 
109 
111 
112  };
113 
114  } // namespace widgets
115  } // namespace qt
116 } // namespace te
117 
118 #endif // TE_QT_WIDGETS_RASTERTRANSFORMWIZARDPAGE_H
This is the base class for layers.
Definition: AbstractLayer.h:78
te::map::AbstractLayer * getLayerPtr()
return the current layer pointer or null pointer.
unsigned int getInterpolator() const
Returns the interpolator type.
std::unique_ptr< Ui::RasterTransformWizardPageForm > m_uiPageForm
void setLayer(te::map::AbstractLayerPtr layer)
This method is used to set the selected layer for vectorization operation.
void getSelectedInBandIndexes(std::vector< unsigned int > &bandsIndexes) const
Return the current selected band indexes.
bool getInRaster(std::unique_ptr< te::da::DataSet > &inDataSet, std::unique_ptr< te::rst::Raster > &inRasterPtr) const
std::vector< double > getOutNoDataValues() const
Returns the output raster no-data values.
unsigned int getOutDataType() const
Returns the output raster data type.
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