aboutsummaryrefslogtreecommitdiff
path: root/api.h
diff options
context:
space:
mode:
Diffstat (limited to 'api.h')
-rw-r--r--api.h204
1 files changed, 102 insertions, 102 deletions
diff --git a/api.h b/api.h
index d1afbc2..edd9e6b 100644
--- a/api.h
+++ b/api.h
@@ -1,102 +1,102 @@
-// SPDX-License-Identifier: ISC
-// SPDX-FileCopyrightText: 2024 Matthew Wozniak <me@woz.blue>
-
-#ifndef ENGINEAPI_H
-#define ENGINEAPI_H
-
-#define VENGINE_SERVER_INTERFACE_VERSION "VEngineServer021"
-#define VENGINE_CLIENT_INTERFACE_VERSION "VEngineClient013"
-#define VENGINE_LAUNCHER_INTERFACE_VERSION "VENGINE_LAUNCHER_API_VERSION004"
-#define VENGINE_TOOL_INTERFACE_VERSION "VENGINETOOL003"
-
-#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;
-};
-
-struct engclient {
- struct {
- usize _pad[75];
- void (*__thiscall is_playing_demo)(struct engclient *this);
- } *vt;
-};
-
-struct engineapi {
- struct {
- usize _pad[7];
- void *set_engine_window;
- } *vt;
-};
-
-struct enginetools {
- struct {
- usize _pad[64];
- void *is_recording_movie;
- } *vt;
-};
-
-struct movieinfo {
- char name[256];
- int curframe;
- int type;
- int jpeg_quality;
-};
-
-struct videomode {
- struct {
- usize _pad[22];
- void (*__thiscall write_movie_frame)(struct videomode *this,
- struct movieinfo *info);
- } *vt;
-};
-
-struct demoplayer {
- struct {
- void *_destructor;
- void * (*__thiscall get_demo_file)(struct demoplayer *this);
- int (*__thiscall get_playback_tick)(struct demoplayer *this);
- int (*__thiscall get_total_ticks)(struct demoplayer *this);
- void *_whatisthisihavenoidea; // TODO
- bool (*__thiscall start_playback)(struct demoplayer *this,
- const char *filename, bool as_time_demo);
- bool (*__thiscall is_playing_back)(struct demoplayer *this);
- bool (*__thiscall is_playback_paused)(struct demoplayer *this);
- bool (*__thiscall is_playing_time_demo)(struct demoplayer *this);
- bool (*__thiscall is_skipping)(struct demoplayer *this);
- bool (*__thiscall can_skip_backwards)(struct demoplayer *this);
- void (*__thiscall set_playback_time_scale)(struct demoplayer *this,
- float timescale);
- float (*__thiscall get_playback_time_scale)(struct demoplayer *this);
- void (*__thiscall pause_playback)(struct demoplayer *this,
- float seconds);
- void (*__thiscall skip_to_tick)(struct demoplayer *this, int tick,
- bool relative, bool pause);
- void (*__thiscall resume_playback)(struct demoplayer *this);
- void (*__thiscall stop_playback)(struct demoplayer *this);
- void (*__thiscall interpolate_viewpoint)(struct demoplayer *this);
- } *vt;
-};
-
-#ifndef NO_EXTERNS
-extern struct engserver *engserver;
-extern struct engclient *engclient;
-extern struct engineapi *engineapi;
-extern struct enginetools *enginetools;
-extern struct demoplayer *demoplayer;
-extern struct videomode **videomode;
-extern struct movieinfo *movieinfo;
-extern void (*cbuf_addtext)(char *);
-#endif
-
-// initializes required engine apis. returns false on error.
-bool api_init(void);
-
-#endif
-
-// vi: sw=4 ts=4 noet tw=80 cc=80
+// SPDX-License-Identifier: ISC
+// SPDX-FileCopyrightText: 2024 Matthew Wozniak <me@woz.blue>
+
+#ifndef ENGINEAPI_H
+#define ENGINEAPI_H
+
+#define VENGINE_SERVER_INTERFACE_VERSION "VEngineServer021"
+#define VENGINE_CLIENT_INTERFACE_VERSION "VEngineClient013"
+#define VENGINE_LAUNCHER_INTERFACE_VERSION "VENGINE_LAUNCHER_API_VERSION004"
+#define VENGINE_TOOL_INTERFACE_VERSION "VENGINETOOL003"
+
+#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;
+};
+
+struct engclient {
+ struct {
+ usize _pad[75];
+ void (*__thiscall is_playing_demo)(struct engclient *this);
+ } *vt;
+};
+
+struct engineapi {
+ struct {
+ usize _pad[7];
+ void *set_engine_window;
+ } *vt;
+};
+
+struct enginetools {
+ struct {
+ usize _pad[64];
+ void *is_recording_movie;
+ } *vt;
+};
+
+struct movieinfo {
+ char name[256];
+ int curframe;
+ int type;
+ int jpeg_quality;
+};
+
+struct videomode {
+ struct {
+ usize _pad[22];
+ void (*__thiscall write_movie_frame)(struct videomode *this,
+ struct movieinfo *info);
+ } *vt;
+};
+
+struct demoplayer {
+ struct {
+ void *_destructor;
+ void * (*__thiscall get_demo_file)(struct demoplayer *this);
+ int (*__thiscall get_playback_tick)(struct demoplayer *this);
+ int (*__thiscall get_total_ticks)(struct demoplayer *this);
+ void *_whatisthisihavenoidea; // TODO
+ bool (*__thiscall start_playback)(struct demoplayer *this,
+ const char *filename, bool as_time_demo);
+ bool (*__thiscall is_playing_back)(struct demoplayer *this);
+ bool (*__thiscall is_playback_paused)(struct demoplayer *this);
+ bool (*__thiscall is_playing_time_demo)(struct demoplayer *this);
+ bool (*__thiscall is_skipping)(struct demoplayer *this);
+ bool (*__thiscall can_skip_backwards)(struct demoplayer *this);
+ void (*__thiscall set_playback_time_scale)(struct demoplayer *this,
+ float timescale);
+ float (*__thiscall get_playback_time_scale)(struct demoplayer *this);
+ void (*__thiscall pause_playback)(struct demoplayer *this,
+ float seconds);
+ void (*__thiscall skip_to_tick)(struct demoplayer *this, int tick,
+ bool relative, bool pause);
+ void (*__thiscall resume_playback)(struct demoplayer *this);
+ void (*__thiscall stop_playback)(struct demoplayer *this);
+ void (*__thiscall interpolate_viewpoint)(struct demoplayer *this);
+ } *vt;
+};
+
+#ifndef NO_EXTERNS
+extern struct engserver *engserver;
+extern struct engclient *engclient;
+extern struct engineapi *engineapi;
+extern struct enginetools *enginetools;
+extern struct demoplayer *demoplayer;
+extern struct videomode **videomode;
+extern struct movieinfo *movieinfo;
+extern void (*cbuf_addtext)(char *);
+#endif
+
+// initializes required engine apis. returns false on error.
+bool api_init(void);
+
+#endif
+
+// vi: sw=4 ts=4 noet tw=80 cc=80