Computer Assited Medical Intervention Tool Kit  version 4.1
Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
camitk::ActionExtension Class Referenceabstract

This class describes what is a generic Action extension. More...

#include <ActionExtension.h>

Inherits QObject.

Inherited by ApplicationActionExtension, ArbitrarySliceExtension, BasicMeshExtension, BasicTopologyExtension, BoxVOIExtension, FrameEditionExtension, ImageAcquisitionActionExtension, ImageLutExtension, ITKFiltersExtension, ITKSegmentationExtension, MeshProcessingExtension, MMLActionExtension, MultiPickingExtension, PixelColorChangerExtension, PMLActionExtension, ReconstructionExtension, ReorientImageExtension, ResampleExtension, ShowIn3DExtension, and VolumeRenderingExtension.

Public Member Functions

const ActionListgetActions ()
 get the list of actions registered y this extension More...
 
virtual QString getDescription ()=0
 returns the action extension small description (to be overriden in your ActionExtension) More...
 
QString getLocation () const
 get the file path (location of the .dll/.so/.dylib) of this plugin More...
 
virtual QString getName ()=0
 returns the action extension name (to be overriden in your ActionExtension) More...
 
virtual void init ()=0
 this method should just call registerNewAction(MyAction) for any MyAction class you need to register by this extension More...
 
void initResources ()
 Load, for the selected langage (asked to the Application), the associated .qm file. More...
 
void setLocation (const QString loc)
 set the file path (once loaded as a dynamic library) More...
 
 ~ActionExtension () override
 destructor More...
 

Protected Member Functions

 ActionExtension ()
 constructor More...
 
void registerAction (Action *)
 register an action instance More...
 

Protected Attributes

ActionList actions
 the list of actions More...
 

Private Attributes

QString dynamicLibraryFileName
 the shared lib (.so, .dll or .dylib) used to instanciate the ComponentExtension subclass instance More...
 
QTranslator * translator {nullptr}
 Provide internationalization support for text output. More...
 

Detailed Description

This class describes what is a generic Action extension.

To add a ActionExtension to CamiTK core, write a new class that inherits from this class.

The following methods HAVE to be redefined in your subclass:

See also
BasicMeshExtension For an example of an extension registering more than one actions

Constructor & Destructor Documentation

◆ ActionExtension()

camitk::ActionExtension::ActionExtension ( )
inlineprotected

constructor

◆ ~ActionExtension()

camitk::ActionExtension::~ActionExtension ( )
override

destructor

References actions, camitk::Action::getName(), and translator.

Member Function Documentation

◆ getActions()

const camitk::ActionList & camitk::ActionExtension::getActions ( )

◆ getDescription()

virtual QString camitk::ActionExtension::getDescription ( )
pure virtual

◆ getLocation()

QString camitk::ActionExtension::getLocation ( ) const
inline

get the file path (location of the .dll/.so/.dylib) of this plugin

Referenced by camitk::Core::getConfig(), initResources(), and camitk::SettingsDialog::updateActionExtensionList().

◆ getName()

virtual QString camitk::ActionExtension::getName ( )
pure virtual

◆ init()

virtual void camitk::ActionExtension::init ( )
pure virtual

◆ initResources()

void camitk::ActionExtension::initResources ( )

Load, for the selected langage (asked to the Application), the associated .qm file.

References CAMITK_INFO, getLocation(), camitk::Application::getSelectedLanguage(), and translator.

Referenced by camitk::ExtensionManager::loadExtension().

◆ registerAction()

void camitk::ActionExtension::registerAction ( Action action)
protected

register an action instance

References actions.

◆ setLocation()

void camitk::ActionExtension::setLocation ( const QString  loc)
inline

set the file path (once loaded as a dynamic library)

Referenced by camitk::ExtensionManager::loadExtension().

Member Data Documentation

◆ actions

ActionList camitk::ActionExtension::actions
protected

the list of actions

Referenced by getActions(), registerAction(), and ~ActionExtension().

◆ dynamicLibraryFileName

QString camitk::ActionExtension::dynamicLibraryFileName
private

the shared lib (.so, .dll or .dylib) used to instanciate the ComponentExtension subclass instance

◆ translator

QTranslator* camitk::ActionExtension::translator {nullptr}
private

Provide internationalization support for text output.

Referenced by initResources(), and ~ActionExtension().


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