aboutsummaryrefslogtreecommitdiff
path: root/trunk/civy.c
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/civy.c')
-rw-r--r--trunk/civy.c93
1 files changed, 0 insertions, 93 deletions
diff --git a/trunk/civy.c b/trunk/civy.c
deleted file mode 100644
index 563f7ec..0000000
--- a/trunk/civy.c
+++ /dev/null
@@ -1,93 +0,0 @@
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
-#include <getopt.h>
-#include <Ivy/ivy.h>
-#include <Ivy/ivyloop.h>
-#include <Ivy/timer.h>
-#include <caml/mlvalues.h>
-#include <caml/fail.h>
-#include <caml/callback.h>
-#include <caml/memory.h>
-#include <caml/alloc.h>
-
-value ivy_sendMsg(value msg)
-{
- IvySendMsg(String_val(msg));
- return Val_unit;
-}
-
-value ivy_stop(value unit)
-{
- IvyStop ();
- return Val_unit;
-}
-
-
-void app_cb(IvyClientPtr app, void *user_data, IvyApplicationEvent event )
-{
- value closure = *(value*)user_data;
- callback2(closure, Val_int(app), Val_int(event));
-}
-
-value ivy_init(value vappName, value vready, value closure_name)
-{
- value * closure = caml_named_value(String_val(closure_name));
- char * appName = malloc(strlen(String_val(vappName))+1); /* Memory leak */
- strcpy(appName, String_val(vappName));
- char * ready = malloc(strlen(String_val(vready))+1); /* Memory leak */
- strcpy(ready, String_val(vready));
- IvyInit(appName, ready, app_cb, (void*)closure, 0, 0); /* When the "die callback" is called ??? */
- return Val_unit;
-}
-
-value ivy_start(value bus)
-{
- IvyStart(String_val(bus));
- return Val_unit;
-}
-
-void ClosureCallback(IvyClientPtr app, void *closure, int argc, char **argv)
-{
- char* t[argc+1];
- int i;
- /* Copie de argv dans t avec ajout d'un pointeur nul a la fin */
- for(i=0; i < argc; i++) t[i] = argv[i];
- t[argc] = (char*)0L;
- callback2(*(value*)closure, Val_long(app), copy_string_array((char const **)t));
-}
-
-value ivy_bindMsg(value cb_name, value regexp)
-{
- value * closure = caml_named_value(String_val(cb_name));
- MsgRcvPtr id = IvyBindMsg(ClosureCallback, (void*)closure, String_val(regexp));
- return Val_long(id);
-}
-
-value ivy_unbindMsg(value id)
-{
- IvyUnbindMsg((MsgRcvPtr)Long_val(id));
- return Val_unit;
-}
-
-value ivy_name_of_client(value c)
-{
- return copy_string(IvyGetApplicationName((IvyClientPtr)Long_val(c)));
-}
-value ivy_host_of_client(value c)
-{
- return copy_string(IvyGetApplicationHost((IvyClientPtr)Long_val(c)));
-}
-
-void cb_delete_channel(void *delete_read)
-{
-}
-
-void cb_write_channel(Channel ch, IVY_HANDLE fd, void *closure)
-{
-}
-
-void cb_read_channel(Channel ch, IVY_HANDLE fd, void *closure)
-{
- callback(*(value*)closure, Val_int(ch));
-}