All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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/rp/Plugin.h
22 
23  \brief Plugin implementation for the RP Qt Plugin widget.
24 */
25 
26 #ifndef __TE_QT_PLUGINS_RP_INTERNAL_PLUGIN_H
27 #define __TE_QT_PLUGINS_RP_INTERNAL_PLUGIN_H
28 
29 // TerraLib
30 #include "../../../plugin/Plugin.h"
31 #include "Config.h"
32 
33 // Qt
34 #include <QAction>
35 #include <QMenu>
36 
37 namespace te
38 {
39  namespace qt
40  {
41  namespace plugins
42  {
43  namespace rp
44  {
45  class ArithmeticOpAction;
46  class ClassifierAction;
47  class ClippingAction;
48  class ColorTransformAction;
49  class ComposeBandsAction;
50  class ContrastAction;
51  class FilterAction;
52  class FusionAction;
53  class MixtureModelAction;
54  class MosaicAction;
55  class SegmenterAction;
56  class RegisterAction;
57  class VectorizationAction;
58 
59  class Plugin : public te::plugin::Plugin
60  {
61  public:
62 
63  Plugin(const te::plugin::PluginInfo& pluginInfo);
64 
65  ~Plugin();
66 
67  void startup();
68 
69  void shutdown();
70 
71  protected:
72 
73  /*!
74  \brief Function used to register all raster processing actions.
75 
76  */
77  void registerActions();
78 
79  /*!
80  \brief Function used to unregister all raster processing actions.
81 
82  */
83  void unRegisterActions();
84 
85  protected:
86 
87  QMenu* m_rpMenu; //!< RP Main Menu registered.
88  QMenu* m_rpPopupMenu; //!< RP Main Menu registered.
89  QAction* m_popupAction; //!< RP pop up action registered.
90 
91  te::qt::plugins::rp::ArithmeticOpAction* m_arithmeticOp; //!< Arithmetic Operation Process Action
92  te::qt::plugins::rp::ClassifierAction* m_classifier; //!< Classifier Process Action
93  te::qt::plugins::rp::ClippingAction* m_clipping; //!< Clipping Process Action
94  te::qt::plugins::rp::ColorTransformAction* m_colorTrans; //!< Color Transform Process Action
95  te::qt::plugins::rp::ComposeBandsAction* m_composeBands; //!< Compose Bands Process Action
96  te::qt::plugins::rp::ContrastAction* m_contrast; //!< Contrast Process Action
97  te::qt::plugins::rp::FilterAction* m_filter; //!< Filter Process Action
98  te::qt::plugins::rp::FusionAction* m_fusion; //!< Fusion Process Action
99  te::qt::plugins::rp::MixtureModelAction* m_mixtureModel; //!< Mixture Model Process Action
100  te::qt::plugins::rp::MosaicAction* m_mosaic; //!< Mosaic Process Action
101  te::qt::plugins::rp::SegmenterAction* m_segmenter; //!< Segmenter Process Action
102  te::qt::plugins::rp::RegisterAction* m_register; //!< Register Process Action
103  te::qt::plugins::rp::VectorizationAction* m_vector; //!< Vectorization Process Action
104  };
105 
106  } // end namespace rp
107  } // end namespace plugins
108  } // end namespace qt
109 } // end namespace te
110 
112 
113 #endif //__TE_QT_PLUGINS_RP_INTERNAL_PLUGIN_H
This class register the arithmeticOp action into RP Plugin.
void unRegisterActions()
Function used to unregister all raster processing actions.
Definition: Plugin.cpp:228
PLUGIN_CALL_BACK_DECLARATION(TEQTPLUGINADDRESSGEOCODINGEXPORT)
QMenu * m_rpMenu
RP Main Menu registered.
Definition: Plugin.h:87
void startup()
Do nothing! Just set plugin as started.
Definition: Plugin.cpp:101
This class register the Segmenter action into RP Plugin.
te::qt::plugins::rp::VectorizationAction * m_vector
Vectorization Process Action.
Definition: Plugin.h:103
Configuration flags for the RP Qt Widget plugin.
This class register the register action into RP Plugin.
te::qt::plugins::rp::ContrastAction * m_contrast
Contrast Process Action.
Definition: Plugin.h:96
This class register the contrast action into RP Plugin.
te::qt::plugins::rp::FilterAction * m_filter
Filter Process Action.
Definition: Plugin.h:97
te::qt::plugins::rp::ClippingAction * m_clipping
Clipping Process Action.
Definition: Plugin.h:93
te::qt::plugins::rp::ColorTransformAction * m_colorTrans
Color Transform Process Action.
Definition: Plugin.h:94
QAction * m_popupAction
RP pop up action registered.
Definition: Plugin.h:89
te::qt::plugins::rp::FusionAction * m_fusion
Fusion Process Action.
Definition: Plugin.h:98
te::qt::plugins::rp::ClassifierAction * m_classifier
Classifier Process Action.
Definition: Plugin.h:92
QMenu * m_rpPopupMenu
RP Main Menu registered.
Definition: Plugin.h:88
This class register the classifier action into RP Plugin.
te::qt::plugins::rp::RegisterAction * m_register
Register Process Action.
Definition: Plugin.h:102
This class register the mixture model action into RP Plugin.
Plugin(const te::plugin::PluginInfo &pluginInfo)
Definition: Plugin.cpp:92
A base class for plugin types.
Definition: Plugin.h:50
~Plugin()
Virtual destructor.
Definition: Plugin.cpp:97
This class register the compose bands action into RP Plugin.
This class register the fusion action into RP Plugin.
Definition: FusionAction.h:47
This class register the mosaic action into RP Plugin.
Definition: MosaicAction.h:47
te::qt::plugins::rp::ArithmeticOpAction * m_arithmeticOp
Arithmetic Operation Process Action.
Definition: Plugin.h:91
This class register the Clipping action into RP Plugin.
#define TEQTPLUGINRPEXPORT
You can use this macro in order to export/import classes and functions from all plug-ins files...
Definition: Config.h:148
te::qt::plugins::rp::MixtureModelAction * m_mixtureModel
Mixture Model Process Action.
Definition: Plugin.h:99
This class register the filter action into RP Plugin.
Definition: FilterAction.h:47
te::qt::plugins::rp::ComposeBandsAction * m_composeBands
Compose Bands Process Action.
Definition: Plugin.h:95
This class register the colorTransform action into RP Plugin.
te::qt::plugins::rp::SegmenterAction * m_segmenter
Segmenter Process Action.
Definition: Plugin.h:101
The basic information about a plugin.
Definition: PluginInfo.h:61
void registerActions()
Function used to register all raster processing actions.
Definition: Plugin.cpp:160
void shutdown()
Do nothing! Just set plugin as stopped.
Definition: Plugin.cpp:140
te::qt::plugins::rp::MosaicAction * m_mosaic
Mosaic Process Action.
Definition: Plugin.h:100