Overload  1.1
Game engine with editor
Public Member Functions | List of all members
OvUI::Plugins::Pluginable Class Reference

#include <Pluginable.h>

Inheritance diagram for OvUI::Plugins::Pluginable:
OvUI::Widgets::AWidget OvUI::Widgets::Layout::Columns< 2 > OvUI::Widgets::Layout::Columns< 5 > OvUI::Widgets::DataWidget< bool > OvUI::Widgets::DataWidget< double > OvUI::Widgets::DataWidget< float > OvUI::Widgets::DataWidget< int > OvUI::Widgets::DataWidget< std::array< double, _Size > > OvUI::Widgets::DataWidget< std::array< float, _Size > > OvUI::Widgets::DataWidget< std::array< int, _Size > > OvUI::Widgets::DataWidget< std::array< T, _Size > > OvUI::Widgets::DataWidget< std::string > OvUI::Widgets::DataWidget< std::vector< float > > OvUI::Widgets::DataWidget< Types::Color > OvUI::Widgets::Buttons::AButton OvUI::Widgets::DataWidget< T > OvUI::Widgets::Layout::Columns< _Size > OvUI::Widgets::Layout::Dummy OvUI::Widgets::Layout::Group OvUI::Widgets::Layout::NewLine OvUI::Widgets::Layout::Spacing OvUI::Widgets::Visual::Bullet OvUI::Widgets::Visual::Image OvUI::Widgets::Visual::ProgressBar OvUI::Widgets::Visual::Separator

Public Member Functions

 ~Pluginable ()
 
template<typename T , typename... Args>
T & AddPlugin (Args &&... p_args)
 
template<typename T >
T * GetPlugin ()
 
void ExecutePlugins ()
 
void RemoveAllPlugins ()
 

Detailed Description

Inherit from this class to make your class "Pluginable" (Able to have plugins)

Constructor & Destructor Documentation

◆ ~Pluginable()

OvUI::Plugins::Pluginable::~Pluginable ( )
inline

Destructor (Destroys every plugins)

Member Function Documentation

◆ AddPlugin()

template<typename T , typename... Args>
T& OvUI::Plugins::Pluginable::AddPlugin ( Args &&...  p_args)
inline

Add a plugin

Parameters
p_args

◆ ExecutePlugins()

void OvUI::Plugins::Pluginable::ExecutePlugins ( )
inline

Execute every plugins

◆ GetPlugin()

template<typename T >
T* OvUI::Plugins::Pluginable::GetPlugin ( )
inline

Returns the plugin of the given type, or nullptr if not found

◆ RemoveAllPlugins()

void OvUI::Plugins::Pluginable::RemoveAllPlugins ( )
inline

Remove every plugins


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