| version 1.36, 2003/04/08 22:10:40 |
version 1.48, 2004/03/10 02:41:08 |
|
|
| * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
| * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
| * |
* |
| * $OpenXM: OpenXM_contrib2/asir2000/include/ca.h,v 1.35 2003/02/14 22:29:13 ohara Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/include/ca.h,v 1.47 2004/03/09 08:02:01 noro Exp $ |
| */ |
*/ |
| #include <stdio.h> |
#include <stdio.h> |
| #include <stdlib.h> |
#include <stdlib.h> |
| Line 118 typedef void * pointer; |
|
| Line 118 typedef void * pointer; |
|
| #define O_GFMMAT 15 |
#define O_GFMMAT 15 |
| #define O_BYTEARRAY 16 |
#define O_BYTEARRAY 16 |
| #define O_QUOTE 17 |
#define O_QUOTE 17 |
| |
#define O_OPTLIST 18 |
| |
#define O_SYMBOL 19 |
| |
#define O_RANGE 20 |
| |
#define O_TB 21 |
| #define O_VOID -1 |
#define O_VOID -1 |
| |
|
| #define N_Q 0 |
#define N_Q 0 |
| Line 354 typedef struct oQUOTE { |
|
| Line 358 typedef struct oQUOTE { |
|
| pointer body; |
pointer body; |
| } *QUOTE; |
} *QUOTE; |
| |
|
| |
typedef struct oOPTLIST { |
| |
short id; |
| |
short pad; |
| |
struct oNODE *body; |
| |
} *OPTLIST; |
| |
|
| |
typedef struct oSYMBOL { |
| |
short id; |
| |
short pad; |
| |
char *name; |
| |
int value; |
| |
} *SYMBOL; |
| |
|
| |
typedef struct oRANGE { |
| |
short id; |
| |
short pad; |
| |
struct oObj *start,*end; |
| |
} *RANGE; |
| |
|
| |
typedef struct oTB { |
| |
short id; |
| |
short pad; |
| |
int size,next; |
| |
char **body; |
| |
} *TB; |
| |
|
| typedef struct oObj { |
typedef struct oObj { |
| short id; |
short id; |
| short pad; |
short pad; |
| Line 419 typedef struct oDLBUCKET { |
|
| Line 449 typedef struct oDLBUCKET { |
|
| struct oDLBUCKET *next; |
struct oDLBUCKET *next; |
| } *DLBUCKET; |
} *DLBUCKET; |
| |
|
| |
typedef struct oGeoBucket { |
| |
int m; |
| |
struct oNODE *body[32]; |
| |
} *GeoBucket; |
| |
|
| typedef struct oVL { |
typedef struct oVL { |
| V v; |
V v; |
| struct oVL *next; |
struct oVL *next; |
| Line 479 struct order_pair { |
|
| Line 514 struct order_pair { |
|
| int order, length; |
int order, length; |
| }; |
}; |
| |
|
| |
struct sparse_weight { |
| |
int pos, value; |
| |
}; |
| |
|
| |
#define IS_DENSE_WEIGHT 0 |
| |
#define IS_SPARSE_WEIGHT 1 |
| |
#define IS_BLOCK 2 |
| |
|
| |
struct weight_or_block { |
| |
int type; |
| |
int length; |
| |
union { |
| |
int *dense_weight; |
| |
struct sparse_weight *sparse_weight; |
| |
struct { |
| |
int order, start; |
| |
} block; |
| |
} body; |
| |
}; |
| |
|
| struct order_spec { |
struct order_spec { |
| int id; |
int id; |
| Obj obj; |
Obj obj; |
| Line 493 struct order_spec { |
|
| Line 548 struct order_spec { |
|
| int row; |
int row; |
| int **matrix; |
int **matrix; |
| } matrix; |
} matrix; |
| |
struct { |
| |
int length; |
| |
struct weight_or_block *w_or_b; |
| |
} composite; |
| } ord; |
} ord; |
| }; |
}; |
| |
|
| Line 578 typedef unsigned int ModNum; |
|
| Line 637 typedef unsigned int ModNum; |
|
| #endif |
#endif |
| |
|
| /* for setjmp/longjmp compatibility */ |
/* for setjmp/longjmp compatibility */ |
| #if defined(__CYGWIN__) |
#if defined(__CYGWIN__) || defined(__x86_64) |
| #define JMP_BUF sigjmp_buf |
#define JMP_BUF sigjmp_buf |
| #define SETJMP(x) sigsetjmp(x,~0) |
#define SETJMP(x) sigsetjmp(x,~0) |
| #define LONGJMP(x,y) siglongjmp(x,y) |
#define LONGJMP(x,y) siglongjmp(x,y) |
| Line 656 bzero((char *)(q)->b,(w)*sizeof(unsigned int))) |
|
| Line 715 bzero((char *)(q)->b,(w)*sizeof(unsigned int))) |
|
| #define NEWMATHCAP(e) ((e)=(MATHCAP)MALLOC(sizeof(struct oMATHCAP)),OID(e)=O_MATHCAP) |
#define NEWMATHCAP(e) ((e)=(MATHCAP)MALLOC(sizeof(struct oMATHCAP)),OID(e)=O_MATHCAP) |
| #define NEWBYTEARRAY(e) ((e)=(BYTEARRAY)MALLOC(sizeof(struct oBYTEARRAY)),OID(e)=O_BYTEARRAY) |
#define NEWBYTEARRAY(e) ((e)=(BYTEARRAY)MALLOC(sizeof(struct oBYTEARRAY)),OID(e)=O_BYTEARRAY) |
| #define NEWQUOTE(e) ((e)=(QUOTE)MALLOC(sizeof(struct oQUOTE)),OID(e)=O_QUOTE) |
#define NEWQUOTE(e) ((e)=(QUOTE)MALLOC(sizeof(struct oQUOTE)),OID(e)=O_QUOTE) |
| |
#define NEWOPTLIST(l) ((l)=(OPTLIST)MALLOC(sizeof(struct oOPTLIST)),OID(l)=O_OPTLIST) |
| |
#define NEWSYMBOL(l) ((l)=(SYMBOL)MALLOC(sizeof(struct oSYMBOL)),OID(l)=O_SYMBOL) |
| |
#define NEWRANGE(l) ((l)=(RANGE)MALLOC(sizeof(struct oRANGE)),OID(l)=O_RANGE) |
| |
#define NEWTB(l) ((l)=(TB)MALLOC(sizeof(struct oTB)),OID(l)=O_TB,(l)->size=256,(l)->next=0,(l)->body=(char **)MALLOC((l)->size*sizeof(char *))) |
| |
|
| #define NEWNODE(a) ((a)=(NODE)MALLOC(sizeof(struct oNODE))) |
#define NEWNODE(a) ((a)=(NODE)MALLOC(sizeof(struct oNODE))) |
| #define NEWDC(dc) ((dc)=(DCP)MALLOC(sizeof(struct oDCP))) |
#define NEWDC(dc) ((dc)=(DCP)MALLOC(sizeof(struct oDCP))) |
| Line 850 extern VL CO,ALG; |
|
| Line 913 extern VL CO,ALG; |
|
| extern VL PVL; |
extern VL PVL; |
| extern R ONER; |
extern R ONER; |
| extern Q ONE; |
extern Q ONE; |
| |
extern Q TWO; |
| extern MQ ONEM; |
extern MQ ONEM; |
| extern LM ONELM; |
extern LM ONELM; |
| extern N ONEN; |
extern N ONEN; |
| Line 975 void square_rem_tab_up_gf2n(UP,UP *,UP *); |
|
| Line 1039 void square_rem_tab_up_gf2n(UP,UP *,UP *); |
|
| void powertabup_gf2n(UP,UP,UP *); |
void powertabup_gf2n(UP,UP,UP *); |
| void find_root_gf2n(UP,GF2N *); |
void find_root_gf2n(UP,GF2N *); |
| |
|
| |
int cmpdl_composite(int,DL,DL); |
| int cmpdl_matrix(int,DL,DL); |
int cmpdl_matrix(int,DL,DL); |
| int cmpdl_order_pair(int,DL,DL); |
int cmpdl_order_pair(int,DL,DL); |
| int cmpdl_elim(int,DL,DL); |
int cmpdl_elim(int,DL,DL); |
| Line 1432 void dtestroot(int,int,P,LUM,struct oDUM *,DCP *); |
|
| Line 1497 void dtestroot(int,int,P,LUM,struct oDUM *,DCP *); |
|
| void dtestroot1(int,int,P,LUM,P *); |
void dtestroot1(int,int,P,LUM,P *); |
| void dtestsq(int,int,P,LUM,P *); |
void dtestsq(int,int,P,LUM,P *); |
| void dtestsql(P,ML,struct oDUM *,DCP *); |
void dtestsql(P,ML,struct oDUM *,DCP *); |
| |
void ediffp(VL,P,V,P *); |
| void estimatelc(VL,Q,DCP,VN,P *); |
void estimatelc(VL,Q,DCP,VN,P *); |
| void eucum(register int,UM,UM,UM,UM); |
void eucum(register int,UM,UM,UM,UM); |
| void exthp(VL,P,int,P *); |
void exthp(VL,P,int,P *); |