An abstract class for TerraLib Plugins. More...
#include <AbstractPlugin.h>
Public Member Functions | |
AbstractPlugin () | |
Constructor. More... | |
virtual const PluginInfo & | getInfo () const =0 |
It return the information associated to the plugin. More... | |
virtual bool | isStarted () const =0 |
It tells if the plugin was started or not. More... | |
bool | operator< (const AbstractPlugin &rhs) const |
This overloaded operator can be used to index the plugin in a set. More... | |
virtual void | shutdown ()=0 |
This method will be called by TerraLib to shutdown plugin's functionality. More... | |
virtual void | startup ()=0 |
This method will be called by TerraLib to startup some plugin's functionality. More... | |
virtual | ~AbstractPlugin () |
Virtual destructor. More... | |
An abstract class for TerraLib Plugins.
A plugin (also called plug-in, addin, add-in, addon, add-on, snap-in, extension or suplement) is a computer program that interacts with a host application like TerraView adding new capabilities/functionalities to it.
For more information on plugin definitions, please, see Wikipedia at http://en.wikipedia.org/wiki/Plug-in_%28computing%29.
In TerraLib, the easy way to create a plugin for TerraView is to use the Plugin class interface. This is the same interface for C++, PHP, Lua and other languages plugins.
Note that in TerraLib any plugin may have access to all other system parts. You can put no restrictions on it, so you can easily use all TerraLib/TerraView API without worry about doing trickies!
Definition at line 65 of file AbstractPlugin.h.
te::plugin::AbstractPlugin::AbstractPlugin | ( | ) |
Constructor.
|
virtual |
Virtual destructor.
|
pure virtual |
It return the information associated to the plugin.
Implemented in te::plugin::CppPluginProxy, and te::plugin::Plugin.
|
pure virtual |
It tells if the plugin was started or not.
Implemented in te::plugin::CppPluginProxy, and te::plugin::Plugin.
bool te::plugin::AbstractPlugin::operator< | ( | const AbstractPlugin & | rhs | ) | const |
This overloaded operator can be used to index the plugin in a set.
rhs | The right-hand-side plugin. |
|
pure virtual |
This method will be called by TerraLib to shutdown plugin's functionality.
Exception | It throws and exception if the plugin can not be shutdown. |
Implemented in te::ogr::Module, te::grib::Platform, te::qt::plugins::rp::Plugin, te::ado::Module, te::plugin::CppPluginProxy, terralib4::Module, te::gdal::Module, te::qt::plugins::sa::Plugin, te::wcs::Module, te::wfs::Module, te::wms::Module, te::qt::plugins::vp::Plugin, te::pgis::Module, te::qt::plugins::mnt::Plugin, te::qt::plugins::edit::Plugin, te::qt::plugins::terramobile::Plugin, te::qt::plugins::st::Plugin, te::qt::plugins::attributefill::Plugin, te::qt::plugins::wms::Plugin, te::xerces::Module, te::qt::plugins::addressgeocoding::Plugin, te::qt::plugins::gdal::Plugin, te::qt::plugins::cellspace::Plugin, te::qt::plugins::ogr::Plugin, te::qt::plugins::terralib4::Plugin, te::qt::plugins::wfs::Plugin, te::plugin::Plugin, te::qt::plugins::ado::Plugin, te::qt::plugins::geofile::Plugin, te::qt::plugins::mysql::Plugin, te::qt::plugins::pgis::Plugin, te::qt::plugins::sqlite::Plugin, te::qt::plugins::wcs::Plugin, and te::sqlite::Module.
|
pure virtual |
This method will be called by TerraLib to startup some plugin's functionality.
Exception | It throws and exception if the plugin can not be started. |
Implemented in te::qt::plugins::rp::Plugin, te::ogr::Module, te::plugin::CppPluginProxy, te::qt::plugins::sa::Plugin, te::grib::Platform, te::qt::plugins::vp::Plugin, te::ado::Module, te::qt::plugins::mnt::Plugin, te::qt::plugins::edit::Plugin, te::qt::plugins::terramobile::Plugin, terralib4::Module, te::gdal::Module, te::qt::plugins::st::Plugin, te::wcs::Module, te::wfs::Module, te::wms::Module, te::pgis::Module, te::qt::plugins::attributefill::Plugin, te::qt::plugins::wms::Plugin, te::qt::plugins::addressgeocoding::Plugin, te::qt::plugins::gdal::Plugin, te::qt::plugins::cellspace::Plugin, te::qt::plugins::ogr::Plugin, te::qt::plugins::terralib4::Plugin, te::qt::plugins::wfs::Plugin, te::xerces::Module, te::plugin::Plugin, te::qt::plugins::ado::Plugin, te::qt::plugins::geofile::Plugin, te::qt::plugins::mysql::Plugin, te::qt::plugins::pgis::Plugin, te::qt::plugins::sqlite::Plugin, te::qt::plugins::wcs::Plugin, and te::sqlite::Module.