Envision
A visual programming IDE for object-oriented languages
List of all members | Public Member Functions
Core::EnvisionPlugin Class Referenceabstract

This EnvisionPlugin interface is the one that each plug-in must implement. More...

Inheritance diagram for Core::EnvisionPlugin:
APIDepTest::APIDepTestPlugin Alloy::AlloyPlugin CodeReview::CodeReviewPlugin Comments::CommentsPlugin ContractsLibrary::ContractsLibraryPlugin ControlFlowVisualization::ControlFlowVisualizationPlugin CppExport::CppExportPlugin CppImport::CppImportPlugin CppImportLight::CppImportLightPlugin CustomMethodCall::CustomMethodCallPlugin Export::ExportPlugin FilePersistence::FilePersistencePlugin HelloWorld::HelloWorldPlugin InformationScripting::InformationScriptingPlugin Interaction::InteractionBasePlugin JavaExport::JavaExportPlugin Logger::LoggerPlugin Model::ModelBasePlugin OODebug::OODebugPlugin OOInteraction::OOInteractionPlugin OOModel::OOModelPlugin OOVisualization::OOVisualizationPlugin SelfTest::SelfTestPlugin VersionControlUI::VersionControlUIPlugin Visualization::VisualizationBasePlugin

Public Member Functions

virtual ~EnvisionPlugin ()=default
 
virtual bool initialize (EnvisionManager &manager)=0
 Initializes the plug-in. More...
 
virtual void selfTest (QString testid)=0
 Starts the indicated self-test for this plug-in. More...
 
virtual void unload ()=0
 Frees up all resources allocated by this plug-in and prepares it to be unloaded. More...
 

Detailed Description

This EnvisionPlugin interface is the one that each plug-in must implement.

The Envision core will look for this interface (via the QT plug-in framework) in each plug-in.

Constructor & Destructor Documentation

◆ ~EnvisionPlugin()

virtual Core::EnvisionPlugin::~EnvisionPlugin ( )
virtualdefault

Member Function Documentation

◆ initialize()

virtual bool Core::EnvisionPlugin::initialize ( EnvisionManager manager)
pure virtual

◆ selfTest()

virtual void Core::EnvisionPlugin::selfTest ( QString  testid)
pure virtual

Starts the indicated self-test for this plug-in.

If the Envision system was started with a command line argument that indicates a particular plug-in should be tested, this method will be invoked for that plug-in. Optionally a particular test can be requested.

This method will only be invoked once all plug-ins are loaded.

To request that a plug-in be tested use the –test option when starting envision.

E.G. to run all tests of the File persistence module: Envision –test filepersistence

to only run the 'load' test: Envision –test filepersistence:load

Parameters
testidThe string id of the test to run. If this string is empty all tests should be run.

Implemented in Visualization::VisualizationBasePlugin, VersionControlUI::VersionControlUIPlugin, SelfTest::SelfTestPlugin, OOVisualization::OOVisualizationPlugin, OOModel::OOModelPlugin, OOInteraction::OOInteractionPlugin, OODebug::OODebugPlugin, Model::ModelBasePlugin, Logger::LoggerPlugin, JavaExport::JavaExportPlugin, Interaction::InteractionBasePlugin, InformationScripting::InformationScriptingPlugin, HelloWorld::HelloWorldPlugin, Export::ExportPlugin, CustomMethodCall::CustomMethodCallPlugin, CppImportLight::CppImportLightPlugin, CppImport::CppImportPlugin, CppExport::CppExportPlugin, ControlFlowVisualization::ControlFlowVisualizationPlugin, ContractsLibrary::ContractsLibraryPlugin, Comments::CommentsPlugin, CodeReview::CodeReviewPlugin, APIDepTest::APIDepTestPlugin, Alloy::AlloyPlugin, and FilePersistence::FilePersistencePlugin.

◆ unload()

virtual void Core::EnvisionPlugin::unload ( )
pure virtual