Plugin.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/plugins/mnt/Plugin.h
22 
23  \brief Plugin implementation for the MNT Qt Plugin widget.
24 */
25 
26 #ifndef __TE_QT_PLUGINS_MNT_INTERNAL_PLUGIN_H
27 #define __TE_QT_PLUGINS_MNT_INTERNAL_PLUGIN_H
28 
29 // TerraLib
30 #include "../../../core/plugin/CppPlugin.h"
31 #include "Config.h"
32 
33 // Qt
34 #include <QMenu>
35 
36 namespace te
37 {
38  namespace qt
39  {
40  namespace af
41  {
42  namespace evt
43  {
44  struct Event;
45  }
46  }
47 
48  namespace plugins
49  {
50  namespace mnt
51  {
52  class CreateIsolinesAction;
53  class MNTGenerationAction;
54  class ImageGenerationAction;
55  class ShowValuesAction;
56  class SlopeAction;
57  class SmoothAction;
58  class TINGenerationAction;
59  class VolumeAction;
60  class ProfileAction;
61 
62  class Plugin : public QObject, public te::core::CppPlugin
63  {
64  Q_OBJECT
65 
66  public:
67 
68  Plugin(const te::core::PluginInfo& pluginInfo);
69 
70  ~Plugin();
71 
72  void startup();
73 
74  void shutdown();
75 
76  protected:
77 
78  /*!
79  \brief Function used to register all raster processing actions.
80 
81  */
82  void registerActions();
83 
84  /*!
85  \brief Function used to unregister all raster processing actions.
86 
87  */
88  void unRegisterActions();
89 
90  Q_SIGNALS:
91 
93 
94 
95  protected:
96 
97  QMenu* m_mntMenu; //!< MNT Main Menu registered.
98 
99  CreateIsolinesAction* m_ISOGeneration; //!< Isoline Generation Action
100  MNTGenerationAction* m_MNTGeneration; //!< GRID Generation Action
101  ImageGenerationAction* m_ImageGeneration; //!< Image Generation Action
103  SlopeAction* m_Slope; //!< Slope Generation Action
104  SmoothAction* m_Smooth; //!< Smooth Isolines Action
105  TINGenerationAction* m_TINGeneration; //!< TIN Generation Action
108  };
109  } // end namespace mnt
110  } // end namespace plugins
111  } // end namespace qt
112 } // end namespace te
113 
114 #endif //__TE_QT_PLUGINS_MNT_INTERNAL_PLUGIN_H
Configuration flags for the MNT Qt Widget plugin.
ShowValuesAction * m_ShowValue
Definition: Plugin.h:102
A base class for application events.
Definition: Event.h:59
Basic information about a plugin.
Definition: PluginInfo.h:63
void triggered(te::qt::af::evt::Event *e)
This class register the smooth action into MNT Plugin.
Definition: SmoothAction.h:47
ProfileAction * m_Profile
Definition: Plugin.h:107
void startup()
This method will be called by applications to startup some plugin's functionality.
This class register the regular grid generation action into MNT Plugin.
void unRegisterActions()
Function used to unregister all raster processing actions.
MNTGenerationAction * m_MNTGeneration
GRID Generation Action.
Definition: Plugin.h:100
ImageGenerationAction * m_ImageGeneration
Image Generation Action.
Definition: Plugin.h:101
The base class for C++ plugins.
Definition: CppPlugin.h:46
URI C++ Library.
Plugin(const te::core::PluginInfo &pluginInfo)
CreateIsolinesAction * m_ISOGeneration
Isoline Generation Action.
Definition: Plugin.h:99
QMenu * m_mntMenu
MNT Main Menu registered.
Definition: Plugin.h:97
SmoothAction * m_Smooth
Smooth Isolines Action.
Definition: Plugin.h:104
This class register the isolines generation action into MNT Plugin.
Definition: ProfileAction.h:52
This class register the isolines generation action into MNT Plugin.
This class register the Triangular Grid generation action into MNT Plugin.
This class register the calculate volume action into MNT Plugin.
Definition: VolumeAction.h:51
This class register the slope action into MNT Plugin.
Definition: SlopeAction.h:47
TINGenerationAction * m_TINGeneration
TIN Generation Action.
Definition: Plugin.h:105
void registerActions()
Function used to register all raster processing actions.
This class register the image generation action into MNT Plugin.
VolumeAction * m_Volume
Definition: Plugin.h:106
This class register the show values action into MNT Plugin.
void shutdown()
This method will be called by applicatons to shutdown plugin's functionality.
SlopeAction * m_Slope
Slope Generation Action.
Definition: Plugin.h:103