quakeforge/ruamoko/qwaq/qwaq.h
Bill Currie ae58a8ba5d [qwaq] Create a commandline-only version of qwaq
qwaq-curses has its place, but its use for running vkgen was really a
placeholder because I didn't feel like sorting out the different
initialization requirements at the time. qwaq-cmd has the (currently
unnecessary) threading power of qwaq-curses, but doesn't include any UI
stuff and thus doesn't need curses. The work also paves the way for
qwaq-x11 to become a proper engine (though sorting out its init will be
taken care of later).

Fixes #15.
2021-07-06 12:25:24 +09:00

33 lines
794 B
C

#ifndef __qwaq_h
#define __qwaq_h
#include <pthread.h>
#include "QF/darray.h"
#include "QF/progs.h"
#include "QF/sys.h"
typedef void (*progsinit_f) (progs_t *pr);
typedef struct qwaq_thread_s {
pthread_t thread_id;
int return_code;
struct DARRAY_TYPE (const char *) args;
sys_printf_t sys_printf;
progsinit_f*progsinit;
progs_t *pr;
struct hashlink_s *hashlink_freelist;
func_t main_func;
void *data;
} qwaq_thread_t;
typedef struct qwaq_thread_set_s DARRAY_TYPE(qwaq_thread_t *) qwaq_thread_set_t;
void BI_Init (progs_t *pr);
void QWAQ_EditBuffer_Init (progs_t *pr);
extern struct cbuf_s *qwaq_cbuf;
qwaq_thread_t *create_thread (void *(*thread_func) (qwaq_thread_t *), void *);
int qwaq_init_threads (qwaq_thread_set_t *thread_data);
#endif//__qwaq_h