Annotation of OpenXM_contrib2/asir2000/include/ox.h, Revision 1.4
1.4 ! noro 1: /* $OpenXM: OpenXM_contrib2/asir2000/include/ox.h,v 1.3 2000/02/08 04:47:10 noro Exp $ */
1.1 noro 2: #include "com.h"
3:
4: /* version */
5:
6: #define OX_VERSION 199901160
7:
8: /* header */
9:
10: #define OX_COMMAND 513
11: #define OX_DATA 514
12: #define OX_SYNC_BALL 515
13:
14: #define OX_DATA_WITH_SIZE 521
15: #define OX_DATA_ASIR_BINARY_EXPRESSION 522
16:
17: #define OX_LOCAL_OBJECT 0x7fcdef30
18:
19: #define OX_LOCAL_OBJECT_ASIR (OX_LOCAL_OBJECT+0)
20: #define OX_LOCAL_OBJECT_SM1 (OX_LOCAL_OBJECT+1)
21:
22: /* cmo_tags */
23:
24: #define CMO_LARGE_ID 0x7f000000
25:
26: #define CMO_ERROR CMO_LARGE_ID+1
27: #define CMO_ERROR2 CMO_LARGE_ID+2
28:
29: #define CMO_NULL 1
30: #define CMO_INT32 2
31: #define CMO_DATUM 3
32: #define CMO_STRING 4
33: #define CMO_MATHCAP 5
34:
35: #define CMO_ARRAY 16
36: #define CMO_LIST 17
37: #define CMO_ATOM 18
38: #define CMO_MONOMIAL32 19
39: #define CMO_ZZ 20
40: #define CMO_QQ 21
41: #define CMO_ZERO 22
42:
43: #define CMO_DMS_GENERIC 24
44: #define CMO_DMS_OF_N_VARIABLES 25
45: #define CMO_RING_BY_NAME 26
46: #define CMO_RECURSIVE_POLYNOMIAL 27
47:
48: #define CMO_DISTRIBUTED_POLYNOMIAL 31
49: #define CMO_UNIVARIATE_POLYNOMIAL 33
50: #define CMO_RATIONAL 34
51:
52: #define CMO_INDETERMINATE 60
53: #define CMO_TREE 61
54: #define CMO_LAMBDA 62
55:
56: /* asir local object id */
57:
58: #define ASIR_VL 0
59: #define ASIR_OBJ 1
60:
61: /* commands */
62:
63: #define SM_popSerializedLocalObject 258
64: #define SM_popCMO 262
65: #define SM_popString 263
66:
67: #define SM_mathcap 264
68: #define SM_pops 265
69: #define SM_setName 266
70: #define SM_evalName 267
71: #define SM_executeStringByLocalParser 268
72: #define SM_executeFunction 269
73:
74: #define SM_beginBlock 270
75: #define SM_endBlock 271
76: #define SM_shutdown 272
77: #define SM_setMathcap 273
78: #define SM_executeStringByLocalParserInBatchMode 274
79: #define SM_getsp 275
80: #define SM_dupErrors 276
81:
82: #define SM_nop 300
83:
84: #define SM_control_kill 1024
1.2 noro 85: #define SM_control_intr 1025
1.1 noro 86: #define SM_control_reset_connection 1030
87:
88: typedef FILE *ox_stream;
89:
90: /* a macro to check whether data are available in the read buffer */
91: #if defined(linux)
92: #define FP_DATA_IS_AVAILABLE(fp) ((fp)->_IO_read_ptr < (fp)->_IO_read_end)
93: #elif defined(__FreeBSD__)
94: #define FP_DATA_IS_AVAILABLE(fp) ((fp)->_r)
95: #elif defined(sparc) || defined(__alpha) || defined(__SVR4) || defined(mips)
96: #define FP_DATA_IS_AVAILABLE(fp) ((fp)->_cnt)
97: #elif defined(VISUAL)
98: #define FP_DATA_IS_AVAILABLE(fp) ((fp)->p < (fp)->buf_size)
99: #elif defined(hpux)
100: #define FP_DATA_IS_AVAILABLE(fp) ((fp)->__cnt)
101: #else
102: --->FIXIT
103: #endif
104:
105: extern jmp_buf environnement;
106:
107: extern jmp_buf env;
108: extern int *StackBottom;
109: extern int ox_do_copy, ox_do_count, ox_count_length;
110: extern char *ox_copy_bptr;
111:
112: extern struct IOFP iofp[];
113:
114: extern char *parse_strp;
115:
116: #define LBUFSIZ BUFSIZ*10
117:
118: void ox_usr1_handler();
119: unsigned int ox_recv();
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>