r5sdk/r5dev/pluginsystem/ipluginsystem.h

31 lines
551 B
C++

#pragma once
#define INTERFACEVERSION_PLUGINSYSTEM "VPluginSystem001"
struct PluginHelpWithAnything_t
{
enum class ePluginHelp : int16_t
{
PLUGIN_GET_FUNCTION = 0,
PLUGIN_REGISTER_CALLBACK,
PLUGIN_UNREGISTER_CALLBACK
};
enum class ePluginCallback : int16_t
{
CModAppSystemGroup_Create = 0,
CServer_ConnectClient
};
ePluginHelp m_nHelpID;
ePluginCallback m_nCallbackID;
const char* m_pszName;
void* m_pFunction;
};
abstract_class IPluginSystem
{
public:
virtual void* HelpWithAnything(PluginHelpWithAnything_t * help) = 0;
};