r-type
0.0.0
R-Type main
Loading...
Searching...
No Matches
IPlugin.hpp
Go to the documentation of this file.
1
///
2
/// @file IPlugin.hpp
3
/// @brief This file contains the plugin interface
4
/// @namespace utl
5
///
6
7
#pragma once
8
9
#include <string>
10
11
namespace
utl
12
{
13
14
enum class
PluginType
: uint8_t
15
{
16
AUDIO
= 0,
17
NETWORK_CLIENT
= 1,
18
NETWORK_SERVER
= 1,
19
RENDERER
= 2,
20
UNKNOWN
= 255
21
};
22
23
///
24
/// @interface IPlugin
25
/// @brief Interface for plugins
26
/// @namespace utl
27
///
28
class
IPlugin
29
{
30
31
public
:
32
virtual
~IPlugin
() =
default
;
33
[[nodiscard]]
virtual
const
std::string
getName
()
const
= 0;
34
[[nodiscard]]
virtual
PluginType
getType
()
const
= 0;
35
36
};
// interface IPlugin
37
}
// namespace utl
utl::IPlugin
Interface for plugins.
Definition
IPlugin.hpp:29
utl::IPlugin::getName
virtual const std::string getName() const =0
utl::IPlugin::getType
virtual PluginType getType() const =0
utl::IPlugin::~IPlugin
virtual ~IPlugin()=default
utl
utl::PluginType
PluginType
Definition
IPlugin.hpp:15
utl::PluginType::NETWORK_SERVER
@ NETWORK_SERVER
utl::PluginType::UNKNOWN
@ UNKNOWN
utl::PluginType::RENDERER
@ RENDERER
utl::PluginType::NETWORK_CLIENT
@ NETWORK_CLIENT
utl::PluginType::AUDIO
@ AUDIO
modules
Utils
include
Utils
Interfaces
IPlugin.hpp
Generated by
1.11.0