Classes | Public Member Functions | Private Attributes | List of all members
moveit_rviz_plugin::PluginlibFactory< Type > Class Template Reference

#include <pluginlib_factory.h>

Inheritance diagram for moveit_rviz_plugin::PluginlibFactory< Type >:
Inheritance graph
[legend]

Classes

struct  BuiltInClassRecord
 

Public Member Functions

template<class Derived >
void addBuiltInClass (const QString &name, const QString &description)
 
void addBuiltInClass (const QString &package, const QString &name, const QString &description, const std::function< Type *()> &factory_function)
 
QString getClassDescription (const QString &class_id) const override
 
QString getClassName (const QString &class_id) const override
 
QString getClassPackage (const QString &class_id) const override
 
QStringList getDeclaredClassIds () override
 
QIcon getIcon (const QString &class_id) const override
 
virtual QString getPluginManifestPath (const QString &class_id) const
 
virtual TypemakeRaw (const QString &class_id, QString *error_return=nullptr)
 Instantiate and return a instance of a subclass of Type using our pluginlib::ClassLoader. More...
 
QString mimeType () const
 retrieve mime type used for given factory More...
 
 PluginlibFactory (const QString &package, const QString &base_class_type)
 
 ~PluginlibFactory () override
 
- Public Member Functions inherited from rviz::Factory
virtual ~Factory ()
 

Private Attributes

QHash< QString, BuiltInClassRecordbuilt_ins_
 
pluginlib::ClassLoader< Type > * class_loader_
 
const QString mime_type_
 

Detailed Description

template<class Type>
class moveit_rviz_plugin::PluginlibFactory< Type >

Templated factory to create objects of a given pluginlib base class type. This is a slightly modified version of rviz::PluginlibFactory, providing a custom mime type.

Definition at line 94 of file pluginlib_factory.h.

Constructor & Destructor Documentation

◆ PluginlibFactory()

template<class Type >
moveit_rviz_plugin::PluginlibFactory< Type >::PluginlibFactory ( const QString &  package,
const QString &  base_class_type 
)
inline

Definition at line 140 of file pluginlib_factory.h.

◆ ~PluginlibFactory()

template<class Type >
moveit_rviz_plugin::PluginlibFactory< Type >::~PluginlibFactory ( )
inlineoverride

Definition at line 144 of file pluginlib_factory.h.

Member Function Documentation

◆ addBuiltInClass() [1/2]

template<class Type >
template<class Derived >
void moveit_rviz_plugin::PluginlibFactory< Type >::addBuiltInClass ( const QString &  name,
const QString &  description 
)
inline

Definition at line 218 of file pluginlib_factory.h.

◆ addBuiltInClass() [2/2]

template<class Type >
void moveit_rviz_plugin::PluginlibFactory< Type >::addBuiltInClass ( const QString &  package,
const QString &  name,
const QString &  description,
const std::function< Type *()> &  factory_function 
)
inline

Definition at line 207 of file pluginlib_factory.h.

◆ getClassDescription()

template<class Type >
QString moveit_rviz_plugin::PluginlibFactory< Type >::getClassDescription ( const QString &  class_id) const
inlineoverridevirtual

Implements rviz::Factory.

Definition at line 162 of file pluginlib_factory.h.

◆ getClassName()

template<class Type >
QString moveit_rviz_plugin::PluginlibFactory< Type >::getClassName ( const QString &  class_id) const
inlineoverridevirtual

Implements rviz::Factory.

Definition at line 170 of file pluginlib_factory.h.

◆ getClassPackage()

template<class Type >
QString moveit_rviz_plugin::PluginlibFactory< Type >::getClassPackage ( const QString &  class_id) const
inlineoverridevirtual

Implements rviz::Factory.

Definition at line 178 of file pluginlib_factory.h.

◆ getDeclaredClassIds()

template<class Type >
QStringList moveit_rviz_plugin::PluginlibFactory< Type >::getDeclaredClassIds ( )
inlineoverridevirtual

Implements rviz::Factory.

Definition at line 149 of file pluginlib_factory.h.

◆ getIcon()

template<class Type >
QIcon moveit_rviz_plugin::PluginlibFactory< Type >::getIcon ( const QString &  class_id) const
inlineoverridevirtual

Implements rviz::Factory.

Definition at line 194 of file pluginlib_factory.h.

◆ getPluginManifestPath()

template<class Type >
virtual QString moveit_rviz_plugin::PluginlibFactory< Type >::getPluginManifestPath ( const QString &  class_id) const
inlinevirtual

Definition at line 186 of file pluginlib_factory.h.

◆ makeRaw()

template<class Type >
virtual Type* moveit_rviz_plugin::PluginlibFactory< Type >::makeRaw ( const QString &  class_id,
QString *  error_return = nullptr 
)
inlinevirtual

Instantiate and return a instance of a subclass of Type using our pluginlib::ClassLoader.

Parameters
class_idA string identifying the class uniquely among classes of its parent class. rviz::GridDisplay might be rviz/Grid, for example.
error_returnIf non-NULL and there is an error, *error_return is set to a description of the problem.
Returns
A new instance of the class identified by class_id, or NULL if there was an error.

If makeRaw() returns NULL and error_return is not NULL, *error_return will be set. On success, *error_return will not be changed.

Definition at line 232 of file pluginlib_factory.h.

◆ mimeType()

template<class Type >
QString moveit_rviz_plugin::PluginlibFactory< Type >::mimeType ( ) const
inline

retrieve mime type used for given factory

Definition at line 147 of file pluginlib_factory.h.

Member Data Documentation

◆ built_ins_

template<class Type >
QHash<QString, BuiltInClassRecord> moveit_rviz_plugin::PluginlibFactory< Type >::built_ins_
private

Definition at line 256 of file pluginlib_factory.h.

◆ class_loader_

template<class Type >
pluginlib::ClassLoader<Type>* moveit_rviz_plugin::PluginlibFactory< Type >::class_loader_
private

Definition at line 255 of file pluginlib_factory.h.

◆ mime_type_

template<class Type >
const QString moveit_rviz_plugin::PluginlibFactory< Type >::mime_type_
private

Definition at line 254 of file pluginlib_factory.h.


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


visualization
Author(s): Robert Haschke
autogenerated on Sat May 3 2025 02:40:38