Annotation of OpenXM/src/ox_math/math2ox.c, Revision 1.2
1.1 ohara 1: /* -*- mode: C; coding: euc-japan -*- */
2: /* $OpenXM$ */
3: /* $Id: math2ox.c,v 1.3 1999/10/13 07:38:23 ohara Exp $ */
4:
5: #include <sys/types.h>
6: #include <sys/stat.h>
7: #include <fcntl.h>
8:
9: #include <stdio.h>
10: #include <stdlib.h>
11: #include <mathlink.h>
12: #include <unistd.h>
13: #include <signal.h>
14:
15: #include "ox.h"
16:
17: static char *host = "localhost";
18: static char *ctlserv = "ox";
19: static char *oxprog = "ox_sm1";
20:
21: ox_file_t sv;
22:
23: /* Mathematica から直接呼び出される関数の定義. */
24: /* 呼び出しの方法は math2ox.tm で定義される. */
25: int OX_executeStringByLocalParser(const char *str)
26: {
27: ox_executeStringByLocalParser(sv, str);
28: return 0;
29: }
30:
31: char *OX_popString()
32: {
33: return ox_popString(sv, sv->stream);
34: }
35:
36: int OX_close()
37: {
38: ox_close(sv);
39: return 0;
40: }
41:
42: int OX_reset()
43: {
44: ox_reset(sv);
45: return 0;
46: }
47:
48:
49: int OX_start(char* s)
50: {
51: if (s != NULL && s[0] != '\0') {
52: oxprog = s;
53: }
54: sv = ox_start(host, ctlserv, oxprog);
55: fprintf(stderr, "open (%s)\n", "localhost");
56: return 0;
57: }
58:
59: static char *cp_str(char *src)
60: {
61: char *dest = malloc(strlen(src)+1);
62: strcpy(dest, src);
63: return dest;
64: }
65:
66: int OX_setClientParam(char *h, char* c, char* p)
67: {
68: host = cp_str(h);
69: ctlserv = cp_str(c);
70: oxprog = cp_str(p);
71: return 0;
72: }
73:
74: int main(int argc, char *argv[])
75: {
76: MLMain(argc, argv);
77: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>