Annotation of OpenXM/src/kan96xx/plugin/cmo0.h, Revision 1.1.1.1
1.1 maekawa 1: /* cmo0.h */
2:
3: typedef enum {CMOINIT,CMOPUT,CMOGET,CMOFLUSH,
4: CMOINITSTREAM,CMOGETBYTE,CMOERROR,CMOERROR2} cmoAction;
5: typedef unsigned long int cmoint;
6:
7: struct cmoBuffer {
8: int size;
9: int pos;
10: int rpos;
11: int isStream;
12: int errorno;
13: FILE2 *fp;
14: void *buf;
15: };
16:
17: /* ------------------------------------------- */
18: struct object cmoObjectToCmo(struct object ob);
19: void cmoPrintCmo(struct object ob);
20: struct object cmoCmoToObject(struct object ob);
21:
22: /* ----------------------- */
23: int errorCmo(char *s);
24: struct cmoBuffer *cmoOutputToBuf(cmoAction a,void *data, int size);
25: int dumpCmoBuf(struct cmoBuffer *cb);
26: int cmoOutInt32(int k);
27: int cmoOutString(char *s,int size);
28: int cmoOutInt32Coeff(int k);
29: int cmoGetIntFromBuf(cmoAction a,struct cmoBuffer *cb);
30: int cmoOutMonomial32(POLY cell);
31: int cmoOutDMS() ;
32: int cmoOutPolynomial(POLY f) ;
33: int cmoOutPolynomial2(POLY f) ;
34: int cmoOutRingDefinition(struct ring * rp,int option);
35: int cmoOutRingDefinition2(struct ring * rp,int option);
36:
37: void *cmoGetString(struct cmoBuffer *cb, int size);
38: struct coeff * cmoGetInt32Coeff(struct cmoBuffer *cb);
39: POLY cmoGetMonomial32(struct cmoBuffer *cb);
40: POLY cmoListToPOLY(struct object ob); /* Assumes [CMO_ADD, ....] */
41: struct object streamToCmo(struct object of);
42: int cmoToStream(struct object cmoObj, struct object of);
43: struct object cmoListToPoly(struct object ob);
44: struct object cmoListToPoly2(struct object ob);
45: struct object cmoObjectToStream(struct object ob, struct object obStream);
46: struct object cmoObjectFromStream(struct object obStream);
47: struct object cmoObjectFromStream2(FILE2 *fp2);
48: struct object cmoObjectToStream2(struct object ob,FILE2 *fp2);
49:
50: int Kan_PushBinary(int size,void *data);
51: void *Kan_PopBinary(int *sizep);
52: int Kan_pushCMOFromStream(FILE2 *fp);
53: int Kan_popCMOToStream(FILE2 *fp,int serial);
54:
55:
56: int cmoOutRawInt(int k);
57: void *KSmathCapByStruct(void) ;
58: struct object KSmathCap(void);
59:
60: struct object cmoTranslateVariable_outGoing(struct object ob);
61: struct object cmoTranslateVariable_inComming(struct object ob);
62: /* ---------------- end of cmo.h ---------------------*/
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>