Factory class for creating and managing front-end instances. More...
#include <FrontEndFactory.hxx>
Static Public Member Functions | |
static std::shared_ptr< AbstractFrontEnd > | getFrontEndInstance (const std::string &referredInterfaceName) |
Get a front-end instance for the specified interface. | |
template<typename FrontEndT , class = typename std::enable_if<std::is_base_of<AbstractFrontEnd, FrontEndT>::value>::type> | |
static std::shared_ptr< FrontEndT > | getTypedFrontEndInstance (const std::string &referredInterfaceName) |
Get a typed front-end instance for the specified interface. | |
Factory class for creating and managing front-end instances.
This factory class provides static methods to create and retrieve instances of various front-end types including:
The factory implements a singleton pattern for each front-end instance, ensuring only one instance exists per interface name.
Definition at line 23 of file FrontEndFactory.hxx.
|
static |
Get a front-end instance for the specified interface.
referredInterfaceName | Name or identifier of the interface |
std::invalid_argument | If the interface type is unsupported |
Referenced by getTypedFrontEndInstance().
|
inlinestatic |
Get a typed front-end instance for the specified interface.
FrontEndT | Type of front-end to create (must inherit from AbstractFrontEnd) |
referredInterfaceName | Name or identifier of the interface |
Definition at line 43 of file FrontEndFactory.hxx.
References getFrontEndInstance(), and getTypedFrontEndInstance().
Referenced by AbstractNIC::getTypedFrontEnd(), and getTypedFrontEndInstance().