OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
openswmm::gpkg::GeoPackagePluginInfo Class Reference

IPluginComponentInfo for the GeoPackage I/O plugin. More...

#include <GeoPackagePluginInfo.hpp>

Inheritance diagram for openswmm::gpkg::GeoPackagePluginInfo:
Collaboration diagram for openswmm::gpkg::GeoPackagePluginInfo:

Public Member Functions

std::string id () const override
 Unique plugin identifier in reverse-DNS notation.
 
std::string caption () const override
 Human-readable display name of the plugin.
 
std::string description () const override
 Detailed description of what this plugin does.
 
std::string version () const override
 Plugin version string (Semantic Versioning recommended).
 
std::string vendor () const override
 Vendor / author name.
 
std::string url () const override
 URL to the plugin's home page or documentation.
 
std::vector< std::string > tags () const override
 Additional tags or keywords for discovery.
 
std::string license_type () const override
 SPDX license identifier for this plugin.
 
std::string license_text () const override
 Full license text for this plugin.
 
bool has_input () const noexcept override
 True if this plugin can create an IInputPlugin.
 
bool has_output () const noexcept override
 True if this plugin can create an IOutputPlugin.
 
bool has_report () const noexcept override
 True if this plugin can create an IReportPlugin.
 
std::vector< FileFilterfile_filters () const override
 File-format filters this plugin handles.
 
IInputPlugincreate_input_plugin () const override
 Create a new IInputPlugin instance.
 
IOutputPlugincreate_output_plugin () const override
 Create a new IOutputPlugin instance.
 
IReportPlugincreate_report_plugin () const override
 Create a new IReportPlugin instance.
 
bool register_plugin (const RegistrationInfo &info) override
 Register the plugin with the provided registration information.
 
bool registered () const noexcept override
 Check whether the plugin is currently registered.
 
RegistrationInfo registration_info () const override
 Get the current registration information.
 
- Public Member Functions inherited from openswmm::IPluginComponentInfo
virtual ~IPluginComponentInfo ()=default
 
virtual bool has_state_io () const noexcept
 True if this plugin can create an IStateIOPlugin.
 
virtual IStateIOPlugincreate_state_io_plugin () const
 Create a new IStateIOPlugin instance.
 

Static Public Member Functions

static GeoPackagePluginInfoinstance ()
 Get the singleton instance.
 

Detailed Description

IPluginComponentInfo for the GeoPackage I/O plugin.

Singleton — obtain via GeoPackagePluginInfo::instance(). The PluginFactory discovers this through the exported C function openswmm_plugin_info().

Member Function Documentation

◆ caption()

std::string openswmm::gpkg::GeoPackagePluginInfo::caption ( ) const
inlineoverridevirtual

Human-readable display name of the plugin.

Returns
e.g. "HDF5 Output Plugin"

Implements openswmm::IPluginComponentInfo.

◆ create_input_plugin()

IInputPlugin * openswmm::gpkg::GeoPackagePluginInfo::create_input_plugin ( ) const
overridevirtual

Create a new IInputPlugin instance.

The PluginFactory calls this when has_input() returns true. The returned pointer is owned by the caller (PluginFactory). The factory will call delete on it during cleanup.

Returns
New IInputPlugin instance, or nullptr if not supported.

Reimplemented from openswmm::IPluginComponentInfo.

◆ create_output_plugin()

IOutputPlugin * openswmm::gpkg::GeoPackagePluginInfo::create_output_plugin ( ) const
overridevirtual

Create a new IOutputPlugin instance.

The PluginFactory calls this when has_output() returns true. The returned pointer is owned by the caller (PluginFactory). The factory will call delete on it during cleanup.

Returns
New IOutputPlugin instance, or nullptr if not supported.

Reimplemented from openswmm::IPluginComponentInfo.

◆ create_report_plugin()

IReportPlugin * openswmm::gpkg::GeoPackagePluginInfo::create_report_plugin ( ) const
overridevirtual

Create a new IReportPlugin instance.

The PluginFactory calls this when has_report() returns true.

Returns
New IReportPlugin instance, or nullptr if not supported.

Reimplemented from openswmm::IPluginComponentInfo.

◆ description()

std::string openswmm::gpkg::GeoPackagePluginInfo::description ( ) const
inlineoverridevirtual

Detailed description of what this plugin does.

Implements openswmm::IPluginComponentInfo.

◆ file_filters()

std::vector< FileFilter > openswmm::gpkg::GeoPackagePluginInfo::file_filters ( ) const
inlineoverridevirtual

File-format filters this plugin handles.

Every plugin SHOULD override this and return one FileFilter per (role, format) pair it supports. The default empty return preserves binary compatibility for plugins built against older SDK headers, but PluginFactory logs a warning when a plugin advertises a capability (e.g., has_input() == true) yet returns no filter for the matching role.

Hosts (Qt GUIs, CLI, Python bindings) compose user-visible file dialogs from the union of filters across all loaded plugins, grouped by role.

Returns
Vector of filter entries; empty by default.

Reimplemented from openswmm::IPluginComponentInfo.

◆ has_input()

bool openswmm::gpkg::GeoPackagePluginInfo::has_input ( ) const
inlineoverridevirtualnoexcept

True if this plugin can create an IInputPlugin.

The PluginFactory checks this before calling create_input_plugin().

Reimplemented from openswmm::IPluginComponentInfo.

◆ has_output()

bool openswmm::gpkg::GeoPackagePluginInfo::has_output ( ) const
inlineoverridevirtualnoexcept

True if this plugin can create an IOutputPlugin.

The PluginFactory checks this before calling create_output_plugin().

Reimplemented from openswmm::IPluginComponentInfo.

◆ has_report()

bool openswmm::gpkg::GeoPackagePluginInfo::has_report ( ) const
inlineoverridevirtualnoexcept

True if this plugin can create an IReportPlugin.

The PluginFactory checks this before calling create_report_plugin().

Reimplemented from openswmm::IPluginComponentInfo.

◆ id()

std::string openswmm::gpkg::GeoPackagePluginInfo::id ( ) const
inlineoverridevirtual

Unique plugin identifier in reverse-DNS notation.

Returns
e.g. "org.hydrocouple.openswmm.plugins.hdf5output"

Implements openswmm::IPluginComponentInfo.

◆ instance()

static GeoPackagePluginInfo & openswmm::gpkg::GeoPackagePluginInfo::instance ( )
inlinestatic

Get the singleton instance.

Here is the caller graph for this function:

◆ license_text()

std::string openswmm::gpkg::GeoPackagePluginInfo::license_text ( ) const
inlineoverridevirtual

Full license text for this plugin.

Return the complete license text (or a URL to it).

Returns
License text string.

Implements openswmm::IPluginComponentInfo.

◆ license_type()

std::string openswmm::gpkg::GeoPackagePluginInfo::license_type ( ) const
inlineoverridevirtual

SPDX license identifier for this plugin.

Returns
e.g. "MIT", "GPL-3.0-only", "LicenseRef-Commercial"
See also
https://spdx.org/licenses/

Implements openswmm::IPluginComponentInfo.

◆ register_plugin()

bool openswmm::gpkg::GeoPackagePluginInfo::register_plugin ( const RegistrationInfo info)
overridevirtual

Register the plugin with the provided registration information.

Override this to implement registration logic (license validation, activation token checks, etc.). The default implementation accepts any registration and returns true.

Parameters
infoRegistration information.
Returns
true if registration succeeded, false otherwise.

Reimplemented from openswmm::IPluginComponentInfo.

Here is the caller graph for this function:

◆ registered()

bool openswmm::gpkg::GeoPackagePluginInfo::registered ( ) const
inlineoverridevirtualnoexcept

Check whether the plugin is currently registered.

Override this to report registration status. Plugins that do not require registration should return true (the default).

Returns
true if the plugin is registered and ready to use.

Reimplemented from openswmm::IPluginComponentInfo.

Here is the caller graph for this function:

◆ registration_info()

RegistrationInfo openswmm::gpkg::GeoPackagePluginInfo::registration_info ( ) const
inlineoverridevirtual

Get the current registration information.

Returns the info passed to the most recent successful register_plugin() call. The default returns an empty struct.

Returns
Registration information (valid only if registered() is true).

Reimplemented from openswmm::IPluginComponentInfo.

◆ tags()

std::vector< std::string > openswmm::gpkg::GeoPackagePluginInfo::tags ( ) const
inlineoverridevirtual

Additional tags or keywords for discovery.

Returns
Vector of keyword strings.

Reimplemented from openswmm::IPluginComponentInfo.

◆ url()

std::string openswmm::gpkg::GeoPackagePluginInfo::url ( ) const
inlineoverridevirtual

URL to the plugin's home page or documentation.

Returns
e.g. "https://hydrocouple.org/plugins/hdf5"

Implements openswmm::IPluginComponentInfo.

◆ vendor()

std::string openswmm::gpkg::GeoPackagePluginInfo::vendor ( ) const
inlineoverridevirtual

Vendor / author name.

Returns
e.g. "HydroCouple Consortium"

Implements openswmm::IPluginComponentInfo.

◆ version()

std::string openswmm::gpkg::GeoPackagePluginInfo::version ( ) const
inlineoverridevirtual

Plugin version string (Semantic Versioning recommended).

Returns
e.g. "1.0.0"

Implements openswmm::IPluginComponentInfo.


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