[BACK]Return to cmo.h.org CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / plugin

File: [local] / OpenXM / src / kan96xx / plugin / cmo.h.org (download)

Revision 1.1.1.1 (vendor branch), Fri Oct 8 02:12:05 1999 UTC (24 years, 7 months ago) by maekawa
Branch: OpenXM, MAIN
CVS Tags: maekawa-ipv6, R_1_3_1-2, RELEASE_20000124, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, RELEASE_1_1_3, RELEASE_1_1_2, KNOPPIX_2006, HEAD, DEB_REL_1_2_3-9, ALPHA
Changes since 1.1: +0 -0 lines

o import OpenXM sources

/*cmo.h : Dont edit  this file. */
/*  cmotag.h */
/* #define     CMO   1024  It is defined in stackm.h. */
#define LARGEID   0x7f000000

#define CMO_ERROR  (LARGEID+1)
#define CMO_ERROR2 (LARGEID+2)
#define CMO_NULL   1
#define CMO_INT32  2
#define CMO_DATUM  3
#define CMO_STRING 4
#define CMO_ARRAYOFINT32 5

#define CMO_START_SIGNATURE    0x7fabcd03     
#define CMO_LOCAL_OBJECT       0x7fcdef03


#define     CMO_TAG  16
#define     CMO_LIST 17
#define     CMO_ATOM 18
#define     CMO_MONOMIAL32  19
#define     CMO_ZZ          20   /* CMO_GMPCOEF */
#define     CMO_QQ          21
#define     CMO_ZERO        22
#define     CMO_DMS         23   /* Distributed monomial system */
#define     CMO_DMS_GENERIC     24
#define     CMO_DMS_OF_N_VARIABLES 25
#define     CMO_RING_BY_NAME  26

#define     CMO_INT32COEFF  30  /* it should be thrown a way. */

/* end of cmotag.h */

/*  cmo0.h */

typedef enum {CMOINIT,CMOPUT,CMOGET,CMOFLUSH,
	      CMOINITSTREAM,CMOGETBYTE} cmoAction;
typedef unsigned long int cmoint;

struct  cmoBuffer {
  int size;
  int pos;
  int rpos;
  int isStream;
  FILE2 *fp;
  void *buf;
};

/* ------------------------------------------- */
struct object cmoObjectToCmo(struct object ob);
void cmoPrintCmo(struct object ob);
struct object cmoCmoToObject(struct object ob);

/* ----------------------- */
int errorCmo(char *s);
struct cmoBuffer *cmoOutputToBuf(cmoAction a,void *data, int size);
int dumpCmoBuf(struct cmoBuffer *cb);
int cmoOutInt32(int k);
int cmoOutString(char *s,int size);
int cmoOutInt32Coeff(int k);
int cmoGetIntFromBuf(cmoAction a,struct cmoBuffer *cb);
int cmoOutMonomial32(POLY cell);
int cmoOutDMS() ;
int cmoOutPolynomial(POLY f) ;
int cmoOutRingDefinition(struct ring * rp,int option);

void *cmoGetString(struct cmoBuffer *cb, int size);
struct coeff * cmoGetInt32Coeff(struct cmoBuffer *cb);
POLY cmoGetMonomial32(struct cmoBuffer *cb);
POLY cmoListToPOLY(struct object ob); /* Assumes [CMO_ADD, ....] */
struct object streamToCmo(struct object of);
int cmoToStream(struct object cmoObj, struct object of);
struct object cmoListToPoly(struct object ob);
struct object cmoObjectToStream(struct object ob, struct object obStream);
struct object cmoObjectFromStream(struct object obStream);
struct object cmoObjectFromStream2(FILE2 *fp2);
struct object cmoObjectToStream2(struct object ob,FILE2 *fp2);

int Kan_PushBinary(int size,void *data);
void *Kan_PopBinary(int *sizep);
int Kan_pushCMOFromStream(FILE2 *fp);
int Kan_popCMOToStream(FILE2 *fp);


int cmoOutRawInt(int k);
/* ---------------- end of cmo.h ---------------------*/