aboutsummaryrefslogtreecommitdiff
path: root/api.h
blob: 1a841f5888b9302d6906508f15ce6ed193ec8eef (plain) (blame)
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
// SPDX-License-Identifier: ISC
// SPDX-FileCopyrightText: 2024 Matthew Wozniak <me@woz.blue>

#ifndef ENGINEAPI_H
#define ENGINEAPI_H

#define INTERFACEVERSION_VENGINESERVER "VEngineServer021"

#include "intdef.h"

typedef void * (*createinterface_func)(const char *name, int *ret);

struct engserver {
	struct {
		usize _pad[36];
		void (*__thiscall server_command)(struct engserver *this, const char *str);
	} *vt;
};

#ifndef NO_EXTERNS
extern struct engserver *engserver;
#endif

void api_init(void);

#endif

// vi: sw=4 ts=4 noet tw=80 cc=80