fourdst_plugin 0.0.1a
C++ Plugin Manager
Loading...
Searching...
No Matches
fourdst::plugin::IPlugin Class Referenceabstract

Abstract base interface for all plugins. More...

#include <iplugin.h>

Inheritance diagram for fourdst::plugin::IPlugin:
fourdst::plugin::IPluginBase fourdst::plugin::PluginBase fourdst::plugin::templates::FunctorPlugin_T< T >

Public Member Functions

virtual ~IPlugin ()=default
 Virtual destructor to ensure proper cleanup of derived classes.
 
virtual const char * get_name () const =0
 Get the name of the plugin.
 
virtual const char * get_version () const =0
 Get the version of the plugin.
 

Detailed Description

Abstract base interface for all plugins.

This interface defines the minimum contract that all plugins must fulfill. Every plugin must provide identification information through name and version methods. This interface is designed to be extended by more specific plugin interfaces that define domain-specific functionality.

Note
This is a pure abstract interface - it cannot be instantiated directly.
All derived classes should ensure thread-safety of the implemented methods.

Constructor & Destructor Documentation

◆ ~IPlugin()

virtual fourdst::plugin::IPlugin::~IPlugin ( )
virtualdefault

Virtual destructor to ensure proper cleanup of derived classes.

Exceptions
Neverthrows

Member Function Documentation

◆ get_name()

virtual const char * fourdst::plugin::IPlugin::get_name ( ) const
nodiscardpure virtual

Get the name of the plugin.

This method returns a human-readable name that uniquely identifies the plugin within the system. The name is used by the plugin manager for registration and retrieval operations.

Returns
const char* A null-terminated string containing the plugin name. The returned pointer must remain valid for the lifetime of the plugin instance.
Exceptions
Neverthrows
Note
The returned string should be a compile-time constant or a static string to ensure lifetime guarantees.
Plugin names should be unique within a given plugin manager instance.

Implemented in fourdst::plugin::IPluginBase.

◆ get_version()

virtual const char * fourdst::plugin::IPlugin::get_version ( ) const
nodiscardpure virtual

Get the version of the plugin.

This method returns a version string that identifies the specific version of the plugin implementation. This can be used for compatibility checking and debugging purposes.

Returns
const char* A null-terminated string containing the plugin version. The returned pointer must remain valid for the lifetime of the plugin instance.
Exceptions
Neverthrows
Note
The returned string should be a compile-time constant or a static string to ensure lifetime guarantees.
Version strings should follow semantic versioning (e.g., "1.0.0").

Implemented in fourdst::plugin::IPluginBase.


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