summaryrefslogtreecommitdiff
path: root/src/post/goom/goomsl.h
diff options
context:
space:
mode:
authorMichael Roitzsch <mroi@users.sourceforge.net>2004-11-21 15:10:39 +0000
committerMichael Roitzsch <mroi@users.sourceforge.net>2004-11-21 15:10:39 +0000
commit880e06de387646fa3f0efde940d731e71afbbb93 (patch)
tree890e4333544c124848eb3e7564b200f5c94974e5 /src/post/goom/goomsl.h
parent312b775d0a22284a60d36420cf8798c0fd1bfa3a (diff)
downloadxine-lib-880e06de387646fa3f0efde940d731e71afbbb93.tar.gz
xine-lib-880e06de387646fa3f0efde940d731e71afbbb93.tar.bz2
updated goom to 2k4-dev21
* tweaked somewhat to avoid the bright circle for the first seconds of playback * no idea whether this fixes the AMD64 problems, I have not found anything suspicious CVS patchset: 7143 CVS date: 2004/11/21 15:10:39
Diffstat (limited to 'src/post/goom/goomsl.h')
-rw-r--r--src/post/goom/goomsl.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/post/goom/goomsl.h b/src/post/goom/goomsl.h
new file mode 100644
index 000000000..45dcce0fa
--- /dev/null
+++ b/src/post/goom/goomsl.h
@@ -0,0 +1,32 @@
+#ifndef _GOOMSL_H
+#define _GOOMSL_H
+
+#include "goomsl_hash.h"
+
+typedef struct _GoomSL GoomSL;
+typedef void (*GoomSL_ExternalFunction)(GoomSL *gsl, GoomHash *global_vars, GoomHash *local_vars);
+
+GoomSL*gsl_new(void);
+void gsl_free(GoomSL *gss);
+
+char *gsl_init_buffer(const char *file_name);
+void gsl_append_file_to_buffer(const char *file_name, char **buffer);
+
+void gsl_compile (GoomSL *scanner, const char *script);
+void gsl_execute (GoomSL *scanner);
+int gsl_is_compiled (GoomSL *gss);
+void gsl_bind_function(GoomSL *gss, const char *fname, GoomSL_ExternalFunction func);
+
+int gsl_malloc (GoomSL *_this, int size);
+void *gsl_get_ptr (GoomSL *_this, int id);
+void gsl_free_ptr(GoomSL *_this, int id);
+
+#define gsl_local_ptr(gsl,local,name) gsl_get_ptr(gsl, goom_hash_get(local,name)->i)
+#define gsl_local_int(gsl,local,name) goom_hash_get(local,name)->i
+#define gsl_local_float(gsl,local,name) goom_hash_get(local,name)->i
+
+#define gsl_global_ptr(gsl,global,name) gsl_get_ptr(gsl, goom_hash_get(global,name)->i)
+#define gsl_global_int(gsl,global,name) goom_hash_get(global,name)->i
+#define gsl_global_float(gsl,global,name) goom_hash_get(global,name)->i
+
+#endif