ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ccStdPluginInterface Class Referenceabstract

Standard ECV plugin interface. More...

#include <ecvStdPluginInterface.h>

Inheritance diagram for ccStdPluginInterface:
Collaboration diagram for ccStdPluginInterface:

Public Member Functions

 ccStdPluginInterface (const QString &resourcePath=QString())
 Default constructor. More...
 
virtual ~ccStdPluginInterface () override=default
 Destructor. More...
 
virtual CC_PLUGIN_TYPE getType () const override
 Returns plugin type (standard or OpenGL filter) More...
 
virtual void setMainAppInterface (ecvMainAppInterface *app)
 Sets application entry point. More...
 
virtual ecvMainAppInterfacegetMainAppInterface ()
 A callback pointer to the main app interface for use by plugins. More...
 
virtual QList< QAction * > getActions ()=0
 Get a list of actions for this plugin. More...
 
virtual void onNewSelection (const ccHObject::Container &selectedEntities)
 
virtual void dispToConsole (QString message, ecvMainAppInterface::ConsoleMessageLevel level=ecvMainAppInterface::STD_CONSOLE_MESSAGE)
 Shortcut to ecvMainAppInterface::dispToConsole. More...
 
- Public Member Functions inherited from ccDefaultPluginInterface
virtual ~ccDefaultPluginInterface ()
 
virtual bool isCore () const override
 Is this plugin a core plugin? More...
 
virtual QString getName () const override
 Returns (short) name (for menu entry, etc.) More...
 
virtual QString getDescription () const override
 Returns long name/description (for tooltip, etc.) More...
 
virtual QIcon getIcon () const override
 Returns icon. More...
 
virtual ReferenceList getReferences () const override
 
virtual ContactList getAuthors () const override
 
virtual ContactList getMaintainers () const override
 
- Public Member Functions inherited from ccPluginInterface
virtual ~ccPluginInterface ()=default
 Virtual destructor. More...
 
virtual bool start ()
 Starts the plugin. More...
 
virtual void stop ()
 Stops the plugin. More...
 
virtual ccExternalFactorygetCustomObjectsFactory () const
 Returns the plugin's custom object factory (if any) More...
 
virtual void registerCommands (ccCommandLineInterface *cmd)
 Optional: registers commands (for the command line mode) More...
 

Protected Attributes

ecvMainAppInterfacem_app
 Main application interface. More...
 

Additional Inherited Members

- Public Types inherited from ccPluginInterface
typedef QList< ContactContactList
 
using ReferenceList = QList< Reference >
 
- Protected Member Functions inherited from ccDefaultPluginInterface
 ccDefaultPluginInterface (const QString &resourcePath=QString())
 

Detailed Description

Standard ECV plugin interface.

Version 1.5 The plugin is now responsible for its own actions (QAction ;) and the associated ecvMainAppInterface member should give it access to everything it needs in the main application.

Definition at line 31 of file ecvStdPluginInterface.h.

Constructor & Destructor Documentation

◆ ccStdPluginInterface()

ccStdPluginInterface::ccStdPluginInterface ( const QString &  resourcePath = QString())
inline

Default constructor.

Definition at line 34 of file ecvStdPluginInterface.h.

◆ ~ccStdPluginInterface()

virtual ccStdPluginInterface::~ccStdPluginInterface ( )
overridevirtualdefault

Destructor.

Member Function Documentation

◆ dispToConsole()

virtual void ccStdPluginInterface::dispToConsole ( QString  message,
ecvMainAppInterface::ConsoleMessageLevel  level = ecvMainAppInterface::STD_CONSOLE_MESSAGE 
)
inlinevirtual

◆ getActions()

virtual QList<QAction*> ccStdPluginInterface::getActions ( )
pure virtual

Get a list of actions for this plugin.

Implemented in qSRA, PythonPlugin, qPCV, qMPlane, qCSF, and q3DMASCPlugin.

◆ getMainAppInterface()

virtual ecvMainAppInterface* ccStdPluginInterface::getMainAppInterface ( )
inlinevirtual

A callback pointer to the main app interface for use by plugins.

Any plugin (and its tools) may need to access methods of this interface

Definition at line 59 of file ecvStdPluginInterface.h.

References m_app.

◆ getType()

virtual CC_PLUGIN_TYPE ccStdPluginInterface::getType ( ) const
inlineoverridevirtual

Returns plugin type (standard or OpenGL filter)

Implements ccPluginInterface.

Definition at line 41 of file ecvStdPluginInterface.h.

References ECV_STD_PLUGIN.

◆ onNewSelection()

virtual void ccStdPluginInterface::onNewSelection ( const ccHObject::Container selectedEntities)
inlinevirtual

This method is called by the main application whenever the entity selection changes Does nothing by default. Should be re-implemented by the plugin if necessary.

Parameters
selectedEntitiescurrently selected entities

Reimplemented in qSRA, qPCV, qMPlane, qCSF, and q3DMASCPlugin.

Definition at line 69 of file ecvStdPluginInterface.h.

Referenced by ccPluginUIManager::handleSelectionChanged().

◆ setMainAppInterface()

virtual void ccStdPluginInterface::setMainAppInterface ( ecvMainAppInterface app)
inlinevirtual

Sets application entry point.

Called just after plugin creation by qCC

Reimplemented in PythonPlugin.

Definition at line 46 of file ecvStdPluginInterface.h.

References ecvMainAppInterface::getUniqueIDGenerator(), m_app, and ccObject::SetUniqueIDGenerator().

Referenced by ccPluginUIManager::init(), and PythonPlugin::setMainAppInterface().

Member Data Documentation

◆ m_app

ecvMainAppInterface* ccStdPluginInterface::m_app
protected

Main application interface.

Definition at line 85 of file ecvStdPluginInterface.h.

Referenced by ccCompass::addGeoObject(), qFacets::classifyFacetsByAngle(), ccCompass::cleanupBeforeToolChange(), qSRA::computeCloud2ProfileRadialDist(), ccCompass::convertToPointCloud(), qFacets::createFacets(), dispToConsole(), ccCompass::distributeSelection(), qCloudLayers::doAction(), ccCompass::doAction(), qCork::doAction(), qCSF::doAction(), qHoughNormals::doAction(), qMPlane::doAction(), qPCV::doAction(), qPoissonRecon::doAction(), qRansacSD::doAction(), qTreeIso::doAction(), q3DMASCPlugin::doClassifyAction(), qCanupoPlugin::doClassifyAction(), qSRA::doComputeRadialDists(), qSRA::doProjectCloudDistsInGrid(), q3DMASCPlugin::doTrainAction(), qCanupoPlugin::doTrainAction(), ccCompass::enableMapMode(), ccCompass::enableMeasureMode(), ccCompass::estimateP21(), ccCompass::estimateStrain(), ccCompass::estimateStructureNormals(), JsonRPCPlugin::execute(), qFacets::exportFacets(), qFacets::exportFacetsInfo(), ccCompass::exportToSVG(), qFacets::extractFacets(), qTreeIso::final_segs(), ccCompass::fitPlaneToGeoObject(), qFacets::getFacetsInCurrentSelection(), ccCompass::getInsertPoint(), getMainAppInterface(), ccCompass::importFoliations(), ccCompass::importLineations(), qTreeIso::init_segs(), qTreeIso::intermediate_segs(), qSRA::loadProfile(), ccCompass::mergeGeoObjects(), q3DMASCPlugin::onNewSelection(), ccCompass::onSave(), ccCompass::pointPicked(), qSRA::projectCloudDistsInGrid(), ccCompass::recalculateFitPlanes(), ccCompass::recalculateSelectedTraces(), ccCompass::setLineation(), setMainAppInterface(), PythonPlugin::setMainAppInterface(), ccCompass::setPick(), ccCompass::setPlane(), ccCompass::setThickness(), ccCompass::setTrace(), ccCompass::setYoungerThan(), ccCompass::showHelp(), qFacets::showStereogram(), ccCompass::startMeasuring(), ccCompass::startPicking(), ccCompass::stopMeasuring(), ccCompass::stopPicking(), ccCompass::toggleLabels(), ccCompass::toggleNormals(), ccCompass::toggleStipple(), ccCompass::tryLoading(), and ccCompass::writeToXML().


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