Overview     Modules     Class Hierarchy     Classes     Members  

A class for algorithm plug-ins The factory the registers itself in the Tulip plug-in system (through the static initFactory() method when the library is loaded.. The actual registration is delegated to a TemplateFactory for code factorization. More...

#include <Algorithm.h>

Inheritance diagram for tlp::AlgorithmPlugin:
Collaboration diagram for tlp::AlgorithmPlugin:

Public Member Functions

virtual ~AlgorithmPlugin ()
virtual AlgorithmcreatePluginObject (const AlgorithmContext &context)=0
 Creates a new Algorithm object.
virtual std::string getTulipRelease () const
 The version of Tulip this plug-in was built with. Tulip versions are X.Y.Z, X eing the major, Y the minor, and Z the patch.
virtual std::string getMajor () const
 Only the major of the plug-in version. A version should be X.Y, X being the major.
virtual std::string getMinor () const
 Only the minor of the plug-in version. A version should be X.Y, Y being the major.
virtual std::string getTulipMajor () const
virtual std::string getTulipMinor () const
virtual std::string getClassName () const =0
virtual std::string getName () const =0
 Returns the name of the plug-in, as registered in the Tulip plug-in system. This name must be unique, and if multiple plug-ins have the same name, only the latest encountered will be considered.
virtual std::string getGroup () const =0
 Returns the name of the group this plug-in belongs to. Groups and sub-groups are separated by two colons. e.g. trees::planar trees.
virtual std::string getAuthor () const =0
 The name of the author of this plug-in.
virtual std::string getDate () const =0
 The creation date of the plug-in. This date is in a free format, but most Tulip plug-ins use a DD/MM/YYYY.
virtual std::string getInfo () const =0
 Informations about the plug-in, from the plug-in author. These informations can contains anything, and the developer is completely free to put anything here. Most plug-ins by the Tulip team use an html format to generate help from these informations.
virtual std::string getRelease () const =0
 The release version of the plug-in, including major and minor. The version should be X.Y, X being the major, and Y the minor.
- Public Member Functions inherited from tlp::PluginInfoInterface
virtual ~PluginInfoInterface ()

Static Public Member Functions

static void initFactory (bool initing=false)
 This static initialization is called when the plug-in library is loaded, and registers the new plug-in in the Tulip plug-in system.

Static Public Attributes

static TLP_SCOPE
TemplateFactory
< AlgorithmPlugin, Algorithm,
AlgorithmContext > * 
factory
 A static factory that is initialized when the library is loaded.

Detailed Description

A class for algorithm plug-ins The factory the registers itself in the Tulip plug-in system (through the static initFactory() method when the library is loaded.. The actual registration is delegated to a TemplateFactory for code factorization.

Constructor & Destructor Documentation

virtual tlp::AlgorithmPlugin::~AlgorithmPlugin ( )
inlinevirtual

Member Function Documentation

virtual Algorithm* tlp::AlgorithmPlugin::createPluginObject ( const AlgorithmContext context)
pure virtual

Creates a new Algorithm object.

Returns
Algorithm A newly created algorithm plug-in.
virtual std::string tlp::AlgorithmPlugin::getAuthor ( ) const
pure virtual

The name of the author of this plug-in.

Returns
the name of the author.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getClassName ( ) const
pure virtual
virtual std::string tlp::AlgorithmPlugin::getDate ( ) const
pure virtual

The creation date of the plug-in. This date is in a free format, but most Tulip plug-ins use a DD/MM/YYYY.

Returns
the creation date.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getGroup ( ) const
pure virtual

Returns the name of the group this plug-in belongs to. Groups and sub-groups are separated by two colons. e.g. trees::planar trees.

Returns
the group name of this plug-in.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getInfo ( ) const
pure virtual

Informations about the plug-in, from the plug-in author. These informations can contains anything, and the developer is completely free to put anything here. Most plug-ins by the Tulip team use an html format to generate help from these informations.

Returns
string The informations associated with this plug-in.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getMajor ( ) const
inlinevirtual

Only the major of the plug-in version. A version should be X.Y, X being the major.

Returns
The major part of the plug-in version.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getMinor ( ) const
inlinevirtual

Only the minor of the plug-in version. A version should be X.Y, Y being the major.

Returns
The minor part of the plug-in version.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getName ( ) const
pure virtual

Returns the name of the plug-in, as registered in the Tulip plug-in system. This name must be unique, and if multiple plug-ins have the same name, only the latest encountered will be considered.

Returns
string the name of the plug-in.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getRelease ( ) const
pure virtual

The release version of the plug-in, including major and minor. The version should be X.Y, X being the major, and Y the minor.

Returns
string The release version.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getTulipMajor ( ) const
inlinevirtual
Returns
The major Tulip version the plug-in was built with.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getTulipMinor ( ) const
inlinevirtual
Returns
Return the minor Tulip version this plug-in was built with.

Implements tlp::PluginInfoInterface.

virtual std::string tlp::AlgorithmPlugin::getTulipRelease ( ) const
inlinevirtual

The version of Tulip this plug-in was built with. Tulip versions are X.Y.Z, X eing the major, Y the minor, and Z the patch.

Returns
The Tulip version the plug-in was built with.

Implements tlp::PluginInfoInterface.

static void tlp::AlgorithmPlugin::initFactory ( bool  initing = false)
inlinestatic

This static initialization is called when the plug-in library is loaded, and registers the new plug-in in the Tulip plug-in system.

Member Data Documentation

TLP_SCOPE TemplateFactory<AlgorithmPlugin, Algorithm, AlgorithmContext >* tlp::AlgorithmPlugin::factory
static

A static factory that is initialized when the library is loaded.



Tulip Software by LaBRI Visualization Team    2001 - 2012