te::plugin::AbstractPlugin Class Referenceabstract

An abstract class for TerraLib Plugins. More...

#include <AbstractPlugin.h>

Inheritance diagram for te::plugin::AbstractPlugin:
te::plugin::CppPluginProxy te::plugin::Plugin te::ado::Module te::gdal::Module te::ogr::Module te::pgis::Module te::plugin::CppPlugin te::qt::plugins::addressgeocoding::Plugin te::qt::plugins::ado::Plugin te::qt::plugins::attributefill::Plugin te::qt::plugins::cellspace::Plugin te::qt::plugins::edit::Plugin te::qt::plugins::gdal::Plugin te::qt::plugins::geofile::Plugin te::qt::plugins::mnt::Plugin te::qt::plugins::mysql::Plugin te::qt::plugins::ogr::Plugin te::qt::plugins::pgis::Plugin te::qt::plugins::rp::Plugin te::qt::plugins::sa::Plugin te::qt::plugins::sqlite::Plugin te::qt::plugins::st::Plugin te::qt::plugins::terralib4::Plugin te::qt::plugins::terramobile::Plugin te::qt::plugins::vp::Plugin te::qt::plugins::wcs::Plugin te::qt::plugins::wfs::Plugin te::qt::plugins::wms::Plugin te::sqlite::Module te::wcs::Module te::wfs::Module te::wms::Module terralib4::Module

Public Member Functions

 AbstractPlugin ()
 Constructor. More...
 
virtual const PluginInfogetInfo () 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...
 

Detailed Description

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!

See also
Plugin, PluginManager, PluginInfo, PluginEngine

Definition at line 65 of file AbstractPlugin.h.

Constructor & Destructor Documentation

te::plugin::AbstractPlugin::AbstractPlugin ( )

Constructor.

virtual te::plugin::AbstractPlugin::~AbstractPlugin ( )
virtual

Virtual destructor.

Member Function Documentation

virtual const PluginInfo& te::plugin::AbstractPlugin::getInfo ( ) const
pure virtual

It return the information associated to the plugin.

Returns
The information associated to the plugin.

Implemented in te::plugin::CppPluginProxy, and te::plugin::Plugin.

virtual bool te::plugin::AbstractPlugin::isStarted ( ) const
pure virtual

It tells if the plugin was started or not.

Returns
True if the plugin is started and false otherwise (it is shutdown).

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.

Parameters
rhsThe right-hand-side plugin.
Returns
True if this plugin name is lexcographical less than the rhs plugin name.

The documentation for this class was generated from the following file: