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 "../../../plugin/Plugin.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 ShowValuesAction;
55  class SlopeAction;
56  class SmoothAction;
57  class TINGenerationAction;
58  class VolumeAction;
59  class ProfileAction;
60 
61  class Plugin : public QObject, public te::plugin::Plugin
62  {
63  Q_OBJECT
64 
65  public:
66 
67  Plugin(const te::plugin::PluginInfo& pluginInfo);
68 
69  ~Plugin();
70 
71  void startup();
72 
73  void shutdown();
74 
75  protected:
76 
77  /*!
78  \brief Function used to register all raster processing actions.
79 
80  */
81  void registerActions();
82 
83  /*!
84  \brief Function used to unregister all raster processing actions.
85 
86  */
87  void unRegisterActions();
88 
89  Q_SIGNALS:
90 
92 
93 
94  protected:
95 
96  QMenu* m_mntMenu; //!< MNT Main Menu registered.
97 
98  CreateIsolinesAction* m_ISOGeneration; //!< Isoline Generation Action
99  MNTGenerationAction* m_MNTGeneration; //!< GRID Generation Action
101  SlopeAction* m_Slope; //!< Slope Generation Action
102  SmoothAction* m_Smooth; //!< Smooth Isolines Action
103  TINGenerationAction* m_TINGeneration; //!< TIN Generation Action
106  };
107  } // end namespace mnt
108  } // end namespace plugins
109  } // end namespace qt
110 } // end namespace te
111 
113 
114 #endif //__TE_QT_PLUGINS_MNT_INTERNAL_PLUGIN_H
Configuration flags for the MNT Qt Widget plugin.
PLUGIN_CALL_BACK_DECLARATION(TEQTPLUGINADDRESSGEOCODINGEXPORT)
ShowValuesAction * m_ShowValue
Definition: Plugin.h:100
A base class for application events.
Definition: Event.h:59
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:105
void startup()
Do nothing! Just set plugin as started.
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:99
~Plugin()
Virtual destructor.
#define TEQTPLUGINMNTEXPORT
You can use this macro in order to export/import classes and functions from all plug-ins files...
Definition: Config.h:50
URI C++ Library.
A base class for plugin types.
Definition: Plugin.h:50
CreateIsolinesAction * m_ISOGeneration
Isoline Generation Action.
Definition: Plugin.h:98
QMenu * m_mntMenu
MNT Main Menu registered.
Definition: Plugin.h:96
SmoothAction * m_Smooth
Smooth Isolines Action.
Definition: Plugin.h:102
This class register the isolines generation action into MNT Plugin.
Definition: ProfileAction.h:47
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:47
This class register the slope action into MNT Plugin.
Definition: SlopeAction.h:47
TINGenerationAction * m_TINGeneration
TIN Generation Action.
Definition: Plugin.h:103
void registerActions()
Function used to register all raster processing actions.
The basic information about a plugin.
Definition: PluginInfo.h:61
VolumeAction * m_Volume
Definition: Plugin.h:104
This class register the show values action into MNT Plugin.
Plugin(const te::plugin::PluginInfo &pluginInfo)
void shutdown()
Do nothing! Just set plugin as stopped.
SlopeAction * m_Slope
Slope Generation Action.
Definition: Plugin.h:101