peary::interface::InterfaceManager

Singleton class to manage interface instances.

#include <peary/interfaces/InterfaceManager.hpp>

Public Functions

Name
template <typename T > T & getInterface(typename T::configuration_type const & config)Get the singleton instance of the InterfaceManager.
template <typename T > void deleteInterface(T * interface)Delete an interface instance.
InterfaceManager(InterfaceManager const & ) =deleteDelete copy constructor and assignment operator to prevent copying.
void operator=(InterfaceManager const & ) =delete

Protected Functions

Name
InterfaceManager() =defaultProtected constructor for singleton class.

Public Functions Documentation

function getInterface

  template <typename T >
static inline T & getInterface(
    typename T::configuration_type const & config
)
  

Get the singleton instance of the InterfaceManager.

Parameters:

  • config The configuration object used to initialize the interface

Template Parameters:

  • T The type of the interface to be managed

Return: A reference to the singleton instance of the requested interface

function deleteInterface

  template <typename T >
static inline void deleteInterface(
    T * interface
)
  

Delete an interface instance.

Parameters:

  • interface A pointer to the interface instance to be deleted

Template Parameters:

  • T The type of the interface to be deleted

function InterfaceManager

  InterfaceManager(
    InterfaceManager const & 
) =delete
  

Delete copy constructor and assignment operator to prevent copying.

function operator=

  void operator=(
    InterfaceManager const & 
) =delete
  

Protected Functions Documentation

function InterfaceManager

  InterfaceManager() =default
  

Protected constructor for singleton class.


Updated on 2025-11-14 at 11:31:23 +0100