2
0
mirror of https://github.com/rehlds/metamod-r.git synced 2025-03-26 04:09:14 +03:00
metamod-r/metamod/src/dllapi.h

37 lines
1.1 KiB
C
Raw Normal View History

2016-07-26 23:31:47 +07:00
#pragma once
2017-06-26 22:51:23 +03:00
#include <eiface.h>
#ifndef DLLEXPORT
#ifdef _WIN32
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT __attribute__((visibility("default")))
#endif // _WIN32
#endif // DLLEXPORT
#ifndef C_DLLEXPORT
#define C_DLLEXPORT extern "C" DLLEXPORT
#endif
2017-06-27 01:17:45 +03:00
#ifndef _WIN32
#define WINAPI
#endif
2016-07-30 02:03:01 +03:00
typedef void (*FN_GAMEINIT)();
2016-07-04 12:07:29 +06:00
// Typedefs for these are provided in SDK engine/eiface.h, but I didn't
// like the names (APIFUNCTION, APIFUNCTION2, NEW_DLL_FUNCTIONS_FN).
2017-05-09 19:31:09 +03:00
typedef int (*GETENTITYAPI_FN)(DLL_FUNCTIONS* pFunctionTable, int interfaceVersion);
typedef int (*GETENTITYAPI2_FN)(DLL_FUNCTIONS* pFunctionTable, int* interfaceVersion);
typedef int (*GETNEWDLLFUNCTIONS_FN)(NEW_DLL_FUNCTIONS* pFunctionTable, int* interfaceVersion);
2016-07-26 23:31:47 +07:00
2017-05-09 19:31:09 +03:00
C_DLLEXPORT int GetEntityAPI(DLL_FUNCTIONS* pFunctionTable, int interfaceVersion);
C_DLLEXPORT int GetEntityAPI2(DLL_FUNCTIONS* pFunctionTable, int* interfaceVersion);
C_DLLEXPORT int GetNewDLLFunctions(NEW_DLL_FUNCTIONS* pNewFunctionTable, int* interfaceVersion);
2016-07-26 23:31:47 +07:00
2017-03-10 00:00:25 +03:00
#ifdef METAMOD_CORE
2016-07-30 02:03:01 +03:00
void compile_gamedll_callbacks();
2017-03-11 19:12:09 +03:00
void disable_clientcommand_fwd();
2017-03-10 00:00:25 +03:00
#endif