-
Notifications
You must be signed in to change notification settings - Fork 2
/
IMatchExtInterface.h
54 lines (43 loc) · 1.19 KB
/
IMatchExtInterface.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#ifndef _INCLUDE_IMATCHEXTL4D_H_
#define _INCLUDE_IMATCHEXTL4D_H_
#include <IShareSys.h>
#if SOURCE_ENGINE == SE_LEFT4DEAD
#include <matchmaking/imatchframework.h>
#include <matchmaking/l4d/imatchext_l4d.h>
#elif SOURCE_ENGINE == SE_LEFT4DEAD2
#include <matchmaking/imatchframework.h>
#include <matchmaking/l4d2/imatchext_l4d.h>
#endif
class IMatchExtL4D;
class IMatchFramework;
#define SMINTERFACE_IMATCHEXT_NAME "IMatchExtInterface"
#define SMINTERFACE_IMATCHEXT_VERSION 11
namespace SourceMod
{
class IMatchExtListener
{
public:
virtual ~IMatchExtListener() = 0;
virtual void NotifyMissionReload() = 0;
};
class IMatchExtInterface :
public SMInterface
{
public:
const char *GetInterfaceName() override
{
return SMINTERFACE_IMATCHEXT_NAME;
}
unsigned int GetInterfaceVersion() override
{
return SMINTERFACE_IMATCHEXT_VERSION;
}
public:
virtual IMatchExtL4D *GetIMatchExtL4D() = 0;
virtual IMatchFramework *GetIMatchFrameWork() = 0;
virtual bool GetReservationCookie(uint64_t& xuidReserve) = 0;
virtual void AddListener(IMatchExtListener* pListener) = 0;
virtual void RemoveListener(IMatchExtListener* pListener) = 0;
};
};
#endif // _INCLUDE_IMATCHEXTL4D_H_