Update the changelog
[opencv] / apps / cvenv / include / eic.h
1 /* eic.h
2  *
3  *      (C) Copyright May  7 1995, Edmond J. Breen.
4  *                 ALL RIGHTS RESERVED.
5  * This code may be copied for personal, non-profit use only.
6  *
7  */
8 #ifndef EICH_
9 #define EICH_
10
11
12 #if !defined(_eic_ptr) && !defined(_EiC)
13 #define _eic_ptr
14 typedef struct {void *p, *sp, *ep;} ptr_t;
15 #endif
16
17 #include <sys/types.h>
18 #include "eicval.h"
19
20
21 void *EiC_add_builtinfunc(char *name, val_t(*vfunc)(void));
22 void EiC_startEiC(int argc, char ** argv);
23 void EiC_init_EiC();
24 int  EiC_run(int argc, char **argv);
25 void EiC_parseString(char *, ...);
26 void EiC_callBack(void *code);
27
28 void EiC_setMessageDisplay(void (*)(char *));
29
30 extern void (*EiC_messageDisplay)(char *);
31
32
33 #define setArg(x,C,type,v)    do { code_t *c = C; \
34                               *(type*)(&c->inst[c->nextinst - 5 - 2 * x].val) = v;} while(0)
35
36 extern val_t EiC_STaCK_VaLuE;
37
38 #define  EiC_ReturnValue(type)    (*(type*)&EiC_STaCK_VaLuE)
39
40
41 extern AR_t * AR[3];
42 extern size_t ARGC;
43
44 #define arg_list                  AR_t *
45 #define getargc()                 ARGC
46 #define getargs()                 AR[2]
47 #define nextarg(x,type)           (*((type*)&(--x)->v))
48 #define arg(i,x,type)             (*((type*)&x[-(i+1)].v))
49
50 #define malloc(x)       xmalloc(x)
51 #define calloc(x,y)     xcalloc(x,y)
52 #define free(x)         xfree(x)
53 #define realloc(x,y)    xrealloc(x,y)
54
55
56 #endif /* EICH_ */
57
58
59
60
61
62
63
64
65
66
67
68
69
70