OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
openswmm::h5io::Hdf5PluginInfo Class Reference

Singleton describing the HDF5 I/O plugin. More...

#include <Hdf5PluginInfo.hpp>

Inheritance diagram for openswmm::h5io::Hdf5PluginInfo:
Collaboration diagram for openswmm::h5io::Hdf5PluginInfo:

Public Member Functions

std::string id () const override
 Report the plugin's id metadata.
 
std::string caption () const override
 Report the plugin's caption metadata.
 
std::string description () const override
 Report the plugin's description metadata.
 
std::string version () const override
 Report the plugin's version metadata.
 
std::string vendor () const override
 Report the plugin's vendor metadata.
 
std::string url () const override
 Report the plugin's url metadata.
 
std::vector< std::string > tags () const override
 Report the plugin's tags metadata.
 
std::string license_type () const override
 Report the plugin's license type metadata.
 
std::string license_text () const override
 Report the plugin's license text metadata.
 
bool has_input () const noexcept override
 Report the plugin's has input metadata.
 
bool has_output () const noexcept override
 Report the plugin's has output metadata.
 
bool has_report () const noexcept override
 Report the plugin's has report metadata.
 
std::vector< FileFilter > file_filters () const override
 Report the plugin's file filters metadata.
 
IInputPlugin * create_input_plugin () const override
 Allocate an independent HDF5 model I/O plugin instance.
 
- Public Member Functions inherited from openswmm::IPluginComponentInfo
virtual ~IPluginComponentInfo ()=default
 Destroy component metadata only through its owning library/host lifetime. PluginFactory borrows singleton metadata and does not delete it as an instance. Keep library loaded until all created plugin instances/callbacks are destroyed; base destructor performs no instance cleanup, registration or library unloading.
 
virtual bool has_state_io () const noexcept
 Query whether this component advertises the state_io capability.
 
virtual bool register_plugin (const RegistrationInfo &info)
 Apply implementation-defined registration data before protected factories.
 
virtual bool registered () const noexcept
 Query implementation-defined registration readiness.
 
virtual RegistrationInfo registration_info () const
 Copy implementation-reported current registration metadata.
 
virtual IOutputPlugin * create_output_plugin () const
 Allocate a distinct output plugin instance when supported and permitted.
 
virtual IReportPlugin * create_report_plugin () const
 Allocate a distinct report plugin instance when supported and permitted.
 
virtual IStateIOPlugin * create_state_io_plugin () const
 Allocate a distinct state_io plugin instance when supported and permitted.
 

Static Public Member Functions

static Hdf5PluginInfo & instance ()
 Access the built-in HDF5 plugin metadata singleton.
 

Detailed Description

Singleton describing the HDF5 I/O plugin.

Member Function Documentation

◆ caption()

std::string openswmm::h5io::Hdf5PluginInfo::caption ( ) const
inlineoverridevirtual

Report the plugin's caption metadata.

Returns
Owned display caption for the HDF5 model I/O plugin.

Implements openswmm::IPluginComponentInfo.

◆ create_input_plugin()

IInputPlugin * openswmm::h5io::Hdf5PluginInfo::create_input_plugin ( ) const
overridevirtual

Allocate an independent HDF5 model I/O plugin instance.

Returns
Newly owned, unloaded Hdf5InputPlugin. The caller must delete it through the IInputPlugin interface after use.
Exceptions
std::bad_allocAllocation fails. The metadata singleton is unchanged.

Reimplemented from openswmm::IPluginComponentInfo.

◆ description()

std::string openswmm::h5io::Hdf5PluginInfo::description ( ) const
inlineoverridevirtual

Report the plugin's description metadata.

Returns
Owned description of the columnar export format and authored units.

Implements openswmm::IPluginComponentInfo.

◆ file_filters()

std::vector< FileFilter > openswmm::h5io::Hdf5PluginInfo::file_filters ( ) const
inlineoverridevirtual

Report the plugin's file filters metadata.

Returns
Owned INPUT_READ-role filter for *.h5 and *.hdf5 and application/x-hdf5.
Note
The role identifies model I/O; schema 1.0 still refuses read().

Reimplemented from openswmm::IPluginComponentInfo.

◆ has_input()

bool openswmm::h5io::Hdf5PluginInfo::has_input ( ) const
inlineoverridevirtualnoexcept

Report the plugin's has input metadata.

Returns
True: the plugin supplies the model I/O role, including export.

Reimplemented from openswmm::IPluginComponentInfo.

◆ has_output()

bool openswmm::h5io::Hdf5PluginInfo::has_output ( ) const
inlineoverridevirtualnoexcept

Report the plugin's has output metadata.

Returns
False: no simulation-result output plugin is provided.

Reimplemented from openswmm::IPluginComponentInfo.

◆ has_report()

bool openswmm::h5io::Hdf5PluginInfo::has_report ( ) const
inlineoverridevirtualnoexcept

Report the plugin's has report metadata.

Returns
False: no report-generation plugin is provided.

Reimplemented from openswmm::IPluginComponentInfo.

◆ id()

std::string openswmm::h5io::Hdf5PluginInfo::id ( ) const
inlineoverridevirtual

Report the plugin's id metadata.

Returns
Stable plugin identifier org.hydrocouple.openswmm.plugins.hdf5.

Implements openswmm::IPluginComponentInfo.

◆ instance()

static Hdf5PluginInfo & openswmm::h5io::Hdf5PluginInfo::instance ( )
inlinestatic

Access the built-in HDF5 plugin metadata singleton.

Returns
Borrowed process-lifetime singleton; do not delete it.

◆ license_text()

std::string openswmm::h5io::Hdf5PluginInfo::license_text ( ) const
inlineoverridevirtual

Report the plugin's license text metadata.

Returns
Owned copyright and license summary; full terms are in LICENSE/NOTICE.

Implements openswmm::IPluginComponentInfo.

◆ license_type()

std::string openswmm::h5io::Hdf5PluginInfo::license_type ( ) const
inlineoverridevirtual

Report the plugin's license type metadata.

Returns
Owned SPDX identifier Apache-2.0.

Implements openswmm::IPluginComponentInfo.

◆ tags()

std::vector< std::string > openswmm::h5io::Hdf5PluginInfo::tags ( ) const
inlineoverridevirtual

Report the plugin's tags metadata.

Returns
Owned discovery keywords for plugin filtering.

Reimplemented from openswmm::IPluginComponentInfo.

◆ url()

std::string openswmm::h5io::Hdf5PluginInfo::url ( ) const
inlineoverridevirtual

Report the plugin's url metadata.

Returns
Owned project information URL.

Implements openswmm::IPluginComponentInfo.

◆ vendor()

std::string openswmm::h5io::Hdf5PluginInfo::vendor ( ) const
inlineoverridevirtual

Report the plugin's vendor metadata.

Returns
Owned vendor name HydroCouple.

Implements openswmm::IPluginComponentInfo.

◆ version()

std::string openswmm::h5io::Hdf5PluginInfo::version ( ) const
inlineoverridevirtual

Report the plugin's version metadata.

Returns
Owned plugin version string 1.0.0.

Implements openswmm::IPluginComponentInfo.


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